Is the Agent Harness Dead? — Jediah Katz, SpaceXAI

Read the talk

Is the Agent Harness Dead?

His closing statement connects new frontiers with infrastructure, trust, and efficiency.Open full source frame
His closing statement connects new frontiers with infrastructure, trust, and efficiency.

Smarter models are absorbing coding tricks that once lived in prompts and guardrails. Jediah Katz explains why that makes yesterday’s harness thinner while increasing the value of runtime infrastructure, security, efficiency, and higher-level agent orchestration.

From a talk by Jediah Katz

At a glance

Ideas worth remembering

  • A harness has at least two distinct responsibilities: a runtime that executes and preserves work, and a context-and-orchestration layer that controls model calls, tools, memory, and behavioral guidance.

  • Smarter models can absorb coding behaviors once supplied by scaffolding, including repository exploration, persistent work, file editing, testing, and self-checking.

  • The data flywheel explains the apparent contradiction: a harness makes harder tasks usable, usage teaches models those skills, obsolete scaffolding is deleted, and the harness moves to a new frontier.

  • New knowledge-work agents need fresh scaffolding for communication, risky actions, website workflows, memory, and coordination among long-lived coordinators and worker fleets.

  • Runtime durability, scoped permissions, security controls, and cost optimization remain harness responsibilities because model weights cannot provide persistent compute or enforce external authority boundaries.

  • Design temporary interventions for removal: centralize and log behavioral shims, use composable primitives such as subscriptions, and consider the visibility tradeoff when exposing internal details to users.

The harness is the model’s eyes, hands, and operating environment

Jediah Katz joined Cursor in early 2025 and described himself as its longest-tenured agent-harness engineer; he later moved to SpaceX following its acquisition of Cursor. He starts with a term that arrived after “prompt engineer” and “context engineer.” A context engineer assembles what the model should see for a particular request. A harness engineer owns a larger system: the software that wraps the model, steers it, preserves its work, and connects it to computers and third-party services. The model supplies learned capability; the harness determines how that capability enters the world.

The useful split is between two layers. Runtime controls where the core agent loop executes and how its state is stored so interrupted work can resume. This resembles conventional software engineering: processes, persistence, recovery, and execution environments. Context and orchestration decide which models run, when they run, and what they see. Prompts and tools are only the obvious pieces; memory, context compaction, and behavioral interventions also live here. Much of the “harness is dead” debate concerns this second layer, even though the runtime remains part of the same system.

Katz introduces the runtime and context-and-orchestration layers.Open full source frame
Katz introduces the runtime and context-and-orchestration layers.
0:120:42
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

0:12 · section reference included

Smarter models removed the need for coding-specific scaffolding

The previous high-water mark was an expensive, long-running, multi-model harness that coordinated many agents and machines to build a browser from scratch. Katz says producing that demonstration even disrupted Cursor once or twice. Yet the industry soon moved in the opposite direction: system prompts shrank, guardrails disappeared, and some builders predicted that only reusable skills would remain. Cursor itself removed interventions that had compensated for model weaknesses.

Those deleted interventions were concrete. A small auxiliary model once applied edits because frontier models could not reliably modify files themselves. Coding-specific instructions taught agents how to explore a repository, persist on long tasks, run tests, and check their own work. As models improved, keeping all of that machinery could become redundant rather than helpful.

The provocative test is a harness that offers little more than a shell—plus, in Katz’s deliberately unsafe joke, access to every secret. Katz describes a UC Berkeley study that tested seven frontier models across several harnesses, including Pi, Codex, and Claude Code. On SWE-bench Lite, he reports no significant difference in scores attributable to harness choice, particularly for newer models. Separately, he says another study found that a dedicated machine-learning-engineering harness made little difference on MLE-bench. These are his descriptions of two distinct results; the supplied material does not include the papers or numerical results.

He discusses the two harness evaluations and their reported results.Open full source frame
He discusses the two harness evaluations and their reported results.

That is the limited sense in which part of the harness is dead. Repository exploration, persistent execution, test running, and edit application used to be product-side patches for missing “coding muscle memory.” Once those behaviors became native model capabilities, the patches stopped earning their complexity.

2:593:30
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

2:59 · section reference included

The harness makes its own coding tricks obsolete

Katz calls the mechanism the data flywheel. A frontier harness first makes harder tasks feasible. More users can then attempt those tasks productively, producing more coding interactions that reach model labs. Models learn the recurring behaviors, so the next generation can perform them without the original prompts or guardrails. The harness can finally delete the intervention that created the training opportunity.

Deletion is therefore evidence that one turn of the flywheel succeeded, not evidence that the surrounding product has no value. Once a capability such as basic coding becomes commoditized inside the model, the harness can move outward to a harder domain or a broader part of the job. That final transition—from absorbed capability to a newly accessible frontier—restarts the cycle.

The agent-harness data flywheel

