93. Deep with Harnesses 2

Map the real harness landscape by kind, see what each kind owns and costs you, and choose deliberately between terminal, in-IDE, desktop and chat harnesses.

By Jacques Botte, founder of Toptronic®. Last updated 19 September 2026.

The lesson

The harness landscape changes quickly, so organise it by kind rather than by brand. Four kinds cover almost everything you will meet. Terminal or command-line harnesses run in a shell. In-IDE harnesses run inside an editor. Desktop and cloud harnesses run as their own applications, often on work that continues while you are elsewhere. Chat harnesses run as a conversation with no real grip on your project. Each kind owns a different slice of the work and charges you a different cost, and choosing the wrong kind wastes more time than choosing the wrong model ever will. Every product named here is a separate application that you install and run; none of it is a TPEE feature, and TPEE never connects to any of them.

Terminal coding harnesses own the project directory, the shell, and the loop. Claude Code, Codex CLI, Gemini CLI, Qwen Code, Kimi CLI, DeepSeek Harness, Aider, Goose, OpenCode, Amp, OpenHands, Cline CLI, GitHub Copilot CLI, Grok CLI, Droid, Cursor CLI, Trae Agent, Qoder CLI, MiniMax Code CLI (mcode), and Prime Intellect's Prime Agent all live in this family, some open source and some vendor-run. What they cost you is comfort: no inline visual diff, changes read back as text, and you need basic command-line fluency. Pick one when the work is repo-wide, scriptable, or on a remote machine you reach only through a shell.

Terminal harnesses also differ in how much they do for you. Aider is chat-driven and commits as it goes. Goose and OpenCode favour open, extensible tool sets. Amp and OpenHands push toward longer autonomous runs. Copilot CLI and Cursor CLI carry a vendor's existing agent into the terminal. The differences that matter day to day are the rules file each one reads, the permission ladder, and whether it keeps a resumable session on disk. Treat the names as a starting shortlist, not a ranking, because each one ships changes constantly.

In-IDE harnesses own the editor buffer, the diagnostics, and the review surface. Cursor, Windsurf, VS Code with Copilot agent mode, the Zed agent, the Cline, Roo Code and Kilo Code extensions, and JetBrains AI all sit inside the tool where you are already typing. Their strength is that every proposed edit appears as an inline diff you can read and accept in place, with the language server and test runner already wired up. Their cost is coupling: the agent is tied to that editor, the project index can go stale, and you usually pay a subscription. Pick this kind for interactive feature work where you want to watch and steer each change as it lands.

Desktop and cloud harnesses own a workspace of their own and the time to work in it. Claude Desktop, the Codex app, Warp, Devin, Google Jules, and Hermes Desktop all run as separate applications, and several execute the task away from your machine and report back later. Their strength is delegation: you hand over a well-specified task and do something else. Their cost is distance, because an asynchronous run gives you coarse steering and the work happens outside the folder you are watching. Pick this kind for parallel or background tasks, and for work you can specify precisely enough to leave alone.

Chat harnesses own the conversation and little else. Claude.ai, ChatGPT, MiniMax Agent, and the Gemini app can reason about code you paste in, draft plans, explain errors, and review a snippet, but they have no dependable grip on your repository. Their cost is that everything crosses the boundary by hand: you paste code in, and you paste the answer back out. That is exactly the kind of transfer TPEE is built to prepare, because the prompt, the context block, and the rules text are what make a pasted exchange worth having. Pick this kind for design discussion, explanation, and drafting, and not for a multi-file change you want applied for you.

Choosing between kinds comes down to a few questions. Where does the work actually live: one open file, a whole repository, or a remote machine? How closely must you watch it: every edit, or only the result? How much must run unattended, and how isolated must that run be? How much are you willing to pay, and does your team already standardise on an editor or a vendor? Answer those before you compare feature lists, and shortlist two candidates rather than one so you can try both on a throwaway task.

Two cautions keep this lesson honest. First, names, tiers, and feature sets move fast, so check the vendor's own documentation before you commit to anything, and never rely on a second-hand summary of what a tool can do. Second, none of these products is bundled with TPEE, and the app makes no attempt to detect, install, or call them. The Learning Center documents the landscape so that you can make an informed choice and prepare good material for it, nothing more.

Put together, the map is simple. If the work is repo-wide and scriptable, go to the terminal. If you want to watch each edit in place, stay in the editor. If you want to delegate and walk away, use a desktop or cloud harness. If you want to think, explain, or draft, a chat harness is enough. TPEE sits before all of them, strictly offline, turning a vague request into a structured prompt and a set of conventions that any of these kinds can consume once you copy them across yourself.

Check yourself

Question 1: Which kind of harness is the natural choice when you want to watch and steer each edit inside the file you are already working on?
  1. A chat harness with no filesystem access
  2. A desktop or cloud harness that runs tasks asynchronously
  3. An in-IDE agent harness with inline diff review — correct
  4. A command-line harness with no editor integration

Answer: An in-IDE agent harness with inline diff review

In-IDE harnesses put the proposed change in front of you as an inline diff, with the language server and test runner already available, which is what makes close steering practical.

Question 2: What is the main trade-off of choosing a terminal coding harness over an in-IDE one?
  1. You give up inline visual diff review and must read changes as text in the terminal — correct
  2. You lose the ability to call tools or run any shell command from inside the session
  3. You can no longer keep project rules in a file the harness loads at session start
  4. You must give up the ability to work across more than a single file in one task

Answer: You give up inline visual diff review and must read changes as text in the terminal

A terminal harness still has tools, rules files, and multi-file reach. What it does not give you is the inline diff and the editor review surface, so you read the changes as text.

Question 3: You read in this lesson that a certain coding harness supports project rules files. How should a TPEE user act on that?
  1. Tick the connect-to-harness option so TPEE can set the file up automatically
  2. Copy the prepared rules text out of TPEE and create the file in the harness themselves — correct
  3. Ask TPEE to install the harness and launch it from the Learning Center
  4. Wait for TPEE to add a built-in harness before using the pattern at all

Answer: Copy the prepared rules text out of TPEE and create the file in the harness themselves

TPEE is strictly offline and never touches the harness. You prepare the rules text in the editor, then copy it into the separate application and create the file there yourself.

← Previous lesson · All 94 lessons · Next lesson →

The full course — 94 lessons and 282 quiz questions — ships inside the app. Get TPEE to study it offline.