execute_plan(steps). The LLM submits a JSON plan:a list of steps that execute sequentially, with later steps able to reference earlier results.
Setup
How It Works
One LLM turn executes multiple tools in sequence. The LLM plans upfront, Concierge executes deterministically.What the LLM Sends
output_by_reference resolves to the output of a previous step. Here, {"backup": ["backup_id"]} means: take the backup step’s result, then get ["backup_id"] from it.
Data Passing with Sharable
Only parameters annotated withSharable() can receive referenced data:
What the LLM Sees
A single tool:When to Use
Good fit:- Multi-step workflows (backup → validate → migrate)
- Data pipelines where steps depend on previous results
- When you need deterministic, auditable execution
- Simple single-tool calls (Plain is simpler)
- Conditional logic or loops (use Code)
- Dynamic workflows where the next step depends on runtime decisions