WRITING / POST
Why I stopped treating AI as one general assistant
Three tracks off the Hammurabi album went up on YouTube over the past four days. No single agent handled a publication end to end. It was a collaborative effort between me, the track artwork agent (Dawn), and the track publishing agent (Mandy).
Dawn does artwork, and its brief stops at four images: the 16:9 track art, the thumbnail, an opening card and a closing card. It emails them to me and waits. Only after I approve all four does it render the MP4 and hand the package to Mandy. Mandy owns metadata, lyrics, playlists, private staging, verification and the publication record. Mandy can stage privately on its own authority. It can make a video public only after I approve the finished item.
So why two agents and not just one? Three reasons.
First, one agent loaded with the workflow and suitable skill sets could do the job, yes. But that creates one general purpose monolithic structure charged with the entire task. Any problems arising in the workflow are that much harder to isolate, and any changes needed take that much longer to implement. It's the same reason code isn't written as one long block.
This was borne out exactly with major issues I ran into with the way Dawn rendered the text in the images. A problem that took a whole day to fix, and required rethinking and rewriting its system prompt, specific skill files, and a restructured workflow.
Second, as it stands, the system prompt files for Dawn and Mandy run to about 5k of tokens each. A general agent would need a prompt file of at least those two combined. In addition, the skill inventory can be tuned to each agent specific to their task, further reducing their permanent context load.
And third, by optimising context, the agent has more headroom and is less likely to suffer task drift over long workflow runs.
None of that comes free. Splitting the work adds seams, and the seams are where this system has actually failed. The third track staged, verified and went public without trouble. What broke was the email telling me it had. The command Mandy used could not parse its own template, the handler ran out of tool iterations, and it left a copy in the Sent folder dated 1 January 1970 that had never been delivered. From the outside it looked sent. It was resent the next day and nothing was lost, but for a while the record said a message had gone out that had not.
I have no control comparison for this, the work is too fiddly to run a whole other control suite, but I have a lot of experience with complex, idiosyncratic systems. The argument from modularity is borrowed from network and systems design, which has been my working model for four decades, and it transfers. Still, agents are not functions, and a handoff between two of them costs something a function call does not.
So what I am confident transfers is not as broad as it sounds. When Dawn's text rendering broke, I knew it was Dawn. I could rewrite its system prompt, its skill files and its workflow without touching anything Mandy does, and Mandy kept publishing while I did. That is the whole claim. Not that two agents are smarter than one, but that when something breaks you want the smallest possible thing to fix.