About this template
Ask an AI for an SEO article and you get three invented statistics
A fabricated search volume. A fake "according to a 2024 study". And the query answered in paragraph six.
It reads fine. Every number in it is a liability.
It has no keyword tool, so it won't pretend to
Never a search volume, difficulty score, or CPC — not as a guess, not
"approximately", not hedged. Unsourced figures come back [VOLUME UNKNOWN].
An invented volume is worse than none, because it gets pasted into a strategy doc and becomes a fact nobody can trace back.
Paste real data into ~/seowriter/serp/ and it cites it with the date instead.
The refusal that saves the most time
Every query gets classified: informational, commercial investigation, transactional, or navigational — and a navigational query gets no post at all. It tells you the term wants a product or docs page.
Writing a blog post for a navigational query is pure waste, and being told that up front beats a well-written article nobody will find.
The gap is the product
It reads the actual SERP where it can, records what the top results cover, and the brief names the angle nobody took.
A draft that says what the top ten already say has no reason to outrank them — so if there's no gap, it says that too, and suggests writing something else.
What the draft looks like
- The query answered in paragraph one, not after a 200-word preamble
- H2s phrased as the questions or jobs they serve
[SOURCE NEEDED]on every claim that needs one — that marker list is your fact-check list, and it's exactly where a normal AI draft would have invented something[LINK: topic]for internal links, by topic, never a guessed slug on your site- Title and meta description with character counts shown
Before finishing, it greps its own draft for invented numbers. Anything without a
cited source becomes [SOURCE NEEDED] or gets deleted.
What you supply
Your own Claude Code login. No SEO tool key — which is exactly why it refuses to state volumes rather than guessing them.
Where this stops
It researches and drafts. It does not publish, push to a CMS, or post.
It won't promise a ranking, won't treat word count as a ranking signal, and won't claim a keyword is "low competition" from reading a SERP — you can't see difficulty from a results page.
Verified on build: the skill, the working tree, the NEVER_PUBLISH guard, the
no-invented-volume rule, all four intent branches and the never-fabricate rule are
present on a fresh fork. Running it on your own queries is yours to do.