answer-engine-optimize…
Optimize a brand's mapped content to get cited by AI answer engines — Google AI Overviews, ChatGPT, Perplexity, Gemini. Scores…
Write a full article draft from a semantic-SEO brief, following the micro-semantics writing rules and the brand's locked facts, then validate-and-repair it against the fabrication guard. Use whenever the user says "write the article", "draft from this brief", "turn this node
Claude Code
$ npx -y skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer --agent claude-code
Codex
$ npx skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer -a codex -y
Cursor
$ npx skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer -a cursor -y
Gemini CLI
$ npx skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer -a gemini-cli -y
GitHub Copilot
$ npx skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer -a github-copilot -y
OpenCode
$ npx skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer -a opencode -y
Windsurf
$ npx skills add siddiqss/semantic-seo-suite --skill semantic-draft-writer -a windsurf -y
name: semantic-draft-writer description: > Write a full article draft from a semantic-SEO brief, following the micro-semantics writing rules and the brand's locked facts, then validate-and-repair it against the fabrication guard. Use whenever the user says "write the article", "draft from this brief", "turn this node into content", or asks to produce the actual copy for a topical-map node. Always runs scripts/validate_draft.py and repairs violations before returning. Triggers on drafting/writing intent for mapped content.
Turn a brief into publishable copy that is deep, specific, extractive, and — the part other tools skip — factually honest. "Passes the validator" is the floor, not the goal: the goal is a piece genuinely worth reading. The draft is done when it is fabrication-clean AND clears the quality bar (or its remaining gaps are explicitly surfaced).
Read first: `../../framework/semantic-writing-rules.md` (especially the **Craft & depth rules 22–28**), `../../framework/macro-micro-semantics.md`. Load the brief, the node, `brands/<slug>/locked-facts.json`, and `entity-profile.json` (for voice/audience).
0. **Scope depth and surface fact gaps FIRST.** Before writing, list the concrete specifics a strong piece needs — real examples, named entities, figures, a point of view — and check them against `locked-facts.json` + the brief. If the piece can only be written generically because the facts aren't there, that is a signal to **ask the user for the missing specifics** (real customer result, actual feature names, a workflow detail) rather than writing vague filler. Thin facts are the #1 cause of thin drafts.
1. **Front-matter first.** Emit the required block (semantic-writing-rules.md): node_id, target_query, intent, entities_covered, internal_links, schema_type, locked_facts_used (start empty), sources (start empty).
2. **Draft for a reader, section by section along the brief's contextual vector.** Lead a section with the extractive answer (rules 3–4) THEN go deep: mechanism, a concrete example (rule 23), a trade-off, a real point of view (rule 26). Do not turn every H2 into a tiny Q&A (rule 27) — vary the shape. Declarative, specific, filler-free.
3. **Honour the locks while writing:**
its key to `locked_facts_used`.
range/"depends on…") — never invent one. Pull from the brief's `do_not_fabricate`.
4. **Insert internal links** from the brief with varied, descriptive anchors (internal-linking-rules.md).
5. **Editorial self-critique pass (before the gates).** Re-read the draft as a skeptical editor: Which section is thin? Where is there no example? What's the non-obvious point, and is it actually there? Cut every filler sentence. Rewrite the weakest section. Do this once *before* running the scorers — the gates confirm quality, they don't create it.
6. **Three-gate loop — fabrication is a hard gate; quality is the target; AEO is a floor:**
# (a) HARD GATE — must be 0 high, or surface remaining violations
python ../../scripts/validate_draft.py --draft <draft.md> \
--locked brands/<slug>/locked-facts.json --brief brands/<slug>/briefs/<slug>.json \
--brand-terms "<Brand>" --json
# (b) QUALITY — the number to optimize (target >= 80)
python ../../scripts/draft_quality.py --draft <draft.md> --floor <800+ per node type> --json
# (c) AEO — a FLOOR to clear (target >= 80), NOT a number to maximize
python ../../scripts/aeo_score.py --draft <draft.md> --schema-dir brands/<slug>/data/schema --jsonRepair in priority order: fabrication first (never fix a fabrication by inventing a source — tell the truth or cut the claim); then work the `draft_quality.py` fixes (deepen shallow sections, add the missing examples, cut filler, reach length through depth); then confirm AEO ≥ ~80. **Do not sacrifice depth to push AEO past ~85** — a formulaic all-Q&A page is the failure mode this loop exists to prevent. Repeat ~2–4×.
7. **Surface, don't hide.** If violations or an unavoidable quality gap remain (e.g. the piece stays generic because a brand fact the user hasn't confirmed is missing), STOP and list them with the exact sentences and the specific facts you need — rather than shipping filler or faking a source. These usually map to `_pending_owner_confirmation`.
8. **Emit** `brands/<slug>/drafts/<node-slug>.md`; set node `status: drafted`.
is gone; length reached through substance. This is the bar the writer is judged on.
ledger only.
guard — it only changes where legitimate numbers come from.
A free, open-source alternative to Surfer, MarketMuse, Clearscope & Frase — built as Claude Code skills. Topical authority, content briefs, AI writing, schema, GEO, and backlinks. With a fabrication guard that refuses to invent numbers.
Optimize a brand's mapped content to get cited by AI answer engines — Google AI Overviews, ChatGPT, Perplexity, Gemini. Scores…
Generate entity-aware, Koray-style content briefs from a topical-map node or any target query — a semantically ordered heading…
Plan how a brand's published content gets seen — per-piece channel fit, repurposing atoms (X thread, LinkedIn post, Reddit…
Plan off-page authority for a brand — find and prioritize backlink opportunities from its topical map and competitor set, with a…
Generate an internal-linking plan and JSON-LD structured data from a brand's topical map and entity profile. Use whenever the…
Audit an existing site against its topical map — coverage gaps, keyword cannibalization, entity drift, orphan pages, and per-page…
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use…
Comprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability,…
Turn the current project website into a short, polished, shareable launch video using Hyperframes. Use when someone says "/brag",…
Full website GEO+SEO audit with parallel subagent delegation. Orchestrates a comprehensive Generative Engine Optimization audit…