Angel Espinoza

Built by an agent, not an agent

This summer, Campbell Yule wrote a piece in AEC Magazine called The word "agent" is doing too much work. His point, as I read it: a lot of what gets called an agent is an ordinary tool with a chat box in front of it. One line of his has stuck with me since: "A prompt that produces a good output once is a demo."

So which is mine? Fair question, since this whole site is a catalog of things I built with AI.

Where the agent actually is

The agent is on my side of the desk. When I build a Civil 3D tool, I describe what I want to a coding agent in a terminal. It reads the project, writes the code, runs the build, reads its own errors, and tries again. That loop, choosing its own next step until the build passes, is what makes it an agent.

Then I load the result into Civil 3D, and there is no agent anywhere in it.

Take the Traffic Signal Pole Placement tool. It places complete pole assemblies at an intersection and computes the loading case for each one. Run it twice on the same intersection and you get the same answer twice. Nothing in it asks a model anything. It is plain code, and when a pole lands somewhere odd, I can read exactly why.

Why that is the point

A few of my tools do call a model while they run, and I have written about one of them. Most do not, and for work that ends up on a drawing, I would not want them to.

Yule names the risk well: "Re-skinning it as an agent invites the user to treat it as a black box." A black box is the one thing I cannot hand you with a straight face. How I know it is right only works because the tool behaves the same way every time I check it. If the answer could change between my test and your drawing, the test told us nothing.

So the agent does the part that is allowed to be messy: the trying, the failing, and the trying again. What comes out the other end is the part that is not allowed to be messy. A command that does one thing, the same way, every time.

What does that mean for you? When someone shows you an agent, ask where the agent is. In the building of the thing, or in the running of it? Both can be useful. They are not the same promise.

Be Better - Know where the agent is.