keyword-research
aaron-he-zhu/aaron-marketing-skills
Discover, score, and cluster keywords for SEO planning by search volume, difficulty, intent, and topic hubs.
What is keyword-research?
Keyword research skill for SEO and content planning. Use when starting keyword research for a new page, topic, or campaign, or when asked about search volume, keyword difficulty, topic clusters, long-tail keywords, or content ideas. Prioritizes search volume, keyword difficulty, intent classification, and topic clustering from provided data or connected tools.
- Discovers and seeds keywords from core, problem, solution, audience, and industry terms
- Expands keywords with modifiers and long-tail patterns to build comprehensive sets
- Classifies keywords by intent (informational, navigational, commercial, transactional)
- Scores keywords by difficulty (1–100) and computes opportunity using volume, intent value, and difficulty
- Groups keywords into pillar and cluster topic hubs for content strategy
- Flags AI-answer-friendly queries (questions, definitions, comparisons, how-tos) for GEO optimization
How to install keyword-research
npx skills add https://github.com/aaron-he-zhu/aaron-marketing-skills --skill keyword-research- Optional: SEO tool or Google Search Console connection for search volume and ranking data
- Optional: Firecrawl API key (free tier ~1,000 credits/month) for live SERP sampling to measure keyword difficulty
- Seed keyword, target market/language, business goal, and site domain rating (DR) for accurate scoring
How to use keyword-research
- 1.Provide a topic, product, service, or seed keyword and specify target market/language
- 2.The skill runs 8 phases: Scope, Discover, Variations, Classify, Score, GEO-Check, Cluster, and Deliver
- 3.Review the Executive Summary and prioritized Quick Win / Growth / GEO opportunities
- 4.Use the Topic Clusters output to plan your content calendar and pillar-cluster structure
- 5.Promote durable keyword priorities to memory/hot-cache.md and save the full research to memory/research/
Use cases
- Starting SEO strategy for a new product or service by identifying high-opportunity keywords to target
- Finding long-tail keyword opportunities already ranking in positions 5–20 in your Search Console data for quick wins
- Building a content calendar by clustering keywords into pillar topics and supporting cluster content
- Comparing keyword difficulty and search volume across markets or languages to prioritize geographic expansion
- Identifying informational keywords and question-based queries to optimize for AI-generated answer snippets
- SEO strategists and content planners building keyword strategies
- Marketing teams planning content calendars and topic clusters
- Product managers researching keyword demand for new features or markets
- Content creators identifying high-opportunity topics with proven search demand
keyword-research FAQ
keyword-research discovers and prioritizes keywords by search volume, difficulty, and intent for your own strategy. content-gap-analysis compares your keyword coverage against competitors to find gaps. Use keyword-research first to build your target set, then content-gap-analysis to benchmark against rivals.
Yes. The skill includes zero-dependency helpers: Google Autocomplete expansion for keyword ideas, Wikipedia pageviews for topic-demand proxy data, and Firecrawl's free tier for live SERP sampling to measure difficulty. Search volume still requires an SEO tool or Search Console export, but you can mark it Unknown and prioritize by difficulty and intent instead.
Opportunity = (Volume × Intent Value) / Difficulty, where Intent Value is 1 for informational, 1 for navigational, 2 for commercial, and 3 for transactional. Higher volume and intent value increase opportunity; higher difficulty decreases it. The skill also offers an optional Impact × Confidence lens that layers in CPC, trend direction, and current ranking position for richer prioritization.
GEO-Check flags keywords that are AI-answer-friendly: questions, definitions, comparisons, lists, and how-tos. These are high-priority for optimizing answer snippets and AI-generated result visibility, especially for informational queries where AI models are likely to cite your content.
Start with BOFU (bottom-of-funnel) keywords if revenue is your goal—these contain 'pricing', 'best', 'vs', 'services', 'hire', 'buy', or are transactional. Then tackle Quick Win opportunities (already ranking 5–20 in Search Console) for fastest ROI. Use TOFU/MOFU for reach and GEO coverage once BOFU is secured.
Full instructions (SKILL.md)
Source of truth, from aaron-he-zhu/aaron-marketing-skills.
name: keyword-research slug: keyword-research displayName: "Keyword Research · 关键词研究" summary: "关键词研究/内容选题" description: 'Use when the user asks to "find keywords", "挖词", or "搜什么词"; prioritizes search volume, keyword difficulty, intent, and topic clusters from provided or connected data. Not for competitor-relative coverage gaps — use content-gap-analysis. 关键词研究/内容选题' version: "20.1.0" license: Apache-2.0 compatibility: "Claude Code and compatible agent-skill hosts" homepage: "https://github.com/aaron-he-zhu/aaron-marketing-skills" when_to_use: "Use when starting keyword research for a new page, topic, or campaign. Also when the user asks about search volume, keyword difficulty, topic clusters, long-tail keywords, what to write about, 关键词研究, 挖词, 内容选题, or 搜什么词." argument-hint: "<topic or seed keyword> [market/language]" metadata: {"author": "aaron-he-zhu", "version": "20.1.0", "discipline": "seo-geo", "phase": "survey", "geo-relevance": "medium", "hermes": {"tags": ["marketing", "seo-geo", "survey"], "category": "seo-geo"}, "openclaw": {"emoji": "🔍", "homepage": "https://github.com/aaron-he-zhu/aaron-marketing-skills"}}
Keyword Research
Discovers, scores, and clusters keywords for SEO and GEO planning.
Quick Start
Research keywords for [topic/product/service]
What keywords is [competitor URL] ranking for that I should target?
Skill Contract
Expected output: a prioritized keyword brief plus the standard handoff summary for memory/research/.
- Reads: topic or seed keyword, target market/language, business goal, site DR, and any user-provided or tool metrics.
- Writes: a user-facing research deliverable and reusable summary.
- Promotes: durable keyword priorities, competitor facts, and pending strategy decisions to
memory/hot-cache.md,memory/open-loops.md, andmemory/research/. - Done when: every shortlisted keyword carries volume + difficulty + intent, each with source ref, observation time/window, market/language, and evidence label; an applicable missing value is
Unknownwith its gap reason, never N/A; keywords are grouped into pillar + cluster hubs; and the deliverable names at least 3 prioritized Quick Win / Growth / GEO opportunities. - Primary next skill: competitor-analysis when the keyword set is ready for market comparison.
Handoff Summary
Emit the standard shape from skill-contract.md §Handoff Summary Format.
Data Sources
Optional integrations: ~~SEO tool, ~~search console. Without tools, ask for seed keywords, audience, goals, and any known metrics. See CONNECTORS.md.
Zero-dependency local helper (no tool needed): python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/suggest.py" "<seed>" --expand harvests free keyword ideas from Google Autocomplete (⚠️ unofficial endpoint). Search volume / difficulty still needs ~~SEO tool or own Search Console data. See scripts/connectors/README.md.
Keyless live-SERP sampling: python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/firecrawl.py" search "<candidate keyword>" --limit 10 (Firecrawl keyless free tier, ~1,000 credits/mo, no key needed) shows who actually ranks for a candidate — feed the top-10 domains and formats into the intent check and the difficulty read as Measured evidence instead of guessing. Volume still needs ~~SEO tool or GSC.
Keyless topic-demand proxy: python3 "${CLAUDE_PLUGIN_ROOT}/scripts/connectors/pageviews.py" "<Topic_Article>" --months 12 returns a topic's real Wikipedia-attention series — Measured direction and seasonality evidence when no volume tool is connected. It is attention, not search volume: use it to rank topics against each other and time them, never to quote a volume number.
Striking-distance shortcut (when ~~search console is connected): before broad discovery, mine your own GSC query data for terms already ranking in positions ~5–20 — page-one tail and page two. These are proven demand a small push can convert, so they are the fastest opportunity set. The Search Analytics API sorts by clicks and has no position filter, so request a high rowLimit and filter the 5–20 window client-side, then attach volume / difficulty / intent to that shortlist. Work this set first; treat its metrics as Measured.
Instructions
When a user requests keyword research, run eight phases and announce each as [Phase X/8: Name]:
- Scope — clarify product, audience, business goal, DR, geography, and language.
- Discover — seed from core, problem, solution, audience, and industry terms.
- Variations — expand with modifiers and long-tail patterns.
- Classify — tag by intent (informational, navigational, commercial, transactional).
- Score — assign difficulty (1-100) and compute
Opportunity = (Volume × Intent Value) / Difficulty, with Intent Value1 / 1 / 2 / 3. - GEO-Check — flag AI-answer-friendly queries such as questions, definitions, comparisons, lists, and how-tos.
- Cluster — group keywords into pillar + cluster topic hubs.
- Deliver — output an Executive Summary, Quick Wins / Growth / GEO opportunities, Topic Clusters, Content Calendar, and Next Steps.
Label every metric Measured (tool/export), User-provided, Calculated, Estimated, Proxy, or Unknown; retain query, locale, language, source ref, observation time, and window per field. Preserve conflicting sources. If an applicable metric is unavailable, mark it Unknown with a missing reason — N/A is only for a genuinely non-applicable field. An attention proxy never becomes search volume, and an Unknown decision-critical input makes the opportunity score NOT_SCORED.
Impact × Confidence lens (optional, layers onto Phase 5)
When you have richer signals than volume/difficulty alone, add a second pass on top of the Opportunity score:
- Impact = volume + CPC + funnel stage + trend direction (how much winning the term is worth).
- Confidence = difficulty + current ranking position + topic authority (how likely you are to win it).
- Priority = Impact × Confidence — surfaces terms that are both valuable and winnable, not just high-volume.
Tag each keyword by funnel stage from its pattern:
- BOFU — commercial/transactional, or contains "pricing", "best", "vs", "services", "agency", "hire", "buy".
- MOFU — informational with buying signals: "how to", "guide", "roi", "case study", "review".
- TOFU — pure informational (definitions, broad questions).
Work BOFU first when revenue is the goal; use TOFU/MOFU for reach and GEO answer coverage. (Impact×Confidence + funnel-stage scoring adapted from an external SEO-ops competitive analysis.)
Quality bar: every recommendation includes at least one specific number. Rewrite generic advice into a concrete keyword + volume + difficulty + reason.
Reference: See references/instructions-detail.md for the full 8-phase templates, expansion patterns, intent table, difficulty tiers, opportunity matrix, GEO indicators, cluster template, actionable-vs-generic examples, and advanced usage.
Example
See references/example-report.md for a full worked sample.
Save Results
Write path: memory/research/keyword-research/YYYY-MM-DD-<topic>.md; promote durable keyword priorities to memory/hot-cache.md. See Skill Contract §Save Results Template.
Reference Materials
- SEO/GEO Evidence and Cycle Control Profile — query/SERP observations, missingness, page bindings, and index receipts
- Instructions Detail — Workflow, scoring, cluster template, advanced usage
- Keyword Intent Taxonomy — Intent signals and content mapping
- Topic Cluster Templates — Pillar and cluster patterns
- Keyword Prioritization Framework — Scoring and prioritization rules
- Example Report — Worked sample
Next Best Skill
Primary: competitor-analysis. Also: content-gap-analysis and serp-analysis.
Related skills
More from aaron-he-zhu/aaron-marketing-skills and the wider catalog.

technical-seo-checker
Comprehensive technical SEO audits for crawlability, indexing, Core Web Vitals, and site migrations.

competitor-analysis
Benchmark competitor SEO, keywords, content, backlinks, and traffic to uncover strengths to learn and weaknesses to exploit.

content-quality-auditor
Audit content quality, E-E-A-T, and publish readiness with a typed 80-item CORE-EEAT profile.

content-writer
Write and refresh SEO content with keyword targeting, decay diagnosis, and republish planning.

alert-manager
This skill has been moved; use performance-monitor instead.

backlink-analyzer
This skill has moved; use offsite-signal-analyzer from aaron-marketing-skills instead.