Skip to main content

Working with agents

Everyone says they use AI now, so the claim has stopped carrying information. This is the specific version: what I actually run, on what, and where I stop it.

What you are actually buying

Not an AI product. I am a .NET, React, Azure and AWS engineer, and the work is the same work: legacy systems made safe to change. Agents are how the mechanical half of that gets done — the migration passes, the test scaffolding, the review sweeps, the documentation nobody writes.

The difference between that and a contractor who has Copilot switched on is not the tool. It is that the loop is engineered: what an agent is given, where it must stop and ask, and how its output gets verified before anyone trusts it. Prompt engineering is the part everyone learned. Loop engineering is the part that decides whether the output survives review.

The loop

  1. 1Context

    An agent is only as good as what it is given. A skill file encodes the conventions of one codebase — how it names things, how it layers, which patterns are already decided — so a pattern is written down once instead of re-explained every sprint, to every agent, by whoever happens to be reviewing.

  2. 2Scope

    Each agent does one kind of pass: a migration, test scaffolding, a review sweep, documentation. Narrow scope is what makes output reviewable. An agent asked to "improve the codebase" produces a diff nobody can hold in their head, and a diff nobody can hold in their head gets approved without being read.

  3. 3Stop

    The engineering is in deciding where the loop stops and asks. A migration boundary, a schema change, anything touching auth or money — those are checkpoints, not steps. An agent that never stops is not autonomous; it is unsupervised.

  4. 4Verify

    Agent-written code goes through the same review, the same CI, the same security gates as anything typed by hand. Not a lighter process because a machine wrote it — if anything a closer read, because the failure modes are different and plausible-looking wrong code is the characteristic one.

When, and on what

Dates matter here, because almost anyone can claim this and very few can date it.

  • SaffireLate 2024

    Introduced AI-assisted development to the team with GitHub Copilot and ChatGPT, for review support, test generation and migration boilerplate during a .NET 8 and React rebuild.

  • MOGEL2025

    Adopted Claude Code during its research preview, on a production .NET codebase. Agent-assisted migration passes and test scaffolding, held to the same review and security gates as hand-written code.

  • IndependentJun 2025 onward

    Claude Code as the primary development environment. Custom skills encoding each project’s conventions, and purpose-built agents for migration passes, test scaffolding, review and documentation.

What you keep

The skills and agents built for your codebase are yours, and they stay in your repository. The point is a team that can keep running the loop after the engagement ends, not a dependency on the person who set it up. If the handover leaves you needing me, I have done it wrong.

Want to see how this would apply to your codebase?

Tell me what you have and what it is costing you. I will say where an agent would help, where it would not, and whether I am the right person for it.