Understand agent harnesses

Completed

Three parts shape how a Copilot Studio agent works: the agent, the model, and the harness. The agent defines the job, the model reasons over information and generates responses, and the harness coordinates the work.

Distinguish the agent, model, and harness

The agent is the solution you design. Its purpose, instructions, knowledge, tools, and boundaries define what it should accomplish. People interact with the agent to ask questions or request work.

The model generates language and reasons over the information it receives. Models differ in speed, cost, and ability to complete complex work. The model doesn't define the agent's business role or connect itself to organizational systems.

The harness coordinates how the agent uses the model and its available features. It determines:

  • When to call the model.
  • Which instructions and information to provide.
  • How to interpret a model response.
  • Which knowledge, tools, and other features the agent can use.
  • What the agent should do next.

The model generates a response or decision. The harness manages the larger process around it. As a result, agents that use similar models can behave differently when they use different harnesses.

Understand orchestration

Consider an expense-review agent. It might retrieve a policy, inspect a receipt, compare an amount with a limit, and request approval. Orchestration is how the agent decides which step to take next.

The orchestration options depend on the harness:

  • Classic orchestration is available in the standard harness. It matches a request to a topic by using trigger phrases that you define.
  • Generative orchestration is also available in the standard harness. It can select topics, tools, knowledge, and other agents based on their descriptions.
  • The enhanced orchestration model is used by the GitHub Copilot harness. It can reason through a multistep goal, plan its work, use available features, and adjust its approach based on results.

In the standard harness, you can choose classic or generative orchestration. The GitHub Copilot harness uses the enhanced orchestration model for every agent.

For example, an equipment-return conversation might use classic orchestration to ask the same questions each time. An invoice-review process might use the enhanced orchestration model to compare records, call several tools, and route an exception based on what it finds.

For more information about the standard-harness options, see Orchestrate agent behavior with generative AI.

Treat harness choice as an architecture decision

Your harness choice determines:

  • Behavior: Whether the agent follows defined paths or reasons through a goal.
  • Task complexity: The length and type of work the agent can complete.
  • Features: Whether the agent can use skills, memory, and built-in file operations.
  • Authoring: Whether you define instructions and features or build topics and branches.
  • Publishing: Where the completed agent can be made available.

You can't move an agent between the GitHub Copilot and standard harnesses after creation. Define your requirements before you create the agent so you don't need to rebuild it later.

For more information, see Choose a harness.