Back to Blog
AI Agent Architecture

Agent Framework vs Agent Harness

Who really owns your loop?

Half the AI agents shipped in 2025 were orchestration code the model no longer needs. Here's how to tell which side of the framework-vs-harness line you're on — and why it decides where your failures live.

July 5, 20269 min read
AI AgentsArchitectureAgent HarnessLangGraphEnterprise AI
AgentTrust OS

Agent Framework vs Agent Harness

Who really owns your loop?

TL;DR
  • An agent framework (LangGraph, CrewAI, Google ADK) is a construction kit — you write the orchestration loop and the model is a component you call.
  • An agent harness (Claude Code, Codex CLI, Gemini CLI, Oracle's Select AI Agent) ships a finished loop — you configure and extend it through skills, MCP servers, and hooks instead of writing it.
  • Six dimensions separate them: loop ownership, extension model, abstraction level, failure surface, upgrade path, and control.
  • 2023–2024 rewarded elaborate orchestration because models were weak. 2025–2026 rewards a strong harness plus well-designed context, because models got strong enough to run their own loop.
  • Frameworks still win for genuinely custom, regulated, or deterministic pipelines — a real category, just smaller than the market assumed.
Keep reading for the full breakdown →

Most teams answer "framework or harness?" by accident — whatever they reached for first becomes the architecture, and nobody revisits the decision until production breaks. That's the problem. This isn't a tooling preference. It's an architectural commitment that decides who owns your agent loop, where your failure surface lives, and whether the next model upgrade improves your system for free or makes half your codebase redundant.

It sounds academic until you've shipped both. Teams running frameworks in 2026 are debugging orchestration bugs in code they wrote eighteen months ago, for a model that's since gotten smart enough to not need most of it. Teams running harnesses are shipping context and permission design instead — and inheriting every model upgrade for free.

This piece covers what a framework and a harness actually are, the six dimensions that separate them, why the market quietly shifted from one to the other, and how to decide which one your team should be building on.

THE TWO ARCHITECTURES

What an agent framework is

Definition

Agent Framework — a construction kit of orchestration primitives (graphs, crews, nodes, typed workflows) that you wire together yourself. You own the loop; the model is a component you call from inside it.

LangGraph, CrewAI, Google ADK, and Microsoft's unified Agent Framework all follow the same shape. They hand you primitives — a graph structure, a crew of role-typed agents, a set of typed nodes — and leave the wiring to you. You decide the orchestration logic: how the planner routes to the right agent, when a critic re-checks output, how state persists between steps, when a retry fires, when the loop terminates.

That's real leverage when the workflow is genuinely yours to define. It's also real liability: every one of those decisions is now code you maintain. The intelligence of the system lives in your architecture. The model is powerful, but it's still just a function call inside a loop you designed, debug, and eventually rewrite.

What an agent harness is

Definition

Agent Harness — a finished agent runtime shipped by a vendor. The loop already exists: context management, tool execution, permission gates, sandboxing, sub-agents, compaction. You configure and extend it — you don't build it.

Claude Code, Codex CLI, Gemini CLI, and Oracle AI Database's Select AI Agent are harnesses. The agent loop — context manager, planner/model call, tool executor, permission gate — is built-in runtime, not application code. You extend it through skills, MCP servers, hooks, and plugins, not through orchestration logic you write and own.

The trade is explicit: you give up some control over how the loop runs in exchange for a working agent on day one, and every improvement the vendor ships to context handling, tool execution, or sub-agent coordination arrives in your system without a single line of your own code changing.

SIDE BY SIDE

Two loops, two owners

The clearest way to see the split is to look at where the loop lives — inside your application code, or inside the vendor's runtime.



Agent B

...Criticstate store · conditional edges · retriesmemory · termination — all hand-writtenLLM API (model = a component)LangGraph · CrewAI · Google ADKMicrosoft Agent FrameworkIntelligence lives in YOUR architectureAGENT HARNESSvendor ships the loopUser / CLI / CI pipelineHARNESS RUNTIME (built-in)Context MgrPerm. GateModel CallTool Exec.sub-agents · compaction — the loopalready exists, extend via skills/MCPFrontier modelClaude Code · Codex CLI · Gemini CLIOracle AI Database Select AI AgentIntelligence lives in MODEL + HARNESS
Figure 1 — In a framework, your code owns every box in the loop. In a harness, the loop is vendor runtime and you extend it from the outside.
Key Insight

The question isn't "which framework?" anymore. It's whether the loop you need already exists — and whether you should be building an agent, or building the environment one runs in.

WHAT ACTUALLY SEPARATES THEM

The six dimensions that separate them

Every framework-vs-harness conversation eventually collapses into the same six trade-offs. Get clear on these and the "which one?" question mostly answers itself.

01
Loop ownership

You write the orchestration loop yourself, or the vendor ships one and you plug into it. This is the root decision — every other dimension flows from it.

02
Extension model

Frameworks extend through code you write and maintain. Harnesses extend through configuration — skills, MCP servers, hooks, plugins — that layer on top without touching the runtime.

03
Abstraction level

A framework gives you primitives and a blank canvas. A harness gives you a working agent on day one — the trade is exactly how much you get to decide versus how fast you ship.

04
Failure surface

In a framework, failures are orchestration bugs — bad routing, state corruption, retry storms — in code you own. In a harness, failures move to context design and permission scoping, which is a fundamentally different debugging surface.

Pro Tip

If your incident postmortems keep citing "orchestration logic" as root cause, that's a framework-shaped failure surface — worth asking whether a harness would have prevented it structurally.

05
Upgrade path

When the underlying model improves, framework code often needs refactoring to take advantage of new capabilities. Harness users get the improvement for free the next time the vendor ships a runtime update.

06
Control

Frameworks give you total control over every decision in the loop. Harnesses give you bounded control — you trade some of that control for capability you didn't have to build.

DimensionAgent FrameworkAgent Harness
Loop ownershipYou write itVendor ships it
ExtensionCodeConfiguration (skills, MCP, hooks)
AbstractionPrimitivesWorking agent on day one
Failure surfaceOrchestration bugsContext and permission design
UpgradesRefactor when models improveImprovements arrive free
ControlTotalBounded — capability traded for control
THE MARKET SHIFT

The shift nobody announced

2023–2024 was the framework era. Models were weak enough that elaborate hand-built orchestration — planners, critics, routers, state machines — genuinely compensated for what the model alone couldn't do reliably.

2025–2026 is the harness era. Models got strong enough that a good harness plus well-designed context now beats most bespoke orchestration for the majority of workloads. It's the bitter lesson, replayed for agents: scaffolding you hand-build gets absorbed by the layer below you the moment that layer gets good enough to do it natively.

Even the framework vendors see it coming. Microsoft merged AutoGen and Semantic Kernel into a single, unified Agent Framework. Oracle moved the agent runtime into the database itself. The stack is consolidating around fewer, deeper loops — not more, shallower ones.

2
Major framework vendors (Microsoft AutoGen + Semantic Kernel) merged into one unified runtime
1
Database vendor (Oracle) that moved the agent loop directly into the data layer
~50%
Estimated share of 2025 "agents" that were orchestration code the model no longer needs

None of this means frameworks are obsolete. They still win where the workflow is genuinely custom — regulated pipelines with deterministic guarantees, deep proprietary system integrations, cases where "bounded control" isn't good enough and you need total control. That's a real category. It's just smaller than most teams assumed when they defaulted to building one in 2023.

Warning

Choosing a framework because "we might need full control later" is a real cost paid today for a hypothetical you may never hit. Most teams that reach for total control never use more than the harness's bounded control would have given them.

WHERE AGENTTRUST OS FITS

Whichever loop you're on, someone still has to govern it

The framework-vs-harness decision changes where your orchestration logic lives. It does not change whether your agent's actions need to be governed before they hit production, validated at the moment they execute, and recorded for audit afterward. That responsibility sits above both architectures — and most teams on either side of the line leave it unaddressed.

A framework team writes its own state machine but rarely writes a certification gate for it. A harness team inherits a well-built loop but still configures its own skills, MCP servers, and permission scopes — and a badly scoped permission gate is a governance gap regardless of who wrote the loop underneath it.

AgentTrust OS sits at that layer, independent of which architecture you chose:

Figure 2 — The AgentTrust OS governance pipeline sits above the architecture choice, not inside it.

Trust Certify

Whether your loop is a LangGraph graph you wrote or a Claude Code configuration you extended with skills, Trust Certify runs the same pre-production gate: does this agent's behavior meet the policy bar before it ever touches a real system?

Trust Runtime

Framework teams hand-code permission checks inside their state machine. Harness teams configure permission gates through hooks and MCP scopes. Trust Runtime validates every tool call against policy at execution time regardless of which one produced the call — so a misconfigured hook and a missing state-machine check get caught the same way.

Trust Audit

Neither architecture gives you an audit trail by default. Trust Audit adds the immutable, signed record of what the agent decided and why — the same record whether the decision came out of your custom router or the vendor's built-in planner.

FREQUENTLY ASKED QUESTIONS

Common questions

Not quite. A framework's opinions live in code you can rewrite. A harness's opinions live in a runtime you don't have access to modify directly — you extend it from the outside through skills, MCP servers, and hooks. That's a different layer of the stack, not just a stronger opinion on the same layer.

Regulated pipelines with deterministic guarantees, deep proprietary system integrations, and workflows where "bounded control" genuinely isn't enough still need total control. That category is real — it's just smaller than the market treated it as in 2023–2024, when weak models made elaborate orchestration necessary everywhere.

The raw API gives you the model. A harness gives you the model plus a built runtime loop around it — context management, tool execution, permission gates, sandboxing, sub-agent coordination, and compaction — already solved. Calling the API directly means you're rebuilding that loop yourself, which is exactly the framework-era pattern the harness era replaced.

Look at your last few incident postmortems. If root causes keep landing on orchestration logic — bad routing, retry storms, state bugs — rather than on context or permission design, you're paying the framework tax without a workload that requires it. That's the signal to evaluate a harness for that workload, not necessarily to rip out everything at once.

No — and we'll be honest about that. A harness gives you a well-built loop, not a pre-approved one. You still configure permission scopes, skills, and MCP servers yourself, and a badly scoped permission gate is a governance gap whether the loop underneath it is vendor-built or hand-written. Certification, runtime enforcement, and audit trails sit above the architecture choice either way.

Start from the workload, not the tool. List the workflows you're building and sort each one by whether it needs total control (regulated, deterministic, deeply custom) or would be fine with bounded control in exchange for a working loop on day one. Most teams find the second bucket is bigger than they assumed.

READY TO GOVERN YOUR AGENTS?

No AI Agent enters production without AgentTrust

Confidence in every decision — from pre-production certification to post-deployment audit, whether your loop is a framework you built or a harness you configured.

See Pricing & Start Free →

More from the blog

AI ComplianceJuly 22, 2026AI ComplianceJuly 22, 2026AI GovernanceJuly 22, 2026AI GovernanceJuly 22, 2026AI ArchitectureJuly 22, 2026AI SecurityJuly 16, 2026MLOpsJuly 10, 2026AI ImplementationJuly 8, 2026AI Agent ArchitectureJune 30, 2026EngineeringJune 23, 2026AI Agent ArchitectureJuly 2, 2026AI Agent ArchitectureJuly 1, 2026IntegrationsJuly 1, 2026IntegrationsJuly 1, 2026IntegrationsJuly 2, 2026AI SecurityJuly 3, 2026AI SecurityJuly 1, 2026AI ComplianceJuly 2, 2026AI ComplianceJuly 3, 2026AI StrategyJuly 2, 2026AI StrategyJuly 3, 2026AI StrategyJuly 3, 2026AI StrategyJuly 3, 2026AI GovernanceJuly 28, 2026Healthcare AIJuly 28, 2026ArchitectureJuly 29, 2026ArchitectureJuly 29, 2026AI StrategyJuly 29, 2026AI StrategyJuly 30, 2026AI SecurityJuly 30, 2026AI ComplianceJuly 30, 2026EngineeringJuly 30, 2026AI GovernanceAugust 4, 2026EngineeringAugust 4, 2026EngineeringAugust 4, 2026