> Building Two Websites With AI Coding Agents
AI-assisted: drafted with Claude, edited by me.
I now look after two websites: lajustenuance.fr and the one you're reading. And I've built both without really "writing" much code myself. For a guy who calls himself a software developer, that's a slightly awkward thing to say out loud. So here's what my job turned out to be instead.
## Starting with Jules
lajustenuance.fr is Florence's site. Its repository, la-juste-nuance-site, started on 16 July 2026. I'm a back-end dev, so I was spending more time than I should have helping her with front-end work, and I often didn't know what I was doing without asking Gemini for help.
I found Google Jules, ironically, by asking Claude how to get more out of my Gemini subscription. Florence would send me changes she wanted, I'd copy and paste them into chat windows and debug in Antigravity, and I slowly noticed that I was doing nothing but copying and pasting. So I started pasting her requests, one by one, straight into Jules and code-reviewing everything it sent back. It worked well because Florence's requests were detailed and unambiguous. Jules moved me from busy-bee AI-assisted web dev to code reviewer.
As of 16 October 2026, the history has 41 commits by google-labs-jules[bot] (just one commit short of the answer to everything!), and then there are the ones from Florence and me.
## Moving to Claude Code
I kept hearing from friends, colleagues and blogs that I should be using Claude, so I tried Claude Code. I got it working on the project on 5 October 2026. The commit is called, with great imagination, "Get Claude Code working on this project". By now the history has 22 commits by Claude next to Jules's 41.
Admittedly, it does things more naturally. It has a bit more autonomy, it asks the right questions and it listens well to adjustments. So far, Claude "feels" more powerful for getting done what I need to get done, and it's slightly less fastidious.
The same day, a file called CLAUDE.md started to grow. It's a plain markdown file at the root of the repo that the agent reads at the start of every session. Think of it as the team handbook. That same day it picked up a "Working on an issue" section, an instruction to open the pull request without being asked, and a rule that branches and PRs are named after what they change.
## The loop: prepare, implement, present, deliver
I wanted a simple process for tracking issues and submitting pull requests, based on what I'd gotten used to with Jules. The handbook describes it, and it's the same loop on both sites now:
- Prepare. I set up a /tasker skill that helps me define and elaborate what needs doing. It files GitHub issues, each with a status (proposed), a priority from P1 to P3 and a size from S to L.
- Approve. I review the issues from /tasker. Only I add the ready label. That's the one gate I keep for myself.
- Implement. When an issue is ready, I start a new task with "Work on issue #X". That worker session takes exactly that one issue, on its own branch, and runs the project's checks.
- Present and deliver. The worker opens the pull request itself. I look at it, and I merge it.
blackstrype.com copied this workflow on 16 October 2026 (PR #14), with an only slightly adapted CLAUDE.md. The typing animation on the front page shipped through it (PR #16). And yes, this post is a ticket that went through the same loop: issue #22.
## Previews on every PR
The part of the loop I like most is the "present" step. On this site, Cloudflare Pages builds every branch except main and posts a preview link on the pull request (PR #17). I don't have to pull a branch and run it locally to see what the agent did: I just click a link. Very cool. Production stays on GitHub Pages, and the Cloudflare project does previews only.
## Letting Florence drive
I even got to the next step: letting Florence make her own changes. She's by no means a developer, but empowered with Copilot and Claude she can move forward without asking me. Now and then she runs into a technical problem or makes a breaking commit, and I step in and correct it. The process is proving valuable in getting her website up and running.
## The fun part, and what still needs a human
The most fun part is the non-blocking progress. Small, repetitive tasks melt away as I evolve the way I interact with the agents. The in-depth research that parts of the site need, like the new territory of SEO, goes faster too. AI has truly let me deliver value quickly and effectively.
But three things still need a human, as far as I can tell so far: taste, facts and approval.
Taste. An agent will happily deliver something that works and still looks a bit off, and the preview link is where I notice. Facts. My CLAUDE.md tells the workers not to invent prices, clients, certifications, testimonials, dates or contact details, and to leave a clear TODO instead. Approval. Nothing gets built until I add that ready label, and nothing gets merged until I press the button.
I'm enjoying myself.
## Want to try this on your own project?
If you'd like to talk about setting up something like this for your own site or team, get in touch.