Daniel Tenner on X: "https://t.co/a879faQpVD" / X<br>Post
Log inSign up
Post
Daniel Tenner
@swombat
Relationship Engineering: the fifth phase of building with AI<br>Building things with AI has gone through four major phases already. I believe the fifth one is around the corner. I saw the fourth one coming, so why not put my predictions in writing?<br>Let's see where the future takes us. But first, a quick review of the past and present.<br>A quick note: this is focused on software development, but I believe the same concepts apply to all knowledge work (because I have applied it to other fields, such as finance/tax work) and, eventually, all work.<br>Prompt Engineering<br>First, there was Prompt Engineering. In prompt engineering, the user was in charge of the project, the files, the concepts, everything. And they used some kind of very simple, very quick mini-harness to ask the agent questions.<br>In this phase, the work was not that different from before AI, just a bit more efficient. No more wading through 10 pages of google results to find an obscure incantation to solve some weird problem you were having. No more checking StackOverflow for how to solve some common problem you couldn't remember how you solved last time.<br>Just ask.<br>In this phase, the primary concept was... the question, and the primary actor was the human, as it had always been.<br>But then people realised, instead of asking a short question like "How do I center a ?", they could include a bunch of relevant data (like code, or documents, or whatever) and therefore improve the quality of the outputs, making them more relevant, etc. Eventually, people started including a LOT of context - maybe an entire codebase, if it fit within the context window.<br>So then the focus, rather than the prompt, became the context.<br>Context Engineering<br>In the age of Context Engineering, the agent was passed a deliberately selected context (by Cursor - in its auto-complete incarnation - or by a tool like RepoPrompt), or all the context if the codebase was small enough, into the "prompt" (which was no longer just a "question"), and came back with much more relevant suggestions, very smart auto-complete, or a strategic solution to an architectural problem an app was encountering.<br>This was still very manual. The user (or the IDE) managed the selection of the context provided to the AI, and hopefully the AI response was relevant because it was given all that context to work from. With smart models like o1, if you gave it your whole codebase, it could very well give you some excellent suggestions for refactorings, which you might then dutifully tab-complete in Cursor.<br>In this paradigm, the primary concept was the context, and the primary actor is still the human.<br>But if there's one thing software engineers absolutely hate, it's doing work that a computer could do for them. That's why most of us got into it in the first place: ultimate epic-level laziness, combined with the hubris to think we can automate anything, and the impatience not to wait for someone else to do it.<br>Why should I manually apply the changes and test them and all these boring mechanical junior engineer tasks, when I can get the computer to do it?<br>And so, the natural evolution of context engineering went towards agentic engineering.<br>Agentic Engineering<br>In March 2025, I discovered Windsurf's Cascade mode. I was so excited I made a loom video for my friends, showing them how I could get Windsurf to just go and make a bunch of aesthetic changes to a page and test them itself, while I sat and watched and offered minor guidance. Key quotes: "This is just amazing. I can hardly believe it." and "I feel like a kid at Christmas." and "This is just changing my life completely. Wow."<br>Soon after, I predicted that the software engineering profession would be obsolete by the end of the year, and I was mostly right: most of the professional software engineers I know today don't write code anymore, even though that was a central part of their job for decades. Some don't even read it, or only very rarely.<br>In Agentic Engineering, the AI model has some kind of more capable harness that allows it to take multiple steps in sequence, to make changes to the codebase, and to use tools, browsers, etc, to both make more changes, or test its changes.<br>For the first time, the human is no longer the primary actor: the agent is. The primary concept becomes the task. The human asks the agent "go and center that " or "add a Stripe checkout" or "make this page look better" and the agent uses tools and access to files and so on, to do the task.<br>Ultimately the human is still responsible for reviewing the output, approving it, guiding the model. In the early incarnations of this, such as with Cascade or, soon after, Claude Code running Sonnet 3.5 (also known as ADHD chipmunk Claude Code), this was very laborious for all but the most basic tasks. The agents could do things like reformat HTML to make it look nicer, or maybe sometimes write automated tests,...