/cs:aeo — Answer Engine Optimization workflow. Audit content for E-E-A-T + structure signals that drive LLM citation (ChatGPT, Perplexity, Claude, Gemini, Mistral). Optimize content in 3 modes (conservative/balanced/aggressive). Track which LLMs cite which pages via local ledger. Industry-aware thresholds (8 industries with YMYL calibration). Distinct from SEO — refuses to optimize one at expense of the other.
Command: /cs:aeo [action] [args]
The cs-aeo command is the entry point for AEO workflows: audit → optimize → publish → track citations.
/cs:seo-auditThese share a foundation (E-E-A-T) but optimize for different conversion events:
/cs:seo-audit — optimizes for ranking + click-through in Google/Bing search results/cs:aeo (this command) — optimizes for being cited as authoritative source by LLMsThey can run on the same content. The cs-aeo agent will surface this and recommend running both for high-leverage pages.
/cs:seo-auditaudit — Score content for AEO readiness/cs:aeo audit --input post.md --industry saas
/cs:aeo audit --url https://example.com/blog/post --industry healthcare
/cs:aeo audit --sample
Returns composite 0-100 with per-dimension breakdown (E-E-A-T + Structure) and top 5 fixes in priority order.
optimize — Generate AEO-improved variant/cs:aeo optimize --input post.md --mode balanced --output post-aeo.md
/cs:aeo optimize --input post.md --mode aggressive --industry finance
Three modes:
conservative — touch <10% of words (schema + corrections footer only)balanced — touch <30% (citation markers + heading restructure + schema + footer)aggressive — full restructure + fact-first lede + maximum citation densitytrack — Log a citation you observed in an LLM response/cs:aeo track --url https://example.com/post --llm perplexity --query "what is AEO" --date 2026-05-17
Maintains a local ledger at ~/.aeo-data/citations.json. No telemetry.
report — Aggregate citation report for a URL/cs:aeo report --url https://example.com/post
Returns total citations, LLM coverage, velocity, top queries, verdict (EARLY / EMERGING / STRONG).
export — Emit citation ledger as CSV/cs:aeo export --output citations.csv
For reporting to clients / stakeholders.
| Q | Asks | When |
|---|---|---|
| Q1 | What action — audit / optimize / track / report? | Always |
| Q2 | Industry (saas / healthcare / finance / legal / ecommerce / b2b / media / education) | Always (calibrates thresholds) |
| Q3 | For optimize: mode (conservative / balanced / aggressive)? | Only when action=optimize |
Most invocations exit intake after Q2.
# Phase 1: Audit
python3 marketing-skill/skills/aeo/scripts/aeo_audit.py --input <file> --industry <industry>
# → composite score 0-100 + top fixes
# Phase 2: Optimize (if audit < industry threshold)
python3 marketing-skill/skills/aeo/scripts/aeo_optimizer.py \
--input <file> --mode <mode> --industry <industry> --output <file>-aeo.md
# → optimized variant + changelog
# Phase 3: Publish (manual step — review the optimized variant, then deploy)
# Phase 4: Track (over 4-12 weeks)
python3 marketing-skill/skills/aeo/scripts/citation_tracker.py \
--action add --url <url> --llm <llm> --query <query> --date <YYYY-MM-DD>
# → ledger updated
# Phase 5: Report (monthly)
python3 marketing-skill/skills/aeo/scripts/citation_tracker.py \
--action report --url <url>
# → per-URL citation report
The auditor calibrates per-industry. YMYL ("Your Money or Your Life") topics use stricter thresholds:
| Industry | Min Composite | Why | |---|---|---| | Healthcare | 85 | Direct health implications | | Finance | 85 | Real financial decisions | | Legal | 85 | Legal jeopardy if misapplied | | Education | 75 | Learning outcomes | | SaaS, B2B, Media | 70 | Business decisions, moderate stakes | | E-commerce | 65 | Product reviews, lower individual risk |
Content for YMYL topics scoring below threshold is unlikely to be cited regardless of other signals — the cs-aeo agent will flag this and refuse aggressive optimization until the foundational dimensions improve.
cs-aeoaeo/cs:seo-audit (SEO + AEO often run together)alirezarezvani/aeo-boxVersion: 2.7.3 License: MIT
Copy a source-pinned command for your client. You run it yourself.
Destination: .claude/skills/cmd-cs-aeo · pinned to the source commit
# Run from your project root
git clone https://github.com/alirezarezvani/claude-skills.git .skillboard-tmp
git -C .skillboard-tmp checkout 19392f7a08264ed00486a251f5b2098321771f94
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/.gemini/skills/cmd-cs-aeo" ".claude/skills/"
rm -rf .skillboard-tmpReview the source before running. This copies files into your project; it is not a one-click install and does not verify runtime safety.
sudo apt update && sudo apt install -y gitnpm install -g @anthropic-ai/claude-code# Run from your project root
git clone https://github.com/alirezarezvani/claude-skills.git .skillboard-tmp
git -C .skillboard-tmp checkout 19392f7a08264ed00486a251f5b2098321771f94
mkdir -p ".claude/skills"
cp -r ".skillboard-tmp/.gemini/skills/cmd-cs-aeo" ".claude/skills/"
rm -rf .skillboard-tmpDestination: .claude/skills/cmd-cs-aeo
Scanner static-checks@0.1.0 · commit 19392f7a0826. Static checks cannot prove runtime safety – review the source and the exact diff before installing. How checks work.
No static rules matched. This is not a safety guarantee.