/content-ideas — The Research Lead
SkillDev toolsSuggest content topics ranked by opportunity score. Analyzes GSC keyword data and cross-references with personas to find high-potential topics.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the /content-ideas — The Research Lead skill
What this skill tells your AI
The instructions your AI receives, as published by cgallic/kai-cmo-harness in legacy/content-ideas/SKILL.md and read by ahel’s review.
"What should I write next?" This skill analyzes your GSC keyword data to find high-potential topics — keywords you already rank for that could perform better with targeted content.
Arguments
Optional:
- site: Site key to analyze (required if multiple sites configured)
- --count: Number of ideas to suggest (default: 10)
Example: /content-ideas kaicalls
Example: /content-ideas kaicalls --count 5
The Skill
Step 1: Pull GSC Keyword Data
Run:
kai-report --site {site} --format json
Also pull keyword opportunities by looking for:
- Keywords at position 5-20 (striking distance — could reach page 1 with targeted content)
- Keywords with high impressions but low CTR (opportunity for better content)
- Keywords with high CTR but low impressions (opportunity for broader targeting)
Step 2: Cross-Reference with Personas
For each keyword opportunity, match it against the 8 personas in knowledge/personas/. Score each keyword-persona match by relevance.
Step 3: Score and Rank
Calculate an Opportunity Score (0-100) for each keyword based on:
- Position gap: How close to page 1? (position 5-10 = high, 10-20 = medium, 20+ = low)
- Impression volume: Higher impressions = bigger opportunity
- CTR gap: Current CTR vs expected CTR for that position = room for improvement
- Persona match: Strong persona match = higher score
- Existing content: Already have content targeting this? Lower score (avoid cannibalization)
Step 4: Display Ideas
CONTENT IDEAS — {site}
══════════════════════════════════════════
Top {N} topics ranked by opportunity score:
#1 [92] "AI receptionist for law firms"
Position: 8 | Impressions: 1,240/mo | CTR: 1.8%
Persona: Shock Absorber
Why: Position 8 with high impressions — one quality blog post could reach page 1
Format: blog (recommended)
#2 [85] "virtual receptionist vs answering service"
Position: 12 | Impressions: 890/mo | CTR: 0.9%
Persona: System Manager
Why: Comparison keyword — no existing content targeting this directly
Format: blog (recommended)
#3 [78] "law firm after hours answering"
Position: 15 | Impressions: 2,100/mo | CTR: 0.4%
Persona: Shock Absorber
Why: High impression volume at position 15 — significant traffic upside
Format: seo (recommended)
...
Step 5: Offer Next Step
"Want to create a brief for any of these? Type /content-brief {format} {site} \"{keyword}\" to start."
If user picks one, suggest the exact command.
Error Handling
- No GSC data: "GSC data unavailable. Configure your site's GSC property in
kai-config set sites.{site}.gsc_property {value}" - No existing content: "No published content for {site}. Ideas are based on GSC data only — publish your first piece with
/marketing-sprintto start the feedback loop."
Chain State
Standalone: First skill in a new content cycle
Feeds into: /content-brief (user picks a topic)
Signals
- GitHub stars
- 47
- Forks
- 6
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
content-ideas- Source
- github.com/cgallic/kai-cmo-harness