If you're still coding like it's 2022 (or even 2025) then you're likely bottlenecking your SDLC (Software Development Life Cycle).
So everytime we have a human in the loop of a change, we typically end up bottlenecking these agents.
Here's my hypothesis for how we speed up our SDLC such that we get the best of all worlds: make the code disposable and the context durable.
I think we first need to agree on what the bottleneck is in our agentic cycle.

For my agentic engineering loop, my cycle roughly comes out to:
So far I've found that agents typically can crush the code if you get the direction, plan, and guardrails right. Where us humans typically bottleneck is in the review - understanding what was done, why we did it, checking all the edge cases. The Direction + Plan are also a bottleneck but largely I see that as a necessary bottleneck - aligning on the What we want to build. For Review though I'm thinking the agents these days are probably good enough to do this for us (assuming you have a refined agentic code review process).
hamytodo - link my agentic code review skill post
That said, I don't think review happens in a silo nor do I think the outcomes review sets out to achieve is smth we want to get rid of. In code reviews we're trying to:
I think these are good things!
This is all still very important! I just think we're going about it inefficiently.
To get away from the need to read all the code (which humans are very slow at!) I think we need to reframe the source of truth of our system from the code to the context.
This may seem weird at first because for a long time we've considered the code to be the source of truth. It is what runs the system after all.
But now that we can generate code cheaply I think we should instead be focused on what the system should do rather than what it does today. And that's where the context comes in.
Another way to think about it is that you can take any given app and swap out all sorts of implementation details and it's still the same app.
And it kind of becomes a ship of Theseus idea - if we rebuild everything with other materials is it still the same ship? Well in the context of a product if the product gets the same outcomes then largely I think it is the same product. The code then is an implementation detail and the context / rules about how the product works is actually the source of truth.
By doing this we gain a lot:
The idea is to pull out the essence of the artifact (its DNA) and focus on that, allowing the other systems to generate from there (like the body).

What is durable context? The requisite context to rebuild that system from scratch.
Context I think is useful:
And sometimes some other things:
That's it. If we have this then I think for the most part we can get an 80% representation of what our system should do with much less text. At least 20% perhaps even 1-2%.
And each review / implementation / alignment meeting on this context has a 10x impact on the resulting system allowing humans to do the slow, deep thinking we're good at while keeping up with the agent's speed.
Humans align on the Durable Context then we spin up agents to generate the Disposable Code from it.
A useful system solves a problem so it must change as the problem and our understanding of it changes.
At a company there will be hundreds / thousands of changes going on all at the same time. So to update the system we need to update the context but we also need a way to manage concurrent and sometimes overlapping context updates.

To do this I think we use Change Context which are ephemeral project context we use to plan a change and then merge into the Durable Context as the system changes.

A Change looks very similar to our Durable Context:
At the end of a project / as we update the system, the Change Context is merged into the Durable Context and then deleted when no longer needed.
Now we're really trying to find a minimal representation of context to describe the entire system (kind of a minimum spanning tree). But obviously there's going to be edge cases and areas to tweak.
I think from here we get into the messy gray area where agents aren't quite good enough to build code / systems that perfectly "just work". At least not yet.
So for these cases we lean into our guardrails to help ratchet up the code quality so we still focus on the Durable Context of the system via guardrails but also can control lower level things like coding standards and review items to ensure the code quality is up to par.

Together this gives us a pretty good set of boundaries:
A deep dive into these areas is beyond the scope of this post but my current strategy for this is to shift left as much as possible towards fast, deterministic guardrails.
From fastest and most deterministic to least:
So that's how I'm currently thinking about moving faster with agents while staying connected to the system.
As always this is a process so we have to crawl then walk then run. My advice remains to start hands on, improve the context, and speed up as your agents gain trust by producing better work within your system.
Thank you to my Haminions members for supporting my work and making free posts like this possible. Members get access to dozens of example projects including a monthly snapshot of my full AI Dotfiles.
If you liked this post, you might also like: