What the Orchestrator Does
The Orchestrator reasons about incoming requests and determines how to fulfill them by coordinating with specialized Experts. Its core responsibilities include:- Reasoning and planning: Analyzes user requests and determines the necessary steps to complete them
- Expert selection: Decides which Expert(s) to call, in what order, and with what data
- Task decomposition: Breaks complex requests into discrete tasks that can be handled by individual Experts
- Response generation: Aggregates results from Experts and typically generates the final response to the user
- Context management: Has full access to the context, while Experts typically only have scoped access to relevant portions
- Safety enforcement: Enforces guardrails, type validation, and policy-driven constraints to ensure safe operation in clinical environments
Safety Mechanisms
Max Iterations
The agent loop runs a maximum of 5 iterations by default (configurable per expert). After hitting the limit, it entersforceFinish mode, which makes up to 2 additional LLM calls restricted to terminal tools (complete_tool, input_required_tool, task_failure_tool). If those also fail to produce a terminal result, the task fails with “Max attempts reached without a finishing tool call.”
Credit Pre-flight Check
For orchestrator runs, the agent performs a pre-flight credit check before processing. If the metering service reports insufficient credits, the task is immediately rejected with staterejected and a message about insufficient credits.
Expert Invocation Progress
When the orchestrator calls an expert tool, it emits aWorking status update with the text “Calling expert: <expert-name>”. These intermediate status messages are part of the task’s history but are not user-facing. If you are polling for task status, you may see these intermediate working states.
Please contact us if you need more information about the Orchestrator in the Corti Agentic Framework.