What's the difference between the Orchestrator and an Expert?
What's the difference between the Orchestrator and an Expert?
The Orchestrator is the central coordinator of the Corti Agentic Framework. It receives user requests, reasons about what needs to be done, and delegates work to specialized Experts. The Orchestrator doesn’t perform specialized work itself—instead, it plans, selects appropriate Experts, and coordinates their activities to accomplish complex workflows.An Expert is a specialized sub-agent that performs domain-specific tasks. Experts are designed to complete small, discrete tasks efficiently, such as clinical reference lookups, medical coding, or document generation. The Orchestrator composes complex workflows by chaining multiple Experts together.In summary: the Orchestrator coordinates and delegates; Experts execute specialized work.For more details, see Orchestrator and Experts.
What's the difference between A2A and MCP protocols?
What's the difference between A2A and MCP protocols?
A2A (Agent-to-Agent) is the protocol used for accessing the Corti API and for communication between agents. It’s the standard protocol that your application uses to interact with Corti agents, send messages, receive tasks, and manage the agent lifecycle. A2A enables secure, framework-agnostic communication between autonomous AI agents.MCP (Model Context Protocol) is the way to connect additional Experts. When you create custom Experts by exposing an MCP server, Corti wraps it in a custom LLM agent. MCP handles agent-to-tool interactions, allowing Experts to interact with external systems and resources.In the Corti Agentic Framework: A2A handles agent-to-agent communication (including your API calls to Corti), while MCP handles agent-to-tool interactions for Expert integrations.For more information, see A2A Protocol and MCP Protocol.
When does an agent return a Task vs a Message?
When does an agent return a Task vs a Message?
The Corti agent typically returns Tasks rather than Messages. A Task represents a stateful unit of work with a unique ID and defined lifecycle, which is ideal for most operations in the Corti Agentic Framework.Tasks are used for:
- Long-running operations (for example, generating a full clinical document)
- Multi-step workflows that coordinate multiple Experts
- Operations that may need to wait on downstream systems
- Any work that benefits from tracking and monitoring
When should I use `DataPart` vs `TextPart`?
When should I use `DataPart` vs `TextPart`?
Use
TextPart for messages that will be directly exposed to the Orchestrator and the LLM. TextPart content is immediately available for reasoning and response generation.Use DataPart for structured JSON data that will be stored in memory first and accessed through more indirect manipulation. DataPart content is automatically indexed and stored in the context’s memory, enabling semantic retrieval when needed. DataPart is JSON-only and is useful for structured data like patient records, clinical facts, workflow parameters, or EHR identifiers.You can combine both in a single message: use TextPart for the primary instruction or question, and DataPart to provide structured context that will be semantically retrieved when relevant.For more details, see Core Concepts and Context & Memory.How does the `Artifact` object differ from a `Message` object with `role: agent`?
How does the `Artifact` object differ from a `Message` object with `role: agent`?
Both
Message and Artifact use the same underlying Part primitives, but they serve different roles:-
Message(withrole: "agent")- Represents a single turn of communication from the agent to the client.
- Best for ephemeral conversational output, intermediate reasoning, clarifications, or status updates.
- Typically tied to a particular task step but not necessarily considered a durable business deliverable.
-
Artifact- Represents a tangible, durable output of a task (for example, a SOAP note, coding suggestions, a structured fact bundle, or a generated document).
- Has its own
artifactId, name/metadata, and lifecycle; can be streamed, versioned, and reused by later tasks. - Is what downstream systems, UIs, or audits usually consume as the final result.
agent messages during a task (status, intermediate commentary), but only a small number of artifacts that represent the completed work.What is the best way to pass previous context into a new message?
What is the best way to pass previous context into a new message?
The Corti Agentic Framework provides automatic memory management through contexts. The
contextId is always created on the server—send your first message without a contextId, and the server will return one in the response. Include that contextId in subsequent messages to maintain conversation history automatically.You can also pass additional context in each request using DataPart objects to include structured data, summaries, or other specific context alongside the automatic memory.For comprehensive guidance on context and memory management, see Context & Memory.Can I share data between different contexts?
Can I share data between different contexts?
How long does context memory persist?
How long does context memory persist?
The current time-to-live (TTL) for context memory is 30 days. After this period, the context and its associated memory are automatically cleaned up.For more information about context lifecycle and memory management, see Context & Memory.
How does the Orchestrator decide which Expert(s) to use?
How does the Orchestrator decide which Expert(s) to use?
The Orchestrator analyzes incoming requests and uses reasoning to determine which Expert(s) are needed to fulfill the task. It considers the nature of the request, the available Experts, and their capabilities.You can control Expert selection by writing additional system prompts, both in the Orchestrator configuration and in individual Expert configurations. System prompts guide how the Orchestrator reasons about task decomposition and Expert selection, and how Experts interpret and execute their assigned work.The Orchestrator can compose multiple Experts together, calling them in sequence or parallel as needed to accomplish complex workflows. For more information, see Orchestrator and Experts.
Please contact us if you need more information about the Corti Agentic Framework.