Back to all articles
Project Notes

I Hired an AI Team to Run My Affiliate Sites. Here's the Org Chart.

How I built a five-agent AI ops team — listener, analyst, maintenance, writer, SEO optimizer — that runs a five-site affiliate portfolio on a weekly schedule, and what the first live test run exposed.

Conor Gotzens
4 min read
Educational content only. Examples and performance figures are illustrative and not guarantees. Results depend on your business context, implementation quality, and market conditions.

I run five affiliate content sites in the Tested family — cat products, dog products, van builds, espresso gear, e-bikes. Two have real traffic history; three launched this week. That's five sites' worth of analytics to read, links to check, content to write, and titles to optimize, and exactly one of me.

So this week I built the team I couldn't hire: five AI agents on a weekly schedule, each with a written job description, bounded authority, and a Discord channel where they report like colleagues. This is the build story — including the part where the first live test run caught nine problems in my own design.

The org chart

Every agent is a scheduled Claude Code task that wakes up, reads its playbook, does its job, and posts to Discord:

  • The listener (Monday, 6:30 AM). A zero-dependency collector pulls the week's top Reddit and forum threads for all five niches — seventeen feeds, one JSONL file, every item tagged by site. The agent clusters them into content opportunities ranked by buyer intent: someone asking which fountain should I buy outranks a popular photo thread every time.
  • The analyst (Monday, 7:30 AM). Pulls Search Console and GA4 for every site into a permanent local warehouse, builds a week-over-week digest, then merges search data with the listener's findings into one prioritized worklist. Items get tagged by evidence: search data, community signal, or both — and both beats either.
  • Maintenance (Wednesday). Builds every site, sweeps for broken internal links, and audits every Amazon link for the right affiliate tag — a real risk when sites are cloned from a shared template. Trivial fixes ship automatically; anything editorial goes on the worklist.
  • The writer (Thursday). Takes the top worklist item, studies existing posts until its draft is indistinguishable in format and voice, researches with live sources, and stages the piece on a draft branch with a preview link. It cannot publish. I approve drafts from my phone.
  • The SEO optimizer (Friday). The one I'm most excited about, and the one with the strictest rules — it gets its own section.

The design decisions that matter

Playbooks live in git, not in prompts. Each scheduled task's prompt is three sentences pointing at a markdown playbook in the repo. Changing an agent's behavior is a documented file edit, not archaeology in a scheduler UI.

One registry, no assumptions. A single sites.json records every site's domain, analytics properties, repo path, deploy target, affiliate tag — and, after the test run, exactly where its git repo lives. Every script and every agent loops over it. When a site launches, it gets a registry entry and the whole team starts covering it.

Automation ends where trust is at stake. Fully automated publishing is how you end up with a hallucinated product claim on a site whose entire brand is honesty. The rule: agents auto-ship only what's trivially revertible and content-neutral — affiliate tag fixes, title tags, meta descriptions, internal links. Anything a reader would experience as the site's opinion waits on a draft branch for a human. My job shrank from doing the work to a ten-minute approval pass.

Optimization is an experiment, not a to-do list. The SEO agent's playbook forces the discipline humans skip: before making any new change, it grades every change from three weeks ago against the data warehouse — and reverts what regressed. Every edit is logged with its exact before, after, and baseline numbers. Five changes a week, one per page, nothing touched twice in 21 days. Without the revert loop, weekly title tweaking is just churn that makes attribution impossible.

The test run that earned its keep

Before trusting the Friday schedule, I ran the SEO agent live with fresh context — same playbook, no help — and asked it to flag anything ambiguous.

It did the job right: one surgical change (a missing meta description on a striking-distance page, position 8.8), built, deployed, verified live, logged. Better, it declined the title rewrite I'd half-expected because the existing title already matched the target query exactly — restraint I didn't explicitly program. It skipped an entire site because the repo had uncommitted human work in it, exactly per playbook.

Then it handed me nine findings, three of which were genuinely embarrassing:

  1. My grading spec was impossible — I'd pointed it at per-page daily history the warehouse doesn't keep. (Fixed: grading now compares dated snapshots.)
  2. My own seeded worklist violated my own routing rule, pointing the SEO agent at a page the writer had claimed.
  3. One of the five sites wasn't under version control at all. It launched, it's live, it earns — and there was no repo. Every "commit on a branch" instruction would have failed there silently-ish on a Friday morning while I slept.

That's the meta-lesson of the whole build: a fresh agent following your docs is the cheapest requirements audit you will ever run. It reads what you wrote, not what you meant.

Honest numbers, because that's the house rule

This is day one of the system, not a revenue story. The flagship site currently gets single-digit affiliate clicks per week; three sites have zero search history because they're days old. What I've automated is the compounding loop — listen, analyze, publish, optimize, measure, revert — across five properties at a weekly cadence one person couldn't sustain manually. Whether the portfolio grows into the projections is exactly what the Monday digests will show, and I'll write that post either way.

The transferable lesson: treat AI agents like a team, not like magic. Give them a single source of truth, written job descriptions, authority matched to reversibility, and a measurement loop with teeth. Then test them the way you'd onboard a contractor — watch the first job closely, and fix your docs when they trip on them.