An orchestrator knows a sub-agent is done when it receives the output it was expecting — the defined output format acts as the completion signal. If the lesson-summary agent is supposed to produce a 300-word structured summary and one appears, that’s completion. The orchestrator then passes it to the next agent. No explicit “done” signal required.
Output Formats as Completion Signals
This is why defining output formats upfront matters so much. When every agent in a pipeline produces a predictable, structured output, the orchestrator can reliably detect completion and trigger the next step. A lesson-summary agent that sometimes produces a summary and sometimes produces a bulleted list creates ambiguity — the orchestrator isn’t sure if it’s looking at a completed output or a partial one.
Clear output definitions eliminate that ambiguity. “The lesson-summary agent produces a structured document with exactly four sections: Key Takeaways, Core Concept Explained, Action Item for Students, and Summary Paragraph.” When that four-section document appears, the orchestrator knows the step is complete and moves on.
Handling Incomplete or Failed Outputs
What happens when a sub-agent produces something unexpected or fails? Good orchestrator design includes fallback instructions for this case. “If the expected output is not present after the sub-agent runs, ask the user to verify the input and retry” or “If the output is incomplete, flag the issue and pause the pipeline for review.” Without fallback instructions, an orchestrator that hits an unexpected output might either stall or pass bad data to the next step.
For simple educator workflows, a practical approach is to build in a review checkpoint after each major step. The orchestrator presents the output for your approval before running the next stage. This slows the pipeline slightly but catches errors before they cascade through the system.
What This Means for Educators
You don’t need to understand the technical mechanisms of agent completion to build effective orchestrators. You need to define what “done” looks like for each step — and make sure your sub-agents consistently produce that defined output. That’s a skill-writing problem, not a technical one.
The Simple Rule
Define “done” for every sub-agent before you build the orchestrator. “Done” means: the output has these sections, this length, this format. When that output appears, the step is complete. Write the definition, build the agent to match it, and the orchestrator handles the rest.
