Venture Crane

The Harness Is the Product: What You Own When the AI Brain Is Rented

May 30, 2026 · 8 min read · by Venture Crane

Opus 4.8 shipped on May 28. The model we were building on two days earlier is now the previous model. This happens roughly once a month, and it is going to keep happening: a new frontier model lands, it is better than the last one, and every product built on the prior one inherits the upgrade for free. The brain you ship on is rented. It rotates.

So does almost everything else in the stack. The memory derivation tech rotates. The agent runtime rotates. The connector layer rotates. If you build a product on top of any of these and treat that tool as the product, you are building on sand that the vendor reships every few weeks.

The durable, compounding asset is not the brain. It is the harness the brain plugs into.

We have been building an AI employee product, and the discipline that holds up across model and vendor swaps is this one: when you hit any current tool in your system, ask what function it is serving. The function belongs to the harness, which is stable and owned. The tool belongs to the swappable substrate underneath. Teams chronically under-scope the harness because they anchor on today’s implementation - they see Honcho or Composio or a specific model and conclude that the integration is the thing they are building. It is not. The integration is a tenant in a building you own.


What the harness actually is

Strip away the vendors and the harness is a set of functions, each of which has to keep working no matter what implements it underneath:

  • Tenant isolation. Each customer’s data, memory, and actions are walled off from every other customer’s. This is a property of your system, not of any model.
  • Autonomy-ceiling enforcement. The agent operates within a configured ceiling, and that ceiling is enforced in code so the agent cannot raise its own privileges. More on this below, because it is the part most teams get subtly wrong.
  • Memory captured into a portable, owned artifact. Not “the agent remembers things.” The customer’s memory exists as an artifact you own and can export, independent of whatever derives it.
  • Owner control of that memory. The business owner can correct, add, or dismiss. Dismissal actually removes. The model is mirror-don’t-gate: you show the owner what the agent knows and let them edit the record, rather than hiding it behind an approval queue.
  • Provenance and no-fabrication. Outputs are traceable to their sources. The agent does not invent facts about the business.
  • Voice fidelity. The agent sounds like the business it represents, consistently.
  • Immutable audit. Every action is logged append-only. You can reconstruct what happened and why.
  • Config-to-employee materialization. A configuration document becomes a running employee. The path from “here is the business” to “here is the agent that works for it” is part of the product.
  • Lifecycle. Provision, evolve, pause, decommission. An employee is not a one-shot deploy; it has a life.
  • Continuity across swaps. When the model or the memory vendor changes underneath, the customer notices nothing except that things got better.
  • Portability. The customer’s state can leave with them.

None of those functions name a vendor. That is the point. Every one of them will outlive the specific tools currently implementing it. The model upgrade is a step function that everyone gets at once; it is not a moat. The harness is where this specific customer’s state accumulates, and it fits them better every month. That accumulation is the product.


Exposure is config, not an invariant

Here is a correction worth featuring, because it is a trap a lot of agent products fall into.

It is tempting to write a rule like “a human approves before anything goes out externally” and treat it as a product absolute - a safety invariant baked into the system. It is not an invariant. It is one value on a configurable axis. Some customers will want a human in the loop on every external send. Others will want the agent to email, text, or call autonomously the moment it is confident. Both are legitimate. The moment you hardcode one of them, you have shipped a policy as if it were physics.

The real invariant is one layer up: every action is gated by whatever ceiling is configured, that gating is enforced in code, and every gated action is audited. The ceiling is a knob. The enforcement is the law.

Once you accept that exposure is configurable, a consequence follows that is easy to miss: the config surface itself becomes a security boundary. If a customer can set their agent’s exposure ceiling, then raising that ceiling is a privileged, audited act - and it is an act the agent must never be able to perform on itself. An agent that can edit its own autonomy ceiling has no ceiling. So the configuration of autonomy has to live outside the agent’s reach, changed only through an authenticated, logged path that a human or an authorized system walks, never the agent.

