Adventures in Agentic Software Development 🏔️
Dec 19, 2025 3:06 pm
Happy Friday!
The holidays are approaching, and that means we're all busy with, well, everything.
I know I am. I'm working hard on making a serious effort to get reko.day off the ground. In fact, I recently was at a conference for farmers and set up a booth to get farmers to sign up.
Now, I built and launched the app almost 2 years ago, but I didn't do much maintenance on it. Things were, well, not good.
So I decided to try out using AI (Claude specifically) to help me get the app in good order again. Those early experiences were frustrating, but all new things are, so I decided to make specialized agents for my software.
I scaled my frustration.
Having said that, I have found there is almost like an in-crowd that talks about agentic development like it's magic. In fact, most folks I talk to are confused about what agents are, how they work, and what they offer. So I want to expose what I know.
At its simplest form, when you work with AI, you can have an agent do the work or multiple agents do work. Think of it like delegation. Each agent has its own definition that you specify. In my case, I have an ios-developer agent. It is defined by a file that lists its responsibilities, boundaries, and other important information it needs. I also have a qa-consultant, firebase-architect, engineering-manager, and startup-cofounder agent. Again, these are all specified in files, almost like really long prompts.
So what can I do with this? Well, I can specify how agents work together, communicate, and what to ask me for. Here's an example. I tell the founder that I need to make sure we have the right documentation for the agents and myself, and I want it to be simple for now since it's just the agents and me. It proposes developing a set of markdown files. I agree and ask it to work with the agents to contribute to each file as necessary and then ensure each agent uses those files going forward.
Then my co-founder gets to work setting up some files, and delegating to agents who then build out various technical documentation, asking me about core product decisions, and then updating their own agent definitions to remember to look at and maintain these files.
For a more telling example, I tell my manager to get to work on the top roadmap item. It looks at it, begins to ask me clarifying questions, breaks the work down, delegates to the other development agents, ensures all quality gates pass, and double-checks with me before moving on to the next.
Why do this? Well, there's a technical reason. AI has what is called a context window. This is sort of like its memory or brain. As it works, it fills up with what it has learned and what it is doing. After it fills up it has to purge, and then it forgets the parts it purges. So if you've worked with AI and it seems to regress suddenly, you likely have seen this behavior. Agents each get their own context window, so when the ios-developer is working, their context is only the iOS code and can work longer before forgetting.
Agents are a way to keep AI focused longer.
Now, is this magic? No. I find the work AI does to be consistently sloppy. This is in spite of numerous reminders of instructions to follow TDD, how to run tests, etc. I've also found that Claude is not good at iOS development in general, and I've had to put many circuit breaker patterns in place because it will completely destroy the project.
So what does this give me, and why do I put up with it? One piece to this is that I need to keep up with what the cool kids are doing if I'm going to be relevant as a consultant. Two is something I've written about before related to AI. I believe that with good specifications (I'm favoring automated tests), AI can write garbage code, and it will be fine. Code is not important when it is cheap to recreate.
I know this was a long one, but if you have any questions, reply, and I'll get it.
Sincerely,
Ryan