Agents Guide
Agents are the core building blocks of CrewForm. Each agent is an AI worker configured with a specific model, system prompt, and capabilities.Creating an Agent
Navigate to Agents → New Agent or use the+ button.
Required Fields
Optional Fields
Supported Models
CrewForm supports three LLM providers. You must add your API key in Settings → API Keys before using a provider.Anthropic (Claude)
Google (Gemini)
OpenAI (GPT)
Writing System Prompts
The system prompt defines your agent’s personality, expertise, and output format. Tips:Be Specific
Define Output Format
Set Boundaries
Agent Lifecycle
- Idle: Ready to accept tasks
- Running: Actively processing a task
- Failed: Task errored — check the task detail for the error message
Output Routes
By default, when an agent completes a task, the result is broadcast to all active output routes (HTTP webhooks, Slack, Discord, Telegram, Teams, Asana, Trello) in your workspace. See the Output Routes guide for how to configure destinations. You can restrict an agent to deliver results to specific channels only:- Open the agent in Agents → [Agent Name] → Settings
- Scroll to Output Routes
- Select one or more channels from the dropdown — or leave blank to send to all
Leave blank (default) = broadcast to all active routes. Select specific channels to narrow delivery.This is useful when you have multiple output routes (e.g., a
#dev-alerts Slack channel and a Telegram group) and only want certain agents to send to specific ones.
How it works
Under the hood, the agent stores a list of route UUIDs inoutput_route_ids:
Voice Profiles
Voice profiles let you control how an agent communicates — its tone, style, and formatting preferences. When a voice profile is configured, it’s injected into the system prompt as a## Voice & Tone section before each execution.
Configuring a Voice Profile
- Open an agent → click the Voice Profile tab
- Select a Tone Preset — Formal, Casual, Technical, Creative, Empathetic, or Custom
- Add Custom Voice Instructions — e.g. “Always refer to customers as ‘members’. Use active voice. Avoid jargon.”
- Add Output Format Hints (optional) — e.g. “Use numbered lists for steps. Keep responses under 200 words.”
- Click Save Voice Profile
Tone Presets
Brand Voice Templates
You can save a voice profile as a reusable Brand Voice Template that other agents can share:- Configure the tone, instructions, and format hints
- Click Save as Template → give it a name (e.g. “Acme Brand Voice”)
- On any other agent, select the template from the Brand Voice Template dropdown
How It Works at Runtime
When the agent runs a task, the system prompt is constructed as:Output Templates
Output templates let you format agent output consistently using{{variable}} placeholders. Instead of raw LLM text, results are wrapped in a structured template.
Configuring an Output Template
- Open an agent → click the Output Template tab
- Select a Template Type — Markdown, JSON, HTML, CSV, or Custom
- Write the Template Body using
{{variable}}syntax:
- Click Preview to see it rendered with sample data
- Click Save Template
Available Variables
How It Works at Runtime
After the LLM generates its response, the output template is applied:{{variable_name}} in the output, so templates degrade gracefully.
MCP Server Publishing
You can expose any agent as an MCP tool that Claude Desktop, Cursor, or any MCP-compatible client can call directly.Publishing an Agent
- Open the agent in Agents → [Agent Name]
- Click the MCP Publish button in the header bar
- The button changes to MCP Published (green) — the agent is now exposed as an MCP tool
What Happens
When published, the agent becomes callable via the MCP protocol:Connecting External Clients
- Go to Settings → MCP Servers
- Click Generate MCP API Key to create a
cf_mcp_prefixed key - Copy the auto-generated config snippet into your client:
Export & Import
Exporting an Agent
- Open the agent in Agents → [Agent Name]
- Click the Export button in the header bar
- A
crewform-agent-{name}.jsonfile downloads automatically
Importing an Agent
- Navigate to Agents list page
- Click the Import button in the top-right
- Select a
.jsonfile (CrewForm export format) - The agent is created with an
(imported)suffix
Export Format
Exports use a versionedcrewform-export format (v1) for forward compatibility:
Using Agents in Teams
Agents become more powerful when combined into teams. See the Pipeline Teams Guide for multi-agent workflows.API Key Security
All API keys are encrypted with AES-256-GCM before storage. Keys are:- Encrypted client-side before being sent to the database
- Never stored in plaintext
- Only decrypted by the task runner at execution time
- Scoped to your workspace via Row-Level Security

