"AI-assisted" gets attached to everything right now, and it rarely means anything specific — it can mean "I asked a chatbot for a paragraph" or "an agent has been running unsupervised in production for a month." This entire blog network is genuinely AI-assisted, in a specific and describable way, so rather than talk about it abstractly, here's what that actually looked like on one real piece of work: getting the old after-dark Zola theme working again.
The setup
This site runs on Zola, a static site generator, using a theme called after-dark that hadn't been touched since before Zola shipped a major templating-engine upgrade (Tera v1 to v2). The old theme didn't just look outdated — it didn't build at all. Every page threw a hard error.
What the human decided
I decided the direction, not the syntax. Specifically:
- Whether to fix it or replace it. When the theme turned out to be broken by a breaking change upstream, the actual decision — patch the old theme, pin an older Zola version instead, or switch themes entirely — was mine to make. I chose to patch it, because I liked the look and didn't want to lock this project to an aging toolchain just to dodge a fix.
- How to vendor the theme. Plain files copied in, versus a git submodule pointing at a fork. I chose plain files, because I wanted the freedom to keep patching it without maintaining a fork.
- The publishing safety model. Draft privately, review before anything goes live, never trust a push straight to a live Pages branch. That policy is mine; everything built afterward had to fit inside it.
What the agent actually did
Once the direction was set, the mechanical work — the part that's genuinely tedious and where an agent earns its keep — was: read the exact error Zola threw, form a hypothesis about the cause, make one targeted change, rebuild, read the next error, repeat. That loop ran probably a dozen times before the theme built cleanly. A few of the fixes were subtle enough that they're worth naming, because "the AI just fixed it" undersells how specific this got:
- The templating engine removed macros entirely in favor of a new component system, with its own invocation syntax — every theme file that used the old syntax needed converting, one by one.
- A component's inline HTML output, if it contained even one blank line in the wrong place, would silently break how the page's markdown parser recognized it as HTML — producing garbled, escaped-looking output instead of a rendering error, which took actually comparing working and broken examples side by side to track down.
- A CSS rule meant to flag external links was firing on every internal link on the site, because the site generator produces fully-qualified URLs even for links to itself — not a templating bug at all, just an assumption in the old theme's CSS that no longer held.
None of those are things you'd get right by guessing once. They came from iterating against real error messages and real rendered output, which is exactly the kind of loop that benefits from patience and volume more than cleverness — a good fit for delegating to an agent, and a bad fit for burning an afternoon of a human's attention on trial and error.
The honest split
Roughly: direction, values, and anything with real consequences (what gets published, what data gets touched, what infrastructure changes) — human. Volume work that benefits from patient iteration against concrete feedback (build, read error, fix, repeat) — agent, with the human reviewing the actual diff before it ships. That's not a universal formula, but it's an honest description of how this particular project has actually gone, and probably a more useful data point than another abstract claim about what "AI- assisted" means.