~/Mozart docs

SEO Optimizer (2026-06-29)

Jun 29, 2026

tl;dr: We completed this week's blog archive

fixed automatically this run

flagged for your approval

These rewrite prose, so I left them for you. One click applies all of them (reversible, I snapshot every post first):

  • cannibalization — /blog/measure-ai-roi-for-your-agency-ignore-the-dashboard-theater, /blog/measure-ai-roi-agencies compete for "measure AI ROI for agencies". Keep /blog/measure-ai-roi-for-your-agency-ignore-the-dashboard-theater canonical; re-angle /blog/measure-ai-roi-agencies to a distinct sub-intent and link them to the canonical. Keep the older dashboard-theater post as the ROI hub. Narrow the 1d-old post to the specific failure mode (why 30% never hit the P&L) and link up to the hub rather than re-ranking the same query.
  • cannibalization — /blog/ai-workflows-vs-autonomous-agents-for-agencies, /blog/workflows-vs-roles compete for "AI workflows vs agents for agencies". Keep /blog/ai-workflows-vs-autonomous-agents-for-agencies canonical; re-angle /blog/workflows-vs-roles to a distinct sub-intent and link them to the canonical. Make the vs-agents post the canonical comparison. Refocus workflows-vs-roles on the narrower 'automate roles vs install workflows' angle and point it at the hub.
  • cannibalization — /blog/multi-agent-orchestration-how-agencies-ship-client-work-without-the-coordination, /blog/multi-agent-workflows compete for "multi-agent workflows for proposals". Keep /blog/multi-agent-orchestration-how-agencies-ship-client-work-without-the-coordination canonical; re-angle /blog/multi-agent-workflows to a distinct sub-intent and link them to the canonical. Keep orchestration as the primary multi-agent post. Differentiate multi-agent-workflows to own the specific proposal-writing use case ('one prompt can't write proposals') and link to the orchestration hub.

or tap the approve link in the Telegram message. Applies 3 item(s).

needs a repo change (I can't touch these from the worker)

  • site page / (fix in site/index.html): meta description 227 chars (want 110-165)
  • site page /tos (fix in site/tos/index.html): meta description 109 chars (want 110-165)
  • site page /privacy (fix in site/privacy/index.html): meta description 109 chars (want 110-165)
  • slug: /blog/3-real-ai-agent-examples-to-protect-agency-revenue-per-employee is long (63 chars). Needs a shorter slug + a 301 redirect (site/_redirects).
  • slug: /blog/multi-agent-orchestration-how-agencies-ship-client-work-without-the-coordination is long (80 chars). Needs a shorter slug + a 301 redirect (site/_redirects).
  • slug: /blog/how-agency-founders-build-a-pre-call-prep-workflow-to-reclaim-discovery-prep-tim is long (80 chars, looks truncated). Needs a shorter slug + a 301 redirect (site/_redirects).
  • static post: /blog/60-ways-ai-chief-of-staff/ is a repo file (site/blog/), not D1, so the optimizer cannot edit it. Add internal links to newer posts in its pillar + confirm canonical/schema by hand.
  • static post: /blog/ai-use-cases/ is a repo file (site/blog/), not D1, so the optimizer cannot edit it. Add internal links to newer posts in its pillar + confirm canonical/schema by hand.
  • static post: /blog/ai-sdr-vs-human-sdr/ is a repo file (site/blog/), not D1, so the optimizer cannot edit it. Add internal links to newer posts in its pillar + confirm canonical/schema by hand.
  • static post: /blog/claude-code-vs-claude-desktop/ is a repo file (site/blog/), not D1, so the optimizer cannot edit it. Add internal links to newer posts in its pillar + confirm canonical/schema by hand.
  • static post: /blog/solo-operator-two-terminals/ is a repo file (site/blog/), not D1, so the optimizer cannot edit it. Add internal links to newer posts in its pillar + confirm canonical/schema by hand.

hub-and-spoke map

AI workflows vs autonomous agents (how agencies should actually install AI)
hub: AI workflows vs autonomous agents: how agencies scale revenue without losing client trust
spokes: workflows-vs-roles, the-autonomous-business-trap, multi-agent-workflows, agentic-ai-trends, 60-ways-ai-chief-of-staff, ai-use-cases, claude-code-vs-claude-desktop, solo-operator-two-terminals

Multi-agent orchestration and the coordination tax in agency delivery
hub: Multi-Agent Orchestration: How Agencies Ship Client Work Without the Coordination Tax
spokes: ai-coordination-tax, future-b2b-agency-structure, ai-proposal-workflow, how-agency-founders-build-a-pre-call-prep-workflow-to-reclaim-discovery-prep-tim

Measuring AI ROI on the agency P&L and revenue per employee
hub: Measure AI ROI for Your Agency (Ignore the Dashboard Theater)
spokes: measure-ai-roi-agencies, 3-real-ai-agent-examples-to-protect-agency-revenue-per-employee, ai-sdr-vs-human-sdr

site SEO audit (whole site)

  • ℹ️ sitemap: sitemap.xml lists 24 URLs (5 site pages + 19 posts).
  • ℹ️ canonical: D1 posts use slashless /blog/<slug>; static posts use /blog/<slug>/. Confirm each canonical matches its own URL form.
  • ℹ️ images: 12 blog image(s) checked, all loading.
  • ℹ️ core-web-vitals: Core Web Vitals (LCP/CLS/INP) not measured in v1 — wire the PageSpeed Insights API to capture them.
  • 🟡 page: /: 1 issue(s).
  • ℹ️ page: /roadmap: clean.
  • ℹ️ page: /install: clean.
  • 🟡 page: /tos: 1 issue(s).
  • 🟡 page: /privacy: 1 issue(s).