Recently I’ve been reading a lot of articles and posts with claims about what an AI can or cannot do when developing a digital product (website, web application, mobile app, etc.) in full. I feel like there are a lot of misconceptions about its capabilities in development, which is where my experience lies. That experience tells me that much of what I’m reading isn’t the final word it pretends to be.

The short answer, up front: yes — an AI can take a complex spec and build a good product from it. Just not by handing it the doc and walking away. It works when you wrap the right process around it, the same way it works with people. The rest of this is why, and how I do it.

The most common reasons usually quoted around LinkedIn usually point to:

  • AI making outright mistakes.
  • AI producing functional code but making wrong decisions about the architecture.
  • AI producing spaghetti / unmaintainable code.
  • AI making wrong decisions about the product features themselves.

The accompanying argument is usually that, for an AI to make no mistakes, you’d have to be so specific that you’re essentially just writing the code yourself. That can be true in some cases but it starts to sound a lot like the waterfall-versus-agile debate we already had more than twenty years ago.

“A complex spec” isn’t one thing

Saying “AI can’t handle a complex spec doc” as a blanket statement is pretty loose, too. The range of spec docs out there is enormous: greenfield vs brownfield, web vs mobile, etc. Think how different it is for an engineer to add a new feature to an AWS product versus standing up a new WordPress site for Harvard — both are wildly complex, and they demand wildly different processes. Are you saying there’s no way AI can handle either, or anything in between? Doubtful.

Neither can a human, without a process

You also can’t hand a complex spec to a single engineer and expect them to know exactly what to do with it. They’ll know what to build, but two things are true:

  1. They’ll also make mistakes (in some cases more catastrophic than what an AI might make).
  2. It’s not reasonable to give someone a goal with no sense of the context it’s created in and the constraints associated with it.

Is this for personal use or a commercial product? Does the spec account for how we’ll service the application once in production? What metrics should it track? What SLAs to provide? What reviews should it undergo? What standards should it meet? Should this be phased out in a particular way? Is there something to be built first to prove the concept?

Specifying the product is not enough to actually build it the way the client (or, in this case, the user of the AI) needs it built and completed. So when someone says an AI can’t take a complex spec and produce a good product, the first thing that comes to mind is: neither can a human, unless you give them a process that fits the context and constraints. You can give an engineer a great spec and they might make all the right technical decisions, but building a digital product entails much more than engineering decisions.

How I build products mostly run by AI agents

I have a process that I don’t think is necessarily the final word on how to do it, but it works for me. And it works because my experience in agency work, at AWS, and building digital products — most recently AgentPost, an email API for AI agents I built largely this way — has led me to embrace this kind of process. It’s a process I know and feel comfortable managing.

When I have a digital product that will be built mostly by teams of AI agents, I lay out the process the same way I would for a development team: one that includes designers, product experts, and different specialized engineers — the latter don’t just develop but also do code reviews, QA, write tests, and update documentation. Sometimes there’s even a small marketing team helping make decisions. But it all flows through a pipeline.

One thing I’ve observed is that AI agents benefit from using process tracking tools (think Asana or Trello) in the same way human teams do. When you have a defined set of steps for the team to follow, it helps them enormously. The process becomes easier to follow because the gates that enforce the steps are clear and visible. Neither agents nor humans need to have them present in their minds/context at all times, nor can they ignore them. I personally use Asana or an internal tool called Substrate (more on it hopefully soon).

I structure several boards for different parts of the process: a board to turn idea into product specs, an analysis board for turning specs into technical build plans, a board for development, a board for bug tracking, etc. The analysis board for example works as follows:

  1. Grab the product spec.
  2. Plan which phases we’re going to split this into.
  3. Write a phase plan for each phase.
  4. Move the human-approved phase plan to the development board.

Phases as sprints

These phases can be thought of as sprints. And even though a sprint with AI agents might last a day or two at most, you still run them as sprints, because at the end of each one you need to check:

  • What was done.
  • Whether the product and codebase is still stable.
  • Whether the assumptions (product and technical) you made still hold.
  • Whether anything that wasn’t thought through popped up.
  • … and so much more.

These checkpoints need to be there. Sprints aren’t just about planning a week or two of work because humans need to think in finite lapses of time. They’re also there to create a feedback loop where we adjust not just the product, but the process that is being used to build it.

The takeaway, TL;DR

So, can an AI handle a complex spec? Not if you just hand it the spec and expect it to build everything from scratch with no errors. But if you have a good-enough process—and the right tools to enforce it, you can give an AI a complex spec and have it follow a process that yields a good result. You just need to be specific about that process, and you need to know what kind of process works. In a lot of ways, the process that works with people works with AI agents. In a lot of ways, it doesn’t… but that’s a conversation for another time.

Get new pieces by email

Occasional notes on AI-first web architecture and Agent based web development. No fluff, unsubscribe anytime.