SEO Keyword Clustering
AgriciDaniel/claude-seo
Clusters keywords by how much their search results overlap and designs a hub-and-spoke content plan with an internal link matrix and an interactive cluster map.
Discover, analyze, and prioritize keywords for SEO and GEO content strategies.
$ npx skills add ViryaZheng/recomby-geo --skill keyword-research -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ViryaZheng/recomby-geo keyword-research --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ViryaZheng/recomby-geo.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/recomby-geo/skills/keyword-research .claude/skills/keyword-research && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "keyword-research" agent skill from https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-research into .claude/skills/keyword-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "keyword-research", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-researchType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ViryaZheng/recomby-geo --skill keyword-research -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ViryaZheng/recomby-geo keyword-research --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ViryaZheng/recomby-geo.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/recomby-geo/skills/keyword-research .agents/skills/keyword-research && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "keyword-research" agent skill from https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-research into .agents/skills/keyword-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "keyword-research", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ViryaZheng/recomby-geo --skill keyword-research -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ViryaZheng/recomby-geo keyword-research --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ViryaZheng/recomby-geo.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/recomby-geo/skills/keyword-research .cursor/skills/keyword-research && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "keyword-research" agent skill from https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-research into .cursor/skills/keyword-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "keyword-research", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ViryaZheng/recomby-geo.git --path plugins/recomby-geo/skills/keyword-research--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ViryaZheng/recomby-geo --skill keyword-research -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ViryaZheng/recomby-geo keyword-research --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ViryaZheng/recomby-geo.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/recomby-geo/skills/keyword-research .gemini/skills/keyword-research && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "keyword-research" agent skill from https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-research into .gemini/skills/keyword-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "keyword-research", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ViryaZheng/recomby-geo keyword-researchInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ViryaZheng/recomby-geo --skill keyword-research -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ViryaZheng/recomby-geo.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/recomby-geo/skills/keyword-research .github/skills/keyword-research && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "keyword-research" agent skill from https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-research into .github/skills/keyword-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "keyword-research", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ViryaZheng/recomby-geo --skill keyword-research -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ViryaZheng/recomby-geo keyword-research --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ViryaZheng/recomby-geo.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/recomby-geo/skills/keyword-research .opencode/skills/keyword-research && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "keyword-research" agent skill from https://github.com/ViryaZheng/recomby-geo/tree/main/plugins/recomby-geo/skills/keyword-research into .opencode/skills/keyword-research/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "keyword-research", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
keyword-researchDiscover, analyze, and prioritize keywords for SEO and GEO content strategies.
Keyword Research is an agent skill from ViryaZheng/recomby-geo. Discover, analyze, and prioritize keywords for SEO and GEO content strategies. Identifies high-value opportunities based on search volume, competition, intent, and business relevance. Generates topic clusters and content calendars. Use when asked to "find keywords", "keyword research", "what should I write about", "keyword analysis", "find me topics to write", "search volume", "keyword difficulty", "content ideas", or any keyword discovery task.
Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including reference files (for example `evals/evals.json`, `references/example-report.md` and `references/keyword-intent-taxonomy.md`).
It sits in Marketing & SEO, covering Keyword research and Content strategy. The repository describes itself as: GEO 领域 AI 员工开源方案 · Open-source GEO AI-employee solution (MIT). GEO Skills package + curated lists of agents and office CLIs that make up the AI-employee stack. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 530d5e2. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Keyword Research loads about 2.6k tokens when it runs, and up to ~12k if it reads all its reference files. Until then it costs about 117 tokens; SKILL.md has 814 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from ViryaZheng/recomby-geo at commit 530d5e2, republished under its MIT licence (© ViryaZheng). 814 words, ~2,568 tokens.
.claude/skills/keyword-research/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Discovers, analyzes, and prioritizes keywords for SEO and GEO content strategies. Identifies high-value opportunities based on search volume, competition, intent, and business relevance.
Use this when the conversation involves any of these situations — even if the user does not use SEO terminology:
Use this whenever the task needs reusable market intelligence that should influence strategy, not just an ad hoc answer.
Start with one of these prompts.
Research keywords for [topic/product/service]Find keyword opportunities for a [industry] business targeting [audience]Find low-competition keywords for [topic] with commercial intentIdentify question-based keywords for [topic] that AI systems might answerWhat keywords is [competitor URL] ranking for that I should target?Note: All integrations are optional. This skill works without any API keys — users provide data manually when no tools are connected.
With ~~SEO tool + ~~search console connected: Automatically pull historical search volume data, keyword difficulty scores, SERP analysis, current rankings from ~~search console, and competitor keyword overlap. The skill will fetch seed keyword metrics, related keyword suggestions, and search trend data.
With manual data only: Ask the user to provide:
Proceed with the full analysis using provided data. Note in the output which metrics are from automated collection vs. user-provided data.
When a user requests keyword research:
Understand the Context
Ask clarifying questions if not provided:
Generate Seed Keywords
Start with:
Expand Keyword List
For each seed keyword, generate variations:
## Keyword Expansion Patterns
### Modifiers
- Best [keyword]
- Top [keyword]
- [keyword] for [audience]
- [keyword] near me
- [keyword] [year]
- How to [keyword]
- What is [keyword]
- [keyword] vs [alternative]
- [keyword] examples
- [keyword] tools
### Long-tail Variations
- [keyword] for beginners
- [keyword] for small business
- Free [keyword]
- [keyword] software/tool/service
- [keyword] template
- [keyword] checklist
- [keyword] guideClassify Search Intent
Categorize each keyword:
| Intent | Signals | Example | Content Type |
|---|---|---|---|
| Informational | what, how, why, guide, learn | "what is SEO" | Blog posts, guides |
| Navigational | brand names, specific sites | "google analytics login" | Homepage, product pages |
| Commercial | best, review, vs, compare | "best SEO tools [current year]" | Comparison posts, reviews |
| Transactional | buy, price, discount, order | "buy SEO software" | Product pages, pricing |
Assess Keyword Difficulty
Score each keyword (1-100 scale):
### Difficulty Factors
**High Difficulty (70-100)**
- Major brands ranking
- High domain authority competitors
- Established content (1000+ backlinks)
- Paid ads dominating SERP
**Medium Difficulty (40-69)**
- Mix of authority and niche sites
- Some opportunities for quality content
- Moderate backlink requirements
**Low Difficulty (1-39)**
- Few authoritative competitors
- Thin or outdated content ranking
- Long-tail variations
- New or emerging topicsCalculate Opportunity Score
Formula: Opportunity = (Volume × Intent Value) / Difficulty
Intent Value assigns a numeric weight by search intent:
### Opportunity Matrix
| Scenario | Volume | Difficulty | Intent | Priority |
|----------|--------|------------|--------|----------|
| Quick Win | Low-Med | Low | High | ⭐⭐⭐⭐⭐ |
| Growth | High | Medium | High | ⭐⭐⭐⭐ |
| Long-term | High | High | High | ⭐⭐⭐ |
| Research | Low | Low | Low | ⭐⭐ |Identify GEO Opportunities
Keywords likely to trigger AI responses:
### GEO-Relevant Keywords
**High GEO Potential**
- Question formats: "What is...", "How does...", "Why is..."
- Definition queries: "[term] meaning", "[term] definition"
- Comparison queries: "[A] vs [B]", "difference between..."
- List queries: "best [category]", "top [number] [items]"
- How-to queries: "how to [action]", "steps to [goal]"
**AI Answer Indicators**
- Query is factual/definitional
- Answer can be summarized concisely
- Topic is well-documented online
- Low commercial intentCreate Topic Clusters
Group keywords into content clusters:
## Topic Cluster: [Main Topic]
**Pillar Content**: [Primary keyword]
- Search volume: [X]
- Difficulty: [X]
- Content type: Comprehensive guide
**Cluster Content**:
### Sub-topic 1: [Secondary keyword]
- Volume: [X]
- Difficulty: [X]
- Links to: Pillar
- Content type: [Blog post/Tutorial/etc.]
### Sub-topic 2: [Secondary keyword]
- Volume: [X]
- Difficulty: [X]
- Links to: Pillar + Sub-topic 1
- Content type: [Blog post/Tutorial/etc.]
[Continue for all cluster keywords...]Generate Output Report
Produce a report containing: Executive Summary, Top Keyword Opportunities (Quick Wins, Growth, GEO), Topic Clusters, Content Calendar, and Next Steps.
Reference: See references/example-report.md for the full report template and example.
Reference: See references/example-report.md for a complete example report for "project management software for small businesses".
Map all keywords for [topic] by search intent and funnel stageIdentify seasonal keyword trends for [industry]What keywords do [competitor 1], [competitor 2] rank for that I'm missing?Research local keywords for [business type] in [city/region]© ViryaZheng, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (references) in plugins/recomby-geo/skills/keyword-research of ViryaZheng/recomby-geo.
Open the folder on GitHubat commit 530d5e2
Keyword Research next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Keyword Research this skillViryaZheng/recomby-geo | 458 | — | ~2.6k | Automated safety check: Pass | MIT | |
| SEO Keyword ClusteringAgriciDaniel/claude-seo | 19k | 2 repos | ~3.3k | Automated safety check: Pass | MIT | |
| SEO Content Brief GeneratorAgriciDaniel/claude-seo | 19k | 2 repos | ~2.6k | Automated safety check: Pass | MIT | |
| Strategic SEO PlanningAgriciDaniel/claude-seo | 19k | 5 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Blog ClusterAgriciDaniel/claude-blog | 2.3k | 1 repos | ~4.9k | Automated safety check: Pass | MIT | |
| SEO Keyword ResearchVarnan-Tech/opendirectory | 674 | — | ~1.8k | Automated safety check: Pass | MIT |
AgriciDaniel/claude-seo
Clusters keywords by how much their search results overlap and designs a hub-and-spoke content plan with an internal link matrix and an interactive cluster map.
AgriciDaniel/claude-seo
Builds research-backed SEO content briefs with competitor scoring, per-section word counts and page-type templates, for new pages or improving existing ones.
AgriciDaniel/claude-seo
Builds an SEO strategy for a new or existing site: discovery, competitor analysis, site architecture, content plan, technical foundation and a four-phase roadmap.
AgriciDaniel/claude-blog
Semantic topic cluster planning and automated execution engine for claude-blog.
Varnan-Tech/opendirectory
SEO keyword research workflow for blog generation using Google Trends data.
aaron-he-zhu/aaron-marketing-skills
A skill your agent uses when the user asks to "find content gaps", "竞品写了什么", or "还应该写什么"; builds a competitor-relative coverage map of missing topics, keyword gaps, and editorial-calendar…
ViryaZheng/recomby-geo
Optimize title tags, meta descriptions, Open Graph, and Twitter cards for maximum click-through rate.
ViryaZheng/recomby-geo
Render an interactive, self-contained HTML companion for a GEO content brief (04-content-brief) or a publish-ready draft (05-production), so a NON-technical client reviewer (founder, organizer…
ViryaZheng/recomby-geo
Write SEO-optimized blog posts, landing pages, and long-form page copy following Google's E-E-A-T and Helpful Content guidelines.
ViryaZheng/recomby-geo
A skill your agent uses when improving internal link structure, anchor text, orphan pages, crawl depth, site architecture, or link equity flow.
ViryaZheng/recomby-geo
A skill your agent uses when auditing content quality, E-E-A-T, publish readiness, or 内容质量/EEAT评分.
ViryaZheng/recomby-geo
Entry point + orchestrator for the recomby-geo GEO (Generative Engine Optimization) workflow on OpenAI Codex CLI.
Categories
Discover, analyze, and prioritize keywords for SEO and GEO content strategies. Keyword Research is an agent skill from ViryaZheng/recomby-geo. Discover, analyze, and prioritize keywords for SEO and GEO content strategies.
Keyword Research fits situations like: asked to find keywords; keyword research; what should I write about; keyword analysis.
Run `npx skills add ViryaZheng/recomby-geo --skill keyword-research -a claude-code`. Or copy the skill folder (plugins/recomby-geo/skills/keyword-research in ViryaZheng/recomby-geo) into .claude/skills/keyword-research in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ViryaZheng/recomby-geo --skill keyword-research -a codex`. Or copy the skill folder (plugins/recomby-geo/skills/keyword-research in ViryaZheng/recomby-geo) into .agents/skills/keyword-research in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ViryaZheng/recomby-geo --skill keyword-research -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/keyword-research, .gemini/skills/keyword-research, .github/skills/keyword-research and .opencode/skills/keyword-research in your project.
SKILL.md names no scripts, command-line tools or credentials: Keyword Research is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Keyword Research is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 9.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Keyword Research: SEO Keyword Clustering (AgriciDaniel/claude-seo, 19k stars), SEO Content Brief Generator (AgriciDaniel/claude-seo, 19k stars), Strategic SEO Planning (AgriciDaniel/claude-seo, 19k stars) and Blog Cluster (AgriciDaniel/claude-blog, 2.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ViryaZheng (a GitHub user) maintains it in ViryaZheng/recomby-geo, which has 458 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on July 4, 2026.
Source: ViryaZheng/recomby-geo on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.