Core Concepts
Understanding the following concepts is essential to building effective flows in Prax:
Flows
A flow is a complete pipeline composed of connected nodes. Flows can be saved, shared, and reused across different projects. Each flow has a unique ID and can be executed from the UI or via API.
Nodes
Nodes represent a unit of work. Each node performs one function, such as calling a language model, running a conditional check, parsing data, or fetching external content. Nodes are linked by their inputs and outputs.
Inputs and Outputs
Each node receives an input (from a user, previous node, or default config) and produces an output. Outputs can be used directly or referenced by downstream nodes using syntax like {{previousNode.output}}
.
Memory
Memory nodes store persistent or temporary state across a session. They allow flows to maintain context, which is critical for multi-turn interactions. Supported types include in-memory, Redis, and vector-based embeddings.
Chat Mode
This is an interactive mode for manually testing flows. It mimics real-world usage scenarios and shows how data moves through each node in real-time.
API Execution
Each flow can be triggered externally using a REST endpoint. Flows accept structured JSON input and return JSON output. This enables full integration with external platforms, UIs, bots, or automation tools.
Custom Nodes
Developers can extend Prax by building custom nodes using JavaScript/TypeScript. This is useful for proprietary APIs, internal tools, or highly specialized logic.
Last updated