keyword-research Checked
Installation
Copy the prompt below and send it to your AI assistant (e.g. Claude Code) — it will follow the instructions and install automatically.
Install the "keyword-research" skill by following the instructions at https://skill123.me/install/keyword-research.
Run in your terminal — downloads and installs to ~/.claude/skills/.
curl -fsSL https://skill123.me/install/keyword-research.sh | bash
Download the zip and extract it into your skills directory (e.g. ~/.claude/skills/), then restart your session.
⬇ Download v1.0.0 · 13 KBNot live-tested yet — this skill is rated on static analysis only.
About this skill
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. 关键词研究/内容选题
Keyword Research
Discovers, scores, and clusters keywords for SEO and GEO planning.
Documentation
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. 关键词研究/内容选题
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 (../competitor-analysis/SKILL.md) when the keyword set is ready for market comparison.
### Handoff Summary
> Emit the standard shape from skill-contract.md §Handoff Summary Format (../../../references/skill-contract.md).
Data Sources
Optional integrations: ~~SEO tool, ~~search console. Without tools, ask for seed keywords, audience, goals, and any known metrics. See CONNECTORS.md (../../../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 (../../../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.
View full documentation
**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]:
1. **Scope** — clarify product, audience, business goal, DR, geography, and language.
2. **Discover** — seed from core, problem, solution, audience, and industry terms.
3. **Variations** — expand with modifiers and long-tail patterns.
4. **Classify** — tag by intent (informational, navigational, commercial, transactional).
5. **Score** — assign difficulty (1-100) and compute Opportunity = (Volume × Intent Value) / Difficulty, with Intent Value 1 / 1 / 2 / 3.
6. **GEO-Check** — flag AI-answer-friendly queries such as questions, definitions, comparisons, lists, and how-tos.
7. **Cluster** — group keywords into pillar + cluster topic hubs.
8. **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 (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 (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 (../../../references/skill-contract.md) §Save Results Template.
Reference Materials
- SEO/GEO Evidence and Cycle Control Profile (../../evaluate/performance-monitor/references/evidence-and-cycle-control.md) — query/SERP observations, missingness, page bindings, and index receipts
- Instructions Detail (references/instructions-detail.md) — Workflow, scoring, cluster template, advanced usage
- Keyword Intent Taxonomy (references/keyword-intent-taxonomy.md) — Intent signals and content mapping
- Topic Cluster Templates (references/topic-cluster-templates.md) — Pillar and cluster patterns
- Keyword Prioritization Framework (references/keyword-prioritization-framework.md) — Scoring and prioritization rules
- Example Report (references/example-report.md) — Worked sample
Next Best Skill
Primary: competitor-analysis (../competitor-analysis/SKILL.md). Also: content-gap-analysis (../content-gap-analysis/SKILL.md) and serp-analysis (../serp-analysis/SKILL.md).
Score breakdown
Assessment methodology
Version history
Imported from aaron-he-zhu/aaron-marketing-skills@main
