Agent Pipelines
Chain multiple agents into a sequential pipeline that executes end-to-end, with full governance at every hop.
What are Agent Pipelines?
An Agent Pipeline is a declarative, reusable sequence of agents. You define the chain once — intake → enrichment → router → response — and Clevername executes each step in order, threading the output of step N into the input of step N+1.
Every hop passes through CleverGuard scanning, council gates, and drift checks. No bypass is possible. Runs are audit-logged as a group so you can see the full chain in one query.
Quick start
You need an org admin API key. Replace YOUR_KEY, ORG_ID, and AGENT_ID_* with real values.
Create a pipeline
curl -X POST https://clevername.net/api/hub/hub/agent-pipelines \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"org_id": "ORG_ID",
"name": "Intake → Enrichment → Response",
"description": "Three-stage customer request pipeline"
}'
# Returns: { "id": "PIPELINE_ID", "name": "...", ... }Add steps
# Step 0 — intake agent
curl -X POST https://clevername.net/api/hub/hub/agent-pipelines/PIPELINE_ID/steps \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "agent_id": "AGENT_ID_INTAKE", "step_order": 0, "on_error": "halt" }'
# Step 1 — enrichment agent
curl -X POST https://clevername.net/api/hub/hub/agent-pipelines/PIPELINE_ID/steps \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "agent_id": "AGENT_ID_ENRICH", "step_order": 1, "on_error": "halt" }'
# Step 2 — response agent
curl -X POST https://clevername.net/api/hub/hub/agent-pipelines/PIPELINE_ID/steps \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "agent_id": "AGENT_ID_RESPONSE", "step_order": 2, "on_error": "halt" }'Run the pipeline
curl -X POST https://clevername.net/api/hub/hub/agent-pipelines/PIPELINE_ID/run \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{ "initial_input": { "prompt": "Summarise this ticket: ..." } }'
# Returns immediately: { "run_id": "RUN_ID", "status": "running" }Poll status
curl https://clevername.net/api/hub/hub/agent-pipelines/PIPELINE_ID/runs/RUN_ID \
-H "Authorization: Bearer YOUR_KEY"
# Returns:
# {
# "id": "RUN_ID",
# "status": "completed", # running | completed | failed | partial
# "steps": [
# { "step_order": 0, "status": "completed", "output_payload": { "result": "..." } },
# { "step_order": 1, "status": "completed", "output_payload": { "result": "..." } },
# { "step_order": 2, "status": "completed", "output_payload": { "result": "..." } }
# ]
# }Input mapping
By default, the full text output of step N becomes the prompt for step N+1. Use input_mapping on a step to control what gets passed.
"input_mapping": null"input_mapping": { "prompt_key": "summary" }"input_mapping": { "template": "Review this: {output}" }Error handling
Each step has an on_error policy:
Stop the run immediately. Default.
Continue to the next step with the previous output unchanged. Run status becomes partial.
Reserved for future parallel branching. Currently treated as halt.
Connections map
Once you create a pipeline, go to AI Company → Connections and enable the Pipelines filter chip (green). Each pipeline appears as a dashed green arrow from step N to step N+1, distinct from reporting hierarchy and call edges.
Click any agent node to see which pipelines it appears in under the Pipelines section in the detail panel.