Theo on Agent Harnesses, Interfaces and Shifting Abstractions

The T3 Code creator explains his model of harnesses and why he expects their differences to become less visible to users.

ThTheo연사 · T3 Code
채널
Theo - t3․gg
게시일
2026년 10월 30일
영상
49:29
읽기
6분
슬라이드
4
원문
영어
YouTube에서 열기
스크롤하면 영상이 오른쪽 아래로 작아져 계속 재생됩니다. 자막은 읽기 언어를 따릅니다.
읽기 언어2개 언어로 읽을 수 있음
이 글은 아직 한국어 번역이 없어 영어 원문으로 표시합니다.
요약

30초 요약

Theo, creator of T3 Code, distinguishes a model, a harness, tools and a human-facing interface, then explains how T3 Code connects to multiple harnesses. He uses programming and skateboarding analogies to argue that developers should be ready to shift their attention as abstractions change; his forecasts and product judgments are his own.

  1. 1Text and actionTheo explains why model output needs a surrounding system before it can trigger actions.
  2. 2Model plus harnessHe defines an agent in terms of a model and a harness supplying context and tools.
  3. 3A broker for connected systemsHe describes how T3 Code uses MCP to connect functionality across harnesses.
  4. 4Configuration does not automatically followSwitching harnesses can leave skills configured in the previous one behind.
  5. 5An agentic development environmentTheo describes T3 Code as an interface for managing agent work.

핵심 정리

  1. A harness connects model outputs to tools, context and actions.
  2. A human interface can bundle or connect to a harness without being identical to it.
  3. Switching harnesses can change which skills and configuration are available.
  4. Theo expects model and harness combinations to become more closely coupled.
  5. His T3 Code design aims to hide some cross-harness complexity from users.
전문

챕터별로 다듬은 전문 읽기

원본 자막만 보기
01

The shifting boundary of detail

Theo argues that abstractions change which engineering choices demand attention. He describes his own experience with models and architecture.

I start with a post arguing that debates about agent harnesses can resemble tabs versus spaces. The author is me: I build T3 Code, but I want to explain what a harness does and why I think most users will increasingly care less about which one they use.

Developers have always cared about details that matter at different levels. Formatting may matter for accessibility or consistency, while the product, the people building it and its architecture can matter more to the outcome.

The boundary moves as abstractions improve. Programmers once had to pay close attention to processor instructions; languages such as C let many developers work at a higher level without eliminating the instructions underneath.

Editors, formatters and linters reduced the need to debate many layout choices. AI-assisted completion then made it easier to name a familiar algorithm and generate an implementation, shifting where I spend effort again.

Engineers are accustomed to caring about details that outsiders dismiss. That habit can be useful, but I think it can also make us keep defending a layer after the practical value of obsessing over it has declined.

I point to attention shifting away from framework releases and say models can help rewrite code in another language. I also think they can help identify architectural problems, although I explicitly do not think their architecture work is perfect.

I recount noticing backend failures and using Claude to set up tracing and produce a report for Cloudflare. This is my account of a particular experience, not a controlled comparison between a model and an engineering organization.

02

What a harness does

Using kitchens and interfaces, he explains how a model can request actions. He distinguishes a harness from a human-facing interface.

To explain harnesses, I begin with a simplified model: an LLM receives text and generates text. That text alone does not edit a file or run a command; something must interpret it and connect it to actions.

Human, interface, harness and model
슬라이드 1 / 4Human, interface, harness and modelTheo’s diagram separates the user-facing interface, the harness and the model.

My kitchen analogy is a skilled chef in an empty room. Even with a menu and the ability to describe a dish, the chef cannot cook without utensils and ingredients. A programmer facing a monitor without a keyboard has a similar interface problem.

A harness supplies a model with ways to request actions and receive context. It can interpret a supported tool-call format and arrange for a file read, an edit or a command, then return the result to the model.

I distinguish a human-facing interface from the harness underneath. In my terminology, a product such as Claude Code can bundle an interface and an agent harness; an SDK can expose the underlying agent capabilities to another application.

I argue that T3 Code is primarily an interface rather than a standalone harness, even though it affects how connected harnesses are used. That distinction matters when users switch providers and expect every setting to follow them.

03

Tools, data and T3 Code

He describes agents, built-in tools, external connections and T3 Code’s MCP broker.

Agent and tool plane
슬라이드 2 / 4Agent and tool planeThe expanded diagram shows his model of a harness exposing tools to an agent.

For this explanation, I call an agent the combination of a model and a harness that supplies tools, context and instructions. Different harnesses expose different built-in capabilities, such as shell access, file editing or subagents.

Plugins can add capabilities such as finding a definition, while computer-use integrations can expose actions such as clicking or typing. Adding a tool does not make that tool itself the whole harness.

I draw a separate layer for access to external systems and data. My cookbook analogy is meant to distinguish that connection from a tool built directly into a particular harness, although both can ultimately give an agent useful actions.

For example, an MCP integration can give an agent a way to reach a database or analytics service. A custom tool may be implemented in a particular harness, while an agreed protocol can connect it to functionality hosted elsewhere.

External connections
슬라이드 3 / 4External connectionsThe diagram places MCP connections alongside the interface and harness.

