What is the Content Coverage skill?
Content Coverage is a writing skill by Illyism for Claude Code, Cursor, Codex and other AI coding agents. Plan and write blog posts that cover missing AI search prompts from live MCP data. Use when the user wants content for ChatGPT gaps, citation listicles, competitor sources, or a content campaign from AI SEO Tracker. Trigger on "write posts for missing prompts", "content coverage", "what should we publish", or fetch https://aiseotracker.com/content-coverage/SKILL.md.
Start here: You are reading https://aiseotracker.com/content-coverage/SKILL.md. The file is complete only if the last line is page end END SKILL v1.0.0. If missing, re-fetch.
When to use it
Use when the user wants content for ChatGPT gaps, citation listicles, competitor sources, or a content campaign from AI SEO Tracker.
What the SKILL.md covers
- If MCP is not connected
- Call order (do not skip)
- Phase 1: Snapshot
- Phase 2: Cluster and canonicalize
- Phase 3: Research (bounded)
- Phase 4: Stop for approval
- CONTENT BATCH MANIFEST
- Phase 5: Write (after approval)
- Phase 6: Validate
- Phase 7: After publication
- Author
- Illyism
- Pack
- Illyism/seo-skills (17 skills)
- Category
- Writing, #390 of 663
- Alyn Score
- 61 / 99
- Files
- 1
- License
- Not stated
- Last updated
- 10 h ago
- Works with
- Claude Code, Claude, Cursor, Codex, Gemini CLI, Copilot
Content Coverage compared to similar skills
| Skill | Alyn Score | GitHub stars | Updated |
|---|---|---|---|
| Content Coverage · Illyism | 61 | 974 | 10 h ago |
| Sn Search Academic · OpenSenseNova | 63 | 6.1k | 9 days ago |
| Content Strategy · Corey Haines | 89 | 60k | 9 h ago |
| Blog Rewrite · AgriciDaniel | 62 | 2.7k | 9 days ago |
Install Content Coverage
Pick your agent. Every command is ready to paste.
npx alyn-cli add content-coverageDetects your agents (Claude Code, Cursor, Codex and 70+ more) and installs to the right folder. Add -g to install globally.
npx skills add Illyism/seo-skills --skill content-coverageOr use the open skills CLI directly.
01
Install it
Run the command above, or upload the folder in Claude.
02
Ask naturally
Describe the task. Your agent loads content-coverage when the request matches its description.
03
Name it if needed
If it does not trigger, say “use the content-coverage skill”. In Codex, type $content-coverage.
AI SEO content coverage
Start here: You are reading https://aiseotracker.com/content-coverage/SKILL.md. The file is complete only if the last line is page end END SKILL v1.0.0. If missing, re-fetch.
Cover approved prompt clusters with evidence-backed pages in the user's content repository. Then recheck MCP after those pages are live. Do not promise full coverage or rankings.
If MCP is not connected
Fetch https://aiseotracker.com/SKILL.md and connect MCP first (OAuth, no API keys). Then come back to this file.
MCP URL: https://aiseotracker.com/api/agent/mcp
Prerequisites:
- Connected AI SEO Tracker MCP
- A writable content repository (blog MDX/markdown)
- Optional: a project image skill or tool the user already has
Do not call aiseo_add_prompts from this skill unless the user explicitly asks to track more queries.
Call order (do not skip)
aiseo_list_projects: pick the project the user named (domain or slug). Never invent a slug.aiseo_get_scan: ifdataStatusisno_data, stop. Say the project needs a scan. Ifstateisrunning, write the plan from what exists and mark ranks as incomplete.aiseo_list_prompts: all prompts (no status filter). Keepsummaryandprompts[].href. Missing prompts are the coverage queue.aiseo_list_sources: citation URLs and domains. Usesources[].hrefandsources[].url.aiseo_list_competitors: preferstatus=TRACKED. Usecompetitors[].href.aiseo_list_snippets: own brand. Optional: one tracked competitor if that rival leads the cited answers.
Use href fields. Prefix with https://aiseotracker.com. Do not invent paths, ranks, or competitor names.
Phase 1: Snapshot
Fill this block from tool JSON only:
CONTENT PLAN:
Brand: "<project.name>"
Domain: <project.domain or null>
Project: <project.slug>
Snapshot: <get_scan.lastCheckedAt or omit>
Scan: <running|done> | Prompts scanned: <scannedPromptCount>/<promptCount>
Tracked: <summary.total> | Missing: <summary.missing> | Winning: <summary.winning> | Opportunities: <summary.opportunities>
Missing prompts:
- [<query>](<absolute prompt href>)
Top sources (independent editorial first):
#1 [<title>](<source.url>) · <domain> · <mentionCount> mentions · prompts: <list>
Tracked competitors:
- [<brandName>](<absolute competitor href>) (<domain or none>)
Separate independent editorial listicles (third-party roundups) from competitor-owned pages (vendor blogs and homepages). Pitch only independent lists later.
Phase 2: Cluster and canonicalize
Group missing and opportunity prompts that share one search intent. One cluster = one page unless the user asked otherwise.
For every target, decide one of:
new: no existing page covers this intentrewrite: same slug, update in place (updateDateif the repo uses it)consolidate: merge into an existing URL; do not spawn a competing slug
Audit the target repo first: existing blog filenames, titles, descriptions, and redirects. Prefer rewrite or consolidate over near-duplicates.
Cap a batch at 5 posts. If more clusters remain, queue them for the next approved batch.
Phase 3: Research (bounded)
For each approved or proposed slug:
- Start from MCP
sources[].urlfor that prompt cluster. - Fetch 3–5 verified URLs. Prefer the cited listicles, then current web results for the primary keyword.
- Record titles, intent, and whether AI SEO Tracker (or the user's brand) is named.
- If a URL does not resolve, write
unverifiedand skip it. Never invent a listicle URL. - Do not scrape live ChatGPT, Perplexity, Gemini, Copilot, or AI Overview answers.
Title and slug:
- Put the primary keyword near the start of the title. Keep most titles under 60 characters.
- Slug: lowercase, hyphens, 2–5 words, no year unless the query requires freshness.
- Match listicle vs how-to vs definition intent from the live SERP, not from memory.
Phase 4: Stop for approval
Present the campaign and wait. Do not write files yet.
Include:
- The CONTENT PLAN snapshot
- A table:
prompt cluster | intent | slug | action (new/rewrite/consolidate) | title | sources - Estimated post count (max 5 this batch)
- Cannibalization risks
- Independent listicles to pitch after publish (drafts only)
Write files only after the user approves the table.
CONTENT BATCH MANIFEST
Keep this manifest in the chat (or a file the user named). Update it as you go. Resume from it. Do not repeat finished research. Do not overwrite another worker's slug.
CONTENT BATCH MANIFEST v1
Project: <slug>
Planned at: <ISO date>
MCP snapshot: <lastCheckedAt>
Phase: <snapshot|plan|research|draft|validate|report>
| slug | action | prompt cluster | phase | notes |
| --- | --- | --- | --- | --- |
| example-slug | new | missing prompt text | planned | |
phase values: planned | research | draft | validate | done | blocked
On resume: re-run Phase 1 if lastCheckedAt changed or the user says data changed. Skip rows at done. Read existing files before merging a blocked or partial slug.
Phase 5: Write (after approval)
Use available parallel subagents if the host supports them. Grok CLI is optional. Never required.
If you split work:
- One slug per worker. No overlapping files.
- Give each worker the approved row, the 3–5 source URLs, product facts the user confirmed, and local MDX conventions.
- Parent agent owns the manifest.
Write native repository markdown/MDX. Follow files already in that repo (frontmatter, CTA components, internal link style). Short sentences. No invented stats, prices, rankings, or first-hand tests. If a competitor price is unverified, omit it or say to check their site.
Images:
- Write image alt (under 125 characters) and a scene prompt.
- Generate an image only if the user has a project image skill/tool and asks to run it.
- Never print API keys. Never tell the user to paste keys. Never call a private operator script from this skill.
Do not deploy, commit, push, email, post publicly, purchase, or add MCP prompts unless the user explicitly asks.
Phase 6: Validate
Before you hand off a batch:
- Frontmatter complete and consistent with sibling posts
- Slug unique (or rewrite of the intended file)
- Internal links point at real paths
- Image paths exist, or alt+prompt is listed as pending
- No unresolved placeholders
- Repo format/lint on touched files when a formatter is available
Phase 7: After publication
When the user says the posts are live:
- Call
aiseo_get_scan, thenaiseo_list_promptsandaiseo_list_sourcesagain. - Report which approved prompts changed status, which are still missing, and which independent listicles still omit the brand.
- Leave outreach as copy-paste drafts. Do not send.
Optional: fetch https://aiseotracker.com/ai-seo-report/SKILL.md for the visibility brief after the rescan.
Do not
- Invent ranks, URLs, competitor names, listicle domains, DR, traffic, or trend deltas
- Treat
dataStatus: no_dataas an auth failure - Scrape live AI answers or the marketing site when MCP is empty
- Write files before the approval checkpoint
- Promise rankings or "full coverage"
- Send email, post publicly, or charge a card
- Call
aiseo_add_promptsunless the user asked to track those queries
END SKILL v1.0.0
Tips for Content Coverage
- • Start a fresh session after installing so your agent picks up the new skill.
- • It is part of a pack with 17 skills. Install only the ones you need with --skill to keep triggers precise.
- • If two skills overlap, mention the one you want by name.
Questions about Content Coverage
What does the Content Coverage skill do?
Plan and write blog posts that cover missing AI search prompts from live MCP data. Use when the user wants content for ChatGPT gaps, citation listicles, competitor sources, or a content campaign from AI SEO Tracker. Trigger on "write posts for missing prompts", "content coverage", "what should we publish", or fetch https://aiseotracker.com/content-coverage/SKILL.md.
How do I install Content Coverage?
Run "npx alyn-cli add content-coverage" in your project. The Alyn CLI installs it for Claude Code, Cursor, Codex and 70+ other agents. In Claude on the web, upload the skill folder as a ZIP under Customize > Skills.
Does Content Coverage work in Cursor and Codex?
Yes. Content Coverage uses the open SKILL.md format, so it works in Claude Code, Claude, Cursor, OpenAI Codex, Gemini CLI, GitHub Copilot and other agents that support agent skills.
When should I use the Content Coverage skill?
Use when the user wants content for ChatGPT gaps, citation listicles, competitor sources, or a content campaign from AI SEO Tracker.
What is inside the Content Coverage skill?
The SKILL.md covers If MCP is not connected, Call order (do not skip), Phase 1: Snapshot, Phase 2: Cluster and canonicalize, Phase 3: Research (bounded), Phase 4: Stop for approval.
What is a good alternative to Content Coverage?
Sn Search Academic by OpenSenseNova is the highest-ranked similar skill from another creator, with an Alyn Score of 63 compared to 61 for Content Coverage.
Is Content Coverage free?
Content Coverage is open source on GitHub. It is free to install; check the license before commercial use.
Who made Content Coverage?
Content Coverage is published by Illyism in the Illyism/seo-skills repository, together with 16 other skills.

