[
  {
    "startMs": 12680,
    "text": "My name is Jediah, and I joined Cursor early in 2025, uh, as the longest-tenured engineer working on our Agent Harness. And recently, I came along to SpaceX as part of the acquisition of Cursor. So today, I wanna talk to you all about how the Agent Harness has evolved to where we are today and where I think things are going. And there's a motivating"
  },
  {
    "startMs": 42000,
    "text": "question that I have for us to answer today, which is: Is the Agent Harness Dead? So let's get started."
  },
  {
    "startMs": 55580,
    "text": "Here's a more natural and flowing version of that script, which reads like a cohesive conference talk rather than a series of short points.  Oops. Just making sure everyone's still got their slop detectors on before lunch. Um, but no, for real. So the story starts in early twenty-twenty three when prompt engineer was the hottest title out there. By mid twenty-twenty five, that had evolved to context engineer, someone who programmatically puts the best context for the model"
  },
  {
    "startMs": 85260,
    "text": "together on the fly. And then only at the beginning of this year did the industry land on the term agent harness and harness engineering to describe work that my team and I have been doing for a while."
  },
  {
    "startMs": 100660,
    "text": "So what's in an agent harness? The harness is like the eyes and the hands for the model. It wraps around the model, steers it, and connects it to the world. Users connect to our harness through apps, and then the harness connects the model to computers and also to third-party services like MCPs. I like to divide the harness into two layers: the runtime and the context and orchestration layers."
  },
  {
    "startMs": 130820,
    "text": "The runtime is kind of like the foundation of the harness. It controls where the core agent loop runs and how state is stored so that work can resume. Building this foundation is a lot like traditional software engineering."
  },
  {
    "startMs": 147080,
    "text": "And then the context and orchestration layers are kinda like the Wild West. This is what a lot of people refer to when they talk about the harness. These parts of the harness control which models are called when and what context they see."
  },
  {
    "startMs": 164900,
    "text": "That includes things like prompts and tools, of course, but also memory, compaction, and a bunch of tricks you might not know that we do to make the agent behave in the way that we want. So this is the area that I primarily work in."
  },
  {
    "startMs": 179460,
    "text": "In the new year, we kind of hit peak harness. Cursor announced that we had created a browser entirely from scratch, uh, using a new long-running harness called Grind swarm. This was a multi-model harness that orchestrated a lot of, a lot of agents and a lot of machines, and it was very expensive to run. Um, it actually took down Cursor maybe once or twice to, to get this demo. Um, now,"
  },
  {
    "startMs": 210220,
    "text": "like anything in the world of agents, it only took a few months of peak harness for people online to start saying that the harness was dead. Tariq from Anthropic talked about how they had killed much of the system prompt from Claude Code. Gary Tan from YC thought that the harness would fade away and only skills would matter. Even myself and my colleague Stephane, we wrote about how we had removed all these guardrails that we had"
  },
  {
    "startMs": 240160,
    "text": "in Cursor to patch over gaps in the model's intelligence. We used to have things like a small model just to apply code edits to a file because the frontier models weren't good at this. We also had all sorts of coding-specific instructions like how to explore the code base and how to check your work."
  },
  {
    "startMs": 259260,
    "text": "So if all these people were saying the harness is dead, they were saying that smarter models are what killed it, and there's a lot of evidence for that. I want you all to think about a very simple harness where the model only has access to the shell and to all of my secrets. Please don't screenshot this slide, by the way. This one's off limits."
  },
  {
    "startMs": 283800,
    "text": "Uh. So who here thinks that this really simple harness would do just as well on coding evals as a more sophisticated one? Maybe some hands. Who thinks it would? Who thinks so? Who thinks it would if you-- Raise your hand if you think it would. A few hands, but most of you, no. So a few recent studies tried to investigate exactly that question. The first one out of UC Berkeley tried seven different frontier models on a series of harnesses, including Pi, Codex, and Claude"
  },
  {
    "startMs": 313800,
    "text": "Code. And what they found, particularly on the newer, smarter models, is that the choice of harness did not actually make a difference significantly in the score on SWE-bench Lite. And then another, another study from, uh, from Applin EPFL found similarly that a dedicated MLE harness did not make a big difference on an MLE-bench. So what is going on here? Is it, is it actually true that the harness is dead? Are they right? Here's what I think that the evidence"
  },
  {
    "startMs": 343840,
    "text": "shows. A fancy harness in this day and age no longer adds coding intelligence. I think that is true. I know that's surprising. But these things that we used to do in the harness to patch over gaps in the raw coding muscle memory of the model, like teaching it how to explore the code base, uh, how to work persistently for a very long time with things like slash goal, uh, how to run tests to check your work, the model has natively absorbed these skills."
  },
  {
    "startMs": 376784,
    "text": "So why is this happening?"
  },
  {
    "startMs": 380604,
    "text": "It turns out the harness is actually making itself obsolete through what I call the data flywheel. So in this process, the harness brings harder and harder coding tasks within reach. At that point, more users can productively attempt those tasks with agents. That means more coding data is shared with the labs, and eventually the models learn natively how to do these skills well."
  },
  {
    "startMs": 407904,
    "text": "Eventually, the models get so good that the harness can actually delete the things it needed to do to make those tasks work in the first place."
  },
  {
    "startMs": 418084,
    "text": "It's a very interesting process. So that's how you get people saying that the harness is dead. And if the models are good enough to code well in any harness, then why should you care? Does it really matter which harness you use?"
  },
  {
    "startMs": 432764,
    "text": "Is the harness really dead? I say no, and there's two reasons why. First of all, and I'm gonna go into both these points, the harness actually opens the new frontier of tasks for the model to solve. And then second, there are some tasks or some parts of the harness, especially outside the context layer, which the model cannot absorb. So to first talk about how the harness unlocks the next frontier, I want to talk about Grokbot. Who here has tried Grokbot?"
  },
  {
    "startMs": 462804,
    "text": "Can I see some hands? Awesome. Let's go. That's great. Um, so for those of you who haven't, Grokbot is our autonomous colleague who gets work done for you, not just coding, but all kinds of knowledge work. And I really recommend you try it. Not gonna sell too much, but it's a groundbreaking new product 'cause it already created a new category. Let's just talk about the harness, though. So Grokbot has a new kind of harness that operates not based off of one-off chats, but long-lived"
  },
  {
    "startMs": 492464,
    "text": "coordinator bots that orchestrate a fleet of worker agents. You can kind of think of it like hiring a high-powered lawyer who deals with you, you know, directly and owns strategy, but they farm out their tasks to a team of paralegals. It's like that."
  },
  {
    "startMs": 512424,
    "text": "Now, something interesting about the Grokbot harness is I mentioned how in Cursor we found ourselves removing things from the harness, removing prompting, removing guardrails as the models got smarter. But curiously, in Grokbot, we've actually found ourselves putting back a lot of these things, adding new prompting, adding new guardrails. And that's because there's a lot of new tasks in this new way of working in the new domains that Grokbot is meant to solve that the models have not nailed yet."
  },
  {
    "startMs": 542044,
    "text": "To give a few examples of those kind of things, just a few things that we're focused on right now when it comes to Grokbot, there's key website flows like making slide decks and booking travel, communication. An autonomous colleague needs to keep you up to date on what it's been doing without overwhelming you. Acting versus asking is another big one. Grokbot can do a lot of things which are kind of risky in some sense, like emailing your colleagues. You want it to be able to do that, but you only want it to do it in the way that you intended. And then, of course, learning over time the way that you work through memories is another big"
  },
  {
    "startMs": 571844,
    "text": "focus."
  },
  {
    "startMs": 576924,
    "text": "So those of you who might have pushed the boundaries with coding agents might have noticed that none of these tasks are new. But for Grokbot, they're much more important because everybody is needing them in some way. And right now in Grokbot, it is the harness that is making these tasks feasible. Of course, the model is a big part of that, but the harness is helping bring them within reach."
  },
  {
    "startMs": 599744,
    "text": "So going back to our data flywheel, Grokbot, that example lets us fill in the last, the last arrow in our cycle, which is when a capability like coding gets commoditized by the model, it's actually the harness which unlocks a new frontier for the model to then solve and kicks off that flywheel again. So that might look like, you know, taking on new tasks outside of the coding domain,"
  },
  {
    "startMs": 629884,
    "text": "um, as we just saw with Grokbot, or it could just mean taking on tasks in the software engineering job beyond pure coding. I'm sure some of you here are, you know, pretty senior in your software careers, and you might know the more senior you get, the less coding you're actually doing. So there's a lot of other things in the job that matter. Um, this is the core idea that I would like you to understand, this flywheel and how the model and the harness together drive it."
  },
  {
    "startMs": 653644,
    "text": "One more example of how the harness can unlock new frontiers is some of you may have heard of this idea of the software factory, where you have multiple agents coordinating together to solve the full software development life cycle. Now, this is far from a solved vision, but there's a lot of industry-- or there's a lot of innovation happening across the industry at the harness. To give an example of how this might manifest, you know, internally, we have a lot of channels where someone"
  },
  {
    "startMs": 683324,
    "text": "might report a bug to that channel, and then an automation immediately auto-triages that bug. Then it might kick off a cloud agent to try to fix the bug, and that agent will use our tooling to show before and after videos to prove that it's fixed. And then once that fix is deployed, uh, or is, uh, merged and, and starts deploying, we have our rollouts product which kicks off another agent to watch in production for any issues."
  },
  {
    "startMs": 710604,
    "text": "So you can think of all this as almost like a meta-harness which is orchestrating many agents together. That's how I would like you to think about this. So that's the first reason that you should care about the harness, because a frontier harness is needed to be at the frontier of agentic tasks. And then the next reason is there are some parts of the harness that the model can't absorb. So let's talk about those."
  },
  {
    "startMs": 736564,
    "text": "First of all, there is the infrastructure and runtime needed to make an autonomous colleague reliable. Over the past year plus, we've gone from agents that work for on a typical task for minutes to hours to days and even longer. And there's just no way that this can work on one person's laptop, which might go to sleep. It has to be running in the cloud if you really want an autonomous colleague."
  },
  {
    "startMs": 763472,
    "text": "And then next, we have trust and security. Yes, like we saw before, uh, a simple harness with just Bash and all your, you know, all your API keys in a file can solve coding tasks, but you probably don't wanna give all your API keys in a file to the model. Um, or if you're okay with that, I'm sure that your head of security would have something to say. Um,  so this is obviously really important in companies where we wanna have permissions that are scoped down to specific agents and specific people, but it's also important to have guardrails for anyone who doesn't wanna wake"
  },
  {
    "startMs": 793432,
    "text": "up one morning to a really catastrophic action or to a ten thousand dollar API fee, right?"
  },
  {
    "startMs": 801472,
    "text": "And then finally, there's efficiency. If you think back to those two studies I showed where the choice of harness did not make a significant difference in eval scores, both of those studies actually found that there was a significant difference in cost per task. I have personally been focused over the past month on optimizing the efficiency of the Grokbot harness. Now, through tweaking variables like, uh, cache hit rate, improving that, token efficiency, um, model"
  },
  {
    "startMs": 831312,
    "text": "mix, we were able to bring down the cost and the speed of Grokbot significantly for users without any hit to quality. Users have really, really been appreciating this. It's been awesome to see. Um, now it could be an entire different talk about how we did this, but the key takeaway here is that the more and more that you use agents to do your work, the more it matters, the more valuable it will be for you to have the most efficient harness."
  },
  {
    "startMs": 858312,
    "text": "So by now you might be convinced that the harness still matters. Then you might be asking, what's next? Here's a few trends that I'm anticipating. First of all, that flywheel is speeding up, and right now we've entered a new age where the product is once again moving faster than the model. That means that the harness is going to get more messy before it gets cleaned up. There's gonna be more things shipped. So because of this, we're expecting people to, uh, build their harnesses, design them so it's easier to"
  },
  {
    "startMs": 888192,
    "text": "ship and unship new features. One way we're already seeing that manifest is with both Grokbot and other similar products, less and less of the harness inner workings are being exposed to the user. Some of you may have heard of Hyrum's Law, which says that anything that you expose to users, they will come to depend on. Now, obviously there are trade-offs to giving use- lose-- users less, you know, less visibility into what's happening. But one advantage is that there's less change management to deal with, and you can iterate much faster."
  },
  {
    "startMs": 918432,
    "text": "Now, another way that we've been seeing, um, this trend manifest is a bigger focus on designing primitives for agents. Primitives are like building block interfaces that can be composed and extended into powerful features. When you have primitives, you can add new features without making things more complicated for the agent, and you can remove features without having to do a complicated refactor in your code base. It's just good engineering. One example across our agent harnesses of a primitive we've added is called subscriptions."
  },
  {
    "startMs": 949072,
    "text": "Agents need a way to wake up in response to events. Those might be, uh, someone posting in Slack, CI going red on a PR that the agent cares about, or just a certain time of day. Now, rather than having one separate integration for-- or, you know, having separate integrations for each of these things, we have one framework and one tool that the model can use or the agent can use to subscribe to an event. And then another cool thing that we do, I mentioned earlier that we have these deterministic guardrails to patch over"
  },
  {
    "startMs": 978992,
    "text": "bad behaviors in the model. That might be, for example, if Grokbot, um, doesn't respond to the user fast enough, and we might give, give it a little nudge and say, \"Hey, user's waiting on you.\" Now, we'd rather not do these things. They're kind of like hacks, but we would rather fix them now than, you know, wait for the next model checkpoint to, to get released. So in order to make our code base, you know, be less messy and, and have less of a worse time iterating the future, we track all these things which we call shims centrally, and every time the model uses one, it gets logged. So now"
  },
  {
    "startMs": 1009032,
    "text": "we have a bot who watches this dashboard, and whenever a shim stops firing, that model or that agent will put up a PR and say, \"This shim can be cleaned up.\""
  },
  {
    "startMs": 1018772,
    "text": "Another thing that I think is next for the harness is it is moving up to a higher level of abstraction. Yesterday's generation of harnesses were built from composing a bunch of LLM calls. Now the new harnesses we're seeing, like Grokbot and the software factory, uh, are using agents as the core building block. And then finally, I predict that within six months, ninety percent of agent work is going to run off the laptop. This is already where things are going, and I think there's just no way that, you know, this is ne-- this is not necessary in order"
  },
  {
    "startMs": 1048712,
    "text": "to have truly autonomous agents who can, you know, really work with us in, in the way that we want."
  },
  {
    "startMs": 1056912,
    "text": "So is the harness dead? The parts that made it smarter at coding, yes, that is the flywheel at work."
  },
  {
    "startMs": 1066212,
    "text": "That is the flywheel at work. But the harness, as we saw, is how the agents can unlock the next frontier of work. And then also the trust, the efficiency, the infrastructure that the harness brings, those things are not going anywhere. So yesterday's harness may be dead, but long live the agent harness of tomorrow. Thank you."
  }
]
