| name | iii-agentic-backend |
| description | Creates and orchestrates multi-agent pipelines on the iii engine. Use when building AI agent collaboration, agent orchestration, research/review/synthesis chains, or any system where specialized agents hand off work through queues and shared state. |
Agentic Backend
Comparable to: LangGraph, CrewAI, AutoGen, Letta
Key Concepts
Use the concepts below when they fit the task. Not every agentic workflow needs all of them.
- Each agent is a registered function with a single responsibility
- Agents communicate via named queues (ordered handoffs) and shared state (accumulated context)
- Approval gates are explicit checks in the producing agent before enqueuing the next step
- An HTTP trigger provides the entry point; agents chain from there
- Pubsub broadcasts completion events for downstream listeners
Architecture
HTTP request
→ Enqueue(agent-tasks) → Agent 1 (researcher) → writes state
→ Enqueue(agent-tasks) → Agent 2 (critic) → reads/updates state
→ explicit approval check (is-approved?)
→ Enqueue(agent-tasks) → Agent 3 (synthesizer) → final state update
→ publish(research.complete)
iii Primitives Used
| Primitive | Purpose |
|---|
registerWorker | Initialize the worker and connect to iii |
registerFunction | Define each agent |
trigger state::set, state::get, state::update | Shared context between agents |
trigger({ ..., action: TriggerAction.Enqueue({ queue }) }) |