Harness opens a harder taskPrompts, guardrails, tools, and orchestration bring previously unreliable work within reach.
More users attempt itThe task becomes productive enough to generate more real agent interactions.
Labs receive more task dataRepeated interactions expose the skills needed to complete the work.
Models absorb the skillBehaviors such as exploring repositories and running tests become native capabilities.
Harness deletes old scaffoldingPrompts and guardrails that no longer help can be removed.
Product scaffolding makes a new task usable, usage teaches models the recurring behavior, and the harness moves on after deleting the absorbed scaffolding.
Read the diagram as text
  • Harness opens a harder task. Prompts, guardrails, tools, and orchestration bring previously unreliable work within reach.
  • More users attempt it. The task becomes productive enough to generate more real agent interactions.
  • Labs receive more task data. Repeated interactions expose the skills needed to complete the work.
  • Models absorb the skill. Behaviors such as exploring repositories and running tests become native capabilities.
  • Harness deletes old scaffolding. Prompts and guardrails that no longer help can be removed.
  • Harness opens a harder task → More users attempt it: makes task feasible.
  • More users attempt it → Labs receive more task data: creates interactions.
  • Labs receive more task data → Models absorb the skill: supports model learning.
  • Models absorb the skill → Harness deletes old scaffolding: makes patches redundant.
  • Models absorb the skill → Harness opens a harder task: prompts a move to a new frontier.
6:166:20
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

6:16 · section reference included

Grokbot puts prompting and guardrails back at a new frontier

Grokbot changes the unit of interaction. Instead of treating each request as a one-off chat, it uses long-lived coordinator bots that direct fleets of worker agents. Katz compares the coordinator to a lawyer who owns strategy and deals directly with the client while delegating pieces of work to paralegals. The coordinator maintains the relationship and overall objective; workers execute delegated tasks.

This broader job reverses the simplification seen in coding agents. Grokbot has needed new prompts and guardrails because models have not yet internalized all the behaviors required of an autonomous colleague. The product is operating in unfamiliar domains, over longer periods, with more consequential actions. Old scaffolding disappeared from coding while new scaffolding appeared around knowledge work.

He explains the coordinator-and-worker relationship.Open full source frame
He explains the coordinator-and-worker relationship.

Four unresolved behaviors show why:

  • Website workflows: Tasks such as producing slide decks or booking travel require reliable interaction with external systems.
  • Communication: A long-running colleague must report progress without flooding the user.
  • Acting versus asking: Sending email may be useful, but the agent needs to know when intent is clear enough to act and when approval is required.
  • Memory: The system must learn how a particular person works over time.

Experienced coding-agent users may recognize all four problems, but a general colleague encounters them routinely rather than at the edges.

The harness currently makes those behaviors feasible by structuring coordination, inserting behavioral guidance, and constraining risky actions. If models later absorb these patterns, some of that scaffolding may disappear too. The next frontier can also remain within software engineering: senior engineers spend substantial time on work beyond writing code.

Grokbot’s coordinator-and-worker topology

UserSupplies goals and receives updates.
Long-lived coordinatorOwns strategy, communication, and orchestration across work.
Fleet of worker agentsExecutes delegated pieces of the larger assignment.
The long-lived coordinator owns the user relationship and strategy, then delegates work to a fleet rather than handling every task in one chat.
Read the diagram as text
  • User. Supplies goals and receives updates.
  • Long-lived coordinator. Owns strategy, communication, and orchestration across work.
  • Fleet of worker agents. Executes delegated pieces of the larger assignment.
  • User → Long-lived coordinator: sets goals and intent.
  • Long-lived coordinator → Fleet of worker agents: delegates tasks.
  • Long-lived coordinator → User: reports progress and requests decisions.
7:428:12
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

7:42 · section reference included

A software factory is a harness around multiple agent stages

The software-factory example raises the abstraction again. A bug arrives in a team channel and an automation triages it. That triage can start a cloud agent to attempt a fix. The agent then produces before-and-after video evidence. After the change merges and begins deploying, another agent watches the rollout for production problems. No single model call owns the lifecycle; a “meta-harness” connects specialized agent runs to events and deployment state.

The example remains a direction rather than a solved autonomous development lifecycle. Its value is architectural: each stage has a distinct trigger and responsibility, while the outer harness coordinates work across them. Better coding models improve the fix attempt, but they do not by themselves build the event routing, deployment integration, or production watcher.

A bug moving through the meta-harness

