Every week we build a fictional business a complete website in about an hour, only through the chat in DirectAdmin. This week no empty domain but a renovation: De Rugzak physiotherapy in Assen, two physiotherapists, with a site untouched since 2012. The model: Claude Opus, auto mode. The site is live at fysio.nieuwesite.nl and stays up.
What was there was authentically 2012: a fixed width of 780 pixels, tables and 76 font tags across five pages, a scrolling text bar, a visitor counter stuck at 3417, "optimised for Internet Explorer 8" on the home page and a footer reading "Last updated: 3 March 2014". On a phone you had to zoom in to read anything.
The rules are last week's: four requests typed in literally, nobody fixing anything in between. The timings come from the assistant's run log.
The numbers
| Task | Request | Time | Approvals |
|---|---|---|---|
| 1 | Inventory the content | 228 s | 0 |
| 2 | Rebuild the site | 609 s | 0 |
| 3 | Appointment page | 373 s | 0 |
| 4 | Check and make findable | 383 s | 0 |
Model: Claude Opus, auto mode. Total run: 1593 seconds, or 26 minutes and 33 seconds. The assistant never stopped to ask a question and no task got stuck.
The requests
1. "Look at the current website in this folder. It is a site from 2012 with tables and font tags. Make an overview of all the content we need to keep: treatments, prices, team, opening hours and contact details. Put that in the notes about the website." 228 seconds. All five pages read and the content copied over literally: the practice details, the opening hours, the five treatments with their full descriptions and the four prices with the reimbursement text around them.
Then something unexpected. The notes file already held a description of a renewed version of this site, with an appointment form and a green house style. That version did not exist on the server; it was a plan never carried out. The assistant reported it and set the notes equal to what was really there.
2. "Rebuild the site as a modern, mobile-friendly static website with the same pages and all the kept content. A calm look that fits a physiotherapy practice, no standard template. Put the old files aside in a folder oud-2012 outside the webroot." 609 seconds, the longest task of the day. All five pages redone: Home, Treatments, Prices, Our team, Contact. The addresses stayed the same, so old links and bookmarks still work.
The look: soft paper white, dark green, a warm terracotta accent, classic headings. A drawn logo in the shape of a small backpack, a drawing of the practice building and two portrait placeholders. The phone number sits at the top of every page and can be tapped to call.

Gone: the visitor counter, the Internet Explorer 8 line and the 2014 date. The scrolling text bar no longer moves, but the dry needling text it carried is kept as a quiet notice.
3. "Add an Appointment page with a form (name, phone, complaint, preferred day) that sends an email to the practice address and shows a confirmation. Make sure old addresses such as behandelingen.html keep working with a redirect." 373 seconds. A form that holds on to what you filled in when you miss a field and says which box is missing, a thank-you page and an invisible field that catches spam robots. "Appointment" sits in the menu, in the footer and as a button on the five other pages.
One choice the assistant made on its own: the description of the complaint is only emailed and not stored on the website, on the grounds that this is health information and should not stay on the server. On top of the redirects we asked for, addresses without the .html now work too.
4. "Check the site on mobile and desktop with a screenshot, see whether all links work, add proper page titles and descriptions for Google and measure the load time." 383 seconds. All 25 addresses checked: not one dead link. The titles and descriptions were already there and of the right length; what was missing was added, including a fixed web address per page and sharing data for links in WhatsApp or Facebook.
The whole site, page by page
All six pages as they are live now, as full-page screenshots. Scroll inside the window to see a whole page. The 2012 button shows the same page on the old site; Afspraak maken (book an appointment) did not exist back then. Switch to 2012 and mobile and you see why visitors had to zoom in.

What went wrong
Two things, and the assistant found them itself in task 4. On mobile the phone number at the top stuck to the right edge of the screen, and on Contact and Prices the text ran to the left edge. The cause was two lines in the stylesheet that pushed the side margin away. It removed them and verified with fresh screenshots.

So task 2 delivered a site with two visible mistakes on mobile. Without the checking task afterwards they would have stayed. The lesson: make "check the result on mobile and desktop" its own request at the end, not a clause in the build request.
The second point comes from task 1: the notes described a site that did not exist. Those notes travel along as context in every session, so a plan you write down and never carry out becomes a wrong starting point after a while.
And a third, flagged by the assistant itself at the end of task 3: the requests go to the address that was on the old site, and that domain cannot receive mail. The form works, the requests arrive nowhere. It asked which address they should go to instead.
What we learned
- Keeping things is its own request. Task 1 changed nothing, it only took inventory. Those 228 seconds were well spent: all texts, prices and opening hours were locked down before anything was torn out.
- Renaming nothing saves work. Because the addresses stayed the same, the existing pages needed no redirects.
Claude or Codex?
This episode ran on Claude Opus in auto mode, against Codex on GPT-6-Astra in episode 1. The difference that stands out is not speed but initiative: Opus decided on its own not to store health information, corrected a text that did not match the rest and repaired notes that were wrong. None of those three was in a request.
Next week a third business. Want to try this yourself? Connect Claude or Codex in Invoker Link with your own subscription; the plans are at web hosting.