Blocks
The building components of your AI workflows
Blocks are the building components you connect together to create AI workflows. Think of them as specialized modules that each handle a specific task—from chatting with AI models to making API calls or processing data.
Core Block Types
Sim provides seven core block types that handle the essential functions of AI workflows:
Processing Blocks
- Agent - Chat with AI models (OpenAI, Anthropic, Google, local models)
- Function - Run custom JavaScript/TypeScript code
- API - Connect to external services via HTTP requests
Logic Blocks
- Condition - Branch workflow paths based on boolean expressions
- Router - Use AI to intelligently route requests to different paths
- Evaluator - Score and assess content quality using AI
Output Blocks
- Response - Format and return final results from your workflow
How Blocks Work
Each block has three main components:
Inputs: Data coming into the block from other blocks or user input Configuration: Settings that control how the block behaves Outputs: Data the block produces for other blocks to use
Receive Input: Block receives data from connected blocks or user input
Process: Block processes the input according to its configuration
Output Results: Block produces output data for the next blocks in the workflow
Connecting Blocks
You create workflows by connecting blocks together. The output of one block becomes the input of another:
- Drag to connect: Drag from an output port to an input port
- Multiple connections: One output can connect to multiple inputs
- Branching paths: Some blocks can route to different paths based on conditions
Common Patterns
Sequential Processing
Connect blocks in a chain where each block processes the output of the previous one:
User Input → Agent → Function → Response
Conditional Branching
Use Condition or Router blocks to create different paths:
User Input → Router → Agent A (for questions)
→ Agent B (for commands)
Quality Control
Use Evaluator blocks to assess and filter outputs:
Agent → Evaluator → Condition → Response (if good)
→ Agent (retry if bad)
Block Configuration
Each block type has specific configuration options:
All Blocks:
- Input/output connections
- Error handling behavior
- Execution timeout settings
AI Blocks (Agent, Router, Evaluator):
- Model selection (OpenAI, Anthropic, Google, local)
- API keys and authentication
- Temperature and other model parameters
- System prompts and instructions
Logic Blocks (Condition, Function):
- Custom expressions or code
- Variable references
- Execution environment settings
Integration Blocks (API, Response):
- Endpoint configuration
- Headers and authentication
- Request/response formatting