Bug reportA person reports a problem in a team channel.
Automatic triageAutomation triages the incoming report.
Cloud fix agentAn agent attempts to repair the bug.
Before-and-after evidenceTooling records videos intended to demonstrate the change.
Merge and deploymentThe fix is merged and begins rolling out.
Production watcherA separate agent monitors the rollout for issues.
The fix agent produces videos; a separate agent starts monitoring when the fix is merged and begins deployment.
Read the diagram as text
  • Bug report. A person reports a problem in a team channel.
  • Automatic triage. Automation triages the incoming report.
  • Cloud fix agent. An agent attempts to repair the bug.
  • Before-and-after evidence. Tooling records videos intended to demonstrate the change.
  • Merge and deployment. The fix is merged and begins rolling out.
  • Production watcher. A separate agent monitors the rollout for issues.
  • Bug report → Automatic triage: triggers.
  • Automatic triage → Cloud fix agent: may start an attempted repair.
  • Cloud fix agent → Before-and-after evidence: produces videos.
  • Cloud fix agent → Merge and deployment: if the fix is merged.
  • Merge and deployment → Production watcher: starts production monitoring.
10:5311:23
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

10:53 · section reference included

Models cannot absorb runtime, authority, or operating economics

Some harness responsibilities cannot migrate into model weights. Infrastructure and runtime are the first. Agent tasks have stretched from minutes toward hours and days. A sleeping laptop cannot reliably host an autonomous colleague through that duration, so execution state and compute move to persistent cloud infrastructure. A smarter model cannot keep a powered-down process alive or recover state that was never stored.

Trust and security are the second. A shell plus a file containing every API key might perform well on a coding benchmark, but benchmark capability does not make that design acceptable. Production systems need permissions scoped to particular agents and people, plus enforced limits that prevent catastrophic actions or runaway spending. Instructions can influence behavior; the harness controls what credentials and actions are actually available.

Efficiency is the third. The studies that reportedly showed similar evaluation scores across harnesses also found meaningful differences in cost per task. Katz says Grokbot’s team adjusted cache hit rate, token efficiency, and model mix, reducing cost without a reported loss of quality. His wording about speed does not establish whether it improved. The talk gives no figures or evaluation method, and does not explain how the model mix was allocated.

He contrasts evaluation scores with cost per task.Open full source frame
He contrasts evaluation scores with cost per task.

Efficiency compounds with adoption. A small per-task difference matters little when an agent runs occasionally; it becomes a major product and infrastructure concern when agents handle a growing share of daily work. Equal benchmark scores therefore do not imply equivalent harnesses. Reliability, authority boundaries, and cost can diverge even when the final answer score does not.

12:1612:43
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

12:16 · section reference included

Build harnesses so temporary behavior is easy to add—and remove

The flywheel is accelerating, but product requirements are again moving ahead of model behavior. That means the near-term harness becomes messier before it becomes cleaner: teams add interventions quickly, then remove them when models catch up. The engineering requirement is reversibility. A harness should make features cheap to ship, observe, and unship rather than allowing each workaround to harden into permanent architecture.

One response is to expose less of the harness’s internal machinery as a user-facing contract. Hyrum’s Law captures the risk: anything observable may acquire users who depend on it. Hiding internals reduces change-management cost and permits faster iteration, but it also reduces visibility into what an agent is doing. That is a real product tradeoff, especially when users need to inspect consequential work.

Another response is to design reusable primitives rather than one-off integrations. The example is subscriptions: an agent may need to wake when someone posts in Slack, CI turns red on a pull request, or a particular time arrives. Instead of giving every event source its own bespoke integration, one framework and one tool let the agent subscribe to an event. New triggers can then reuse the same model-facing concept.

Temporary behavioral patches receive their own lifecycle. If Grokbot waits too long to respond, a deterministic guardrail can nudge it that the user is waiting. Katz calls these patches shims: they fix current model behavior without waiting for another checkpoint. The team tracks shims centrally and logs every firing. A bot watches that telemetry; when a shim stops firing, it opens a pull request proposing removal. The workaround is observable by design, so model progress can delete code instead of leaving fossilized guardrails behind.

He describes identifying unused shims for removal.Open full source frame
He describes identifying unused shims for removal.
14:1814:48
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

14:18 · section reference included

The next harness composes agents and moves work off the laptop

The harness is also moving up a level of abstraction. Earlier systems composed individual LLM calls; Grokbot and software-factory designs compose agents as their building blocks. Each child agent can own its own context, tools, and execution loop, while the parent system coordinates assignments and lifecycle events. This does not eliminate lower-level model orchestration—it places another control layer above it.

He predicts agent work will move off the laptop.Open full source frame
He predicts agent work will move off the laptop.

Katz closes with a concrete forecast: within six months, 90% of agent work will run off the laptop. That is a prediction, not an observed result. Its rationale follows from the runtime argument: agents that work for hours or days need persistent compute, resumable state, and access that survives a user closing a lid.

So the answer depends on which harness is under discussion. The coding-specific prompts and guardrails that once supplied missing intelligence are disappearing as models absorb their lessons. The harness that opens new task frontiers, coordinates agents, preserves state, limits authority, and controls cost is becoming more important. Yesterday’s harness can die while the system around tomorrow’s agents expands.

16:5812:16
Suggest correction

This note stays in this page until you copy or download it. Nothing is submitted; reloading clears the draft.

16:58 · section reference included

Resources

Transcript & slides

Loading transcript and slides…

Transcript download