I say T3 Code uses an MCP connection so its own code can broker actions without replacing the built-in tools of each harness. That design is intended to let a connected agent search history or request work through another connected system.

04

Learning a new layer

Theo uses his career and skateboarding to discuss expertise, habits and changing abstractions.

The layer engineers care about can reflect when they entered the field. When I started making videos, framework debates were prominent; later I became interested in infrastructure and then AI agents. That is a personal pattern, not a universal law.

I describe moving from backend work to frontend TypeScript and content about web development. A recent conversation with the creator of Claude Code surprised me because he knew my current AI work but not that earlier web-development background.

I enjoy learning a new abstraction even when that makes familiar expertise feel less central. I use skateboarding to explain why starting over in an unfamiliar stance can be rewarding rather than merely frustrating.

Imagine jumping a hurdle and then mentally swapping the legs. In skateboarding, I say, performing a trick in the opposite stance is a recognizable challenge to experienced skaters even when outsiders see the same movement.

I compare that to an experienced programmer writing in an unfamiliar language: the program may work, but habits from the first language can remain visible. Specialized expertise can be valuable, yet switching layers requires learning again.

Skateboarding taught me to enjoy the uncomfortable process of doing something differently. I worry that deep investment in one tool can make it harder to notice when another approach has become more useful.

I tell the story of adopting TypeScript without years of attachment to older JavaScript habits. My criticism of developers who stayed with those habits reflects my own experience and judgment, not proof that a particular tool determines someone’s career.

05

When harnesses become less visible

He discusses model loyalty, configuration differences and the interface work required to bridge harnesses.

Layers of engineering attention
슬라이드 4 / 4Layers of engineering attentionTheo illustrates his view that the details developers focus on shift as abstractions improve.

I make a provocative prediction about long-term attachment to editors and argue that similar loyalty can form around a single model family or harness. The point I want to make is that the best fit can change.

I had assumed a team deeply invested in a TypeScript abstraction would resist changing layers, but its creator’s remarks about no longer caring which harness was used challenged that assumption.

T3 Code users sometimes switch from one connected harness to another and expect skills configured in the first to appear automatically in the second. I say the apparent model selector is also selecting a harness, with its own configuration.

I compare T3 Code to a food court with several kitchens. Choosing a different kitchen does not automatically move every ingredient or recipe between them; the interface must deal with those differences.

My goal is to make switching feel more like changing a model or API option. I also expect models and their preferred harnesses to become more closely coupled, so the way an interface presents those combinations will continue to matter.

I previously spent substantial effort comparing ways to use different coding models. I now judge many of those differences to be small for my own workflow, while recognizing that other users and tasks can have different needs.

Making harness differences less visible is not necessarily easier for an interface builder: T3 Code still has to manage different subagent and tool behaviors. My argument is that users should not always have to manage that complexity themselves.

06

An agentic development environment

He names the kind of interface he wants to build and explains why he expects users’ attention to keep shifting.

I call T3 Code an agentic development environment: it presents work to a person and connects to harnesses, environments and remote machines. The analogy is an IDE, though the center of activity is managing agent work rather than editing every line directly.

I wanted an open, customizable interface for controlling my AI work, not to build another harness. I expect even these interfaces to become less prominent as people interact with agents in more places, but I care about making one useful now.

같은 채널의 다른 글

슬라이드 5장41:49EN
Theo - t3․gg· 2026년 10월 29일Theo Demonstrates T3 Code for Coordinating Coding AgentsTheo · t3.ggThe T3 Code creator walks through multiple agent providers, remote machines, thread organization and the tradeoffs of an open-source coding interface.Agent orchestration개발 워크플로와 테스트에이전트 엔지니어링+2
슬라이드 5장38:47EN
Theo - t3․gg· 2026년 10월 28일Theo’s Long-Running Agent Experiments: Verification, Compute and CostTheo Browne · Ping LabsA skateboard game and two compiler projects show how repeated checks and flexible compute can sustain agent work—and how expensive those loops can become.코딩 에이전트에이전트 엔지니어링AI cost & performance+2
슬라이드 5장36:07EN
Theo - t3․gg· 2026년 10월 27일Theo on Token Costs, Coding Agents, and the Price of AI CapabilityTheo Browne · Ping LabsA viral estimate of Lauren's AI spending prompts a closer look at cache pricing, benchmarks, and the changing work of coding agents.AI cost & performance코딩 에이전트Inference+1
슬라이드 5장30:37EN
Theo - t3․gg· 2026년 10월 26일Theo’s Three Skills for Reviewing and Shipping with Coding AgentsTheo Browne · Ping LabsHow sol-loop, full-send and full-stop encode review, verification and different levels of merge authority.Agent skills코딩 에이전트Code review & verification+2
슬라이드 2장0:43EN
Theo - t3․gg· 2026년 10월 23일Theo Distinguishes Security Vulnerabilities from Active AttacksTheo Browne · Ping LabsA short explanation of why disclosed software flaws and reported attacks are different kinds of security news.CybersecuritySoftware engineering
슬라이드 6장29:22EN
Theo - t3․gg· 2026년 10월 22일Theo on Security Vulnerabilities, Stolen API Keys and AITheo Browne · Ping LabsA look at the gap between vulnerability disclosure and patching, and a speculative account of why stolen inference keys may be valuable.CybersecurityAI securitySoftware engineering+1