We will be candid about where our own code sits on this. It currently hardcodes human-approval on external sends. That was the right starting default and it is safe, but it is a policy frozen into the wrong layer. Correcting it means splitting one axis into two: autonomy of initiation (can the agent start an action on its own?) and autonomy of exposure (can that action reach the outside world without a human gate?). Both become configurable, both enforced in code, both audited - and neither adjustable by the agent itself.


Memory capture is a harness function, not the memory tech

The same discipline applies to memory, and this is the cleaner example because the temptation is so concrete.

Right now the mechanism that derives a customer’s memory is a memory layer plus a model - Honcho doing the derivation work today. It is genuinely good tech. And it is exactly the kind of thing you should expect to swap, because the entire category is moving fast and the next thing will be better.

So the function is not “use Honcho.” The function is: persist the customer’s memory into a portable, owned, exportable artifact. The derivation mechanism is the tenant; the artifact is the building.

The acceptance test is blunt: could you rip out the memory vendor tomorrow and the customer still has their memory, intact and reloadable into whatever derives it next? If yes, you own the memory. If no - if the customer’s accumulated state is trapped inside a vendor’s representation and leaves when the vendor does - then you do not have a memory product, you have a dependency on someone else’s memory product.

Portability here is doing double duty. It serves continuity (the customer’s employee does not get amnesia when you change derivation tech) and it serves ownership (the state is the customer’s, and yours, not the vendor’s). One property, two harness guarantees. That is usually the sign you are looking at a real harness function rather than an implementation detail: it pays off in more than one place.


What is actually built, and what is not

This is a build blog, so honesty is the brand. The harness framing predicts where a system will be strong and where it will be weak, and ours lines up with the prediction closely enough that it is worth showing the seams.

The safety-critical core is real and runs in production today. Authority enforcement fails closed on every tool call - if the system cannot confirm an action is within the configured ceiling, the action does not happen. The audit log is append-only. Tenant isolation runs in three layers. None of that is aspirational; it is the part we trust.

The known holes cluster exactly where the function-first model said they would: at the control plane and at the two membrane edges where the agent meets the world.

The control plane is the configuration-as-security-boundary work above - the part that makes exposure a properly privileged, agent-unreachable knob rather than a hardcoded default. The two edges are the inbound and outbound membranes. Inbound is the content trust boundary: when external content arrives, the system has to treat it as untrusted input rather than as instructions, and that boundary is not yet as hard as it needs to be. Outbound is provenance enforcement on live output - the no-fabrication and source-attribution checks. That capability is built, but it is not yet wired onto live output.

That last category is the sharpest near-term work, and it is a specific kind of risk worth naming: built-but-unwired. The capability exists in the codebase and passes its own tests, but it is not in the path that real output travels. Built-but-unwired is more dangerous than not-built, because it reads as done on a feature list and is invisible until the day it was supposed to fire and did not. If you take one operational lesson from this, take that one: a guarantee that is implemented but not in the live path is not a guarantee yet, and your audit should hunt for exactly those.


The harness is a moat only when it is fused with delivery

One closing clarification, because it is easy to read all of this as “so build a horizontal agent platform.” It is not.

A harness on its own is infrastructure, and infrastructure is something platform players ship better than you will. They will offer generic harnesses to developers - tenant isolation, audit, lifecycle, memory plumbing - as a product, and that is a fine product. What they will not do is wire one into a specific business the way an operator who sat in the owner’s office does. The harness is defensible when it is fused with hands-on delivery: the knowledge of how this business actually works, captured into this customer’s accumulating state, fitted by someone who understood the work before automating it.

So the harness is how you win, not the headline. Externally, a customer is not buying tenant isolation or a portable memory artifact. They are buying an outcome: an employee that gets better every month, never quits, and already knows the business. The harness is the machinery that makes that outcome true and keeps it true across every model and vendor swap underneath. It is the reason the thing they bought keeps compounding instead of resetting each time the brain gets replaced.

The brain is rented. Rent the best one available, swap it the day a better one ships, and pass the upgrade to every customer for free. Own the harness. That is the part that is yours, and it is the part that gets more valuable every month you run it.

Share:Hacker NewsReddit

Related