← Table of Contents · Page 625 of 868
CODING AGENT HARNESSES
Part 2 of 10
TERMINAL-BASED AND EDITOR-BASED CODING AGENTS
Coding agents usually reach developers in one of two forms.
A terminal-based agent works through a command-line interface.
A terminal is a window where you type text commands to the computer instead of clicking buttons, and a command-line interface is that text-based way of controlling a program.
A terminal-based agent can read and write files and run shell commands directly, such as starting the project's tests.
The shell is the program that interprets the commands you type.
An editor-based agent lives inside the code editor a developer already uses, which is the application where programmers write and read code.
It often suggests changes inline, shows them as highlighted differences, and lets the developer accept or reject each one.
There are also hybrids, and agents that run in the cloud on their own copy of a project and return a finished proposal for review.
Each form has trade-offs.
A terminal-based agent has wide reach, because shell commands can do almost anything, which also means more risk and a greater need for the permission rules of Chapter 37.
An editor-based agent keeps the human close to each change, which makes review easier, but it may have narrower abilities.
A cloud-based agent can work while the developer does something else, but it needs a safe environment, as discussed in Part Nine, and a careful hand-off for review.
Whichever form is used, the harness has the same jobs.
It must load the project instructions file from Chapter 50.
It must give the agent file tools and command tools, and set what each may touch.
It must manage context, since real codebases are far larger than any context window, which means the agent must search and read selectively, using the techniques of Part Five.
It must record everything for review, using the tracing of Part Seven.
Advertisement
Read Aloud:
0:00 / 0:00