Disclaimer: This post is a little nerdy and technical.
I build most everything now by coordinating with two AI agents.
Claude and Codex.
It still feels a little ridiculous to type that.
But that’s the job now. So here’s what it actually looks like, using a feature I shipped this week: a help center inside Crafd.
It starts with a brief.
I open Codex (Astra for design tasks) and empty my head into it. What the feature should do, where it should live, what to copy from. I’m not precious about it. Typos and all.
Here’s the actual prompt I used:
Can you please help me create a plan for support docs? Right now we have none and no help center or help link at all within the admin. I have [Linear link redacted] stubbed out for this project. My thoughts are:
1) A (?) icon in the top right corner of the app.
2) Which opens a docked right side bar with a search field at the top, and recent searches, then recommended links as a blank slate.
3) Do an audit of the entire app and make a list of every reasonable help doc question.
4) Build out content for each question. Use https://carrd.com/docs as a template for how to bucket things, as well as a template for how each doc should be structured (numbered lists) https://carrd.com/docs/sites/using-a-custom-domain.
5) In addition to help docs, we should return deep links to specific functionality and settings in the help search results.
6) There should be a toggle that allows you to switch the docked help sidebar to turn into a full-screen command prompt like UI. Once you toggle the UI, future clicks into help should show the latest UI selection.
7) Last, we’ll also need a contact support option that shows a support form.Can you please help mock up a single page HTML mockup of this new help center feature as if it’s built out within the existing web-app admin? Please use HTML, CSS, Vanilla JS (No fancy JS or react). Please save the mockup to my desktop. For now, we can just show a few dummy help docs. We’ll build out the rest later. Any questions before you start?
Codex asks a few questions. I answer them. Then it builds a single HTML page that looks like it’s already part of the app. No framework, no build step. Just something I can click around in.
Then I react to it.
This is the part that feels most like my actual job. I click through it, notice everything that’s off, and write it all down in one message.
Some feedback:
1) Drop: “The Crafd help center Let’s get you back to making. Find an answer. Jump to the right place.” Just start with the search bar at the top of the panel.
2) FOr the command palette design, let’s have a blurred transparent BG with a card in the middle like this: [Image #1] But it can be wider by default.
3) Can we animate the transition between the command palette and sidebar docked modes?
4) Don’t use all caps for anything (like “Recent searches”). Sentence case and bold is fine.
5) Let’s keep the keyboard shortcuts, but remove the key at the bottom.
6) Let’s hide the search bar when we go to the contact form. and remove Contact support A little stuck? We’re here.
7) Let’s remove the “What’s this about?” field, but add a “How did this make you feel?” field with 3-5 facial expression SVGs to choose from.
The image was a screenshot of a command palette I liked.

Here’s a link to that final prototype.
A couple rounds of that until I’m happy.
Then I hand it to Claude.
Claude and Codex don’t share a chat window, so they need a way to talk to each other.
They do that through a folder in the repo called /planning.
The main thing in there is a chat log. One markdown file. Claude writes an entry, then Codex writes an entry, each one stamped with the time and a verb like REVIEW or MERGE or ASK-DAVE. Nobody edits anyone else’s entry. Codex checks the file every couple of minutes. Claude watches it in the background.
Next to the log there’s a plan with checkboxes, a running list of every decision they made without me, and a list of ideas they want to come back to.
Claude is the lead. I only ever talk to Claude, and Claude relays to Codex.
Each agent works in its own copy of the repo. They open small pull requests and review each other’s work. Neither one is allowed to merge its own.
The whole system is a .gitignore’d folder of text files.
Here’s the prompt I sent Claude:
I worked with COdex to create a mockup of a new help center within web-app: /Users/davem/Desktop/Crafd Help Center.html. Here’s the prompt I used: [the same brief from above, pasted in again]
Can you please reset the chat in /planning and do the following:
- Make a list of deep links and settings we should add and add a Linear issue under [Linear link redacted] for it.
- Make a list of Help Docs we should create and make an issue with sub-issues for individual docs.
- Break the HTML prototype down into individual issues that you can Codex can work on together.
- Map out a plan for you and codex and let me know once that is all done and I’ll wake up Codex.
Claude reads the mockup, writes up the issues in Linear, maps out who does what, and posts the opening message in the chat log.
Then I wake up Codex. Codex reads the plan, agrees or pushes back, and they go.
After that, I mostly get out of the way.
They write the plan before the code, create Linear issues, open small pull requests, review each others work, and ping me when something needs a human. Whether to keep a button. What an email should say. When to push to production.
As work gets shipped, Linear issues get closed automatically.
Once complete, they do E2E testing via Chrome extensions and fix any issues that they find automatically.
For the help center, that ended up being 23 pull requests and 95 help docs. They started one afternoon. The last pull request merged this morning.
I wrote three prompts and answered a handful of questions. They built an entire fully functional feature in the style of my existing app.
I can’t help but feel like this pace at which progress can be made on projects feels ridiculous compared to even 6 months ago.
Leave a Reply