keyword-research
Skill0 starsChanged 5 months agoMITView on GitHub
Check Google Trends for keyword interest and SEO prioritization. Use when the user mentions "keyword research", "SEO", "search trends", "content strategy", "blog prioritization", "compare keywords", "trending topics", or wants to evaluate keyword opportunities.
- Installs packages
54 other projects use a version of this.
Adopted by
Most recently taken up by
- oivanfelipe/claude-skillstheir own version, first seen Nov 8, 2026
- kostja94/marketing-skillstheir own version, first seen Nov 8, 2026
- kristian-presso/claude-marketing-skillstheir own version, first seen Nov 8, 2026
- foverse/seoversetheir own version, first seen Nov 8, 2026
- AppKittie/aso-mcp-skillstheir own version, first seen Nov 8, 2026
- MoizIbnYousaf/marketing-clitheir own version, first seen Nov 1, 2026
Used with
Projects with it also use link-prospecting, seo-project-setup and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
JwuthriSkilllink-prospecting
Find link prospects, discover contact paths, and draft outreach from SERPs and backlink signals.
Also in 11 projects that use this
JwuthriSkillseo-project-setup
Set up a durable local SEO workspace with project context, notes, goals, positioning, preferences, MCP checks, and Search Console data intake.
Also in 11 projects that use this
appeekySkillapp-marketing-context
When the user wants to create or update their app marketing context document. Also use when the user mentions "app context", "marketing brief", "app positioning", or when starting any ASO or app marketing project. This is the foundation skill — all other skills check for this context first.
Also in 6 projects that use this
appeekySkillmetadata-optimization
When the user wants to optimize App Store metadata — title, subtitle, keyword field, or description. Also use when the user mentions "optimize my title", "ASO metadata", "keyword field", "character limits", "app description", or "write my subtitle". For keyword discovery, see keyword-research. For full ASO audits, see aso-audit.
Also in 6 projects that use this
liangdabiaoSkillreview-analysis
对亚马逊商品评论进行深度分析,自动识别产品痛点、分析退货原因,生成改进建议和客服回复模板。Invoke when user uses /review-analysis command with a product ASIN.
Also in 5 projects that use this
akii-technologies-ltdSkillkeyword-clustering
Cluster and organize keywords into topical groups for SEO. Use when the user asks to "cluster keywords", "group keywords", "organize keywords", "keyword mapping", "topic clusters", "keyword grouping", "build a content plan", "pillar pages", "topical authority", "semantic clustering", or pastes a list of keywords.
Also in 12 projects that use this
- +5 more from Jwuthri
Other versions54 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 54
- every-app/open-seo★ 27ksame name
- Ryze-AI-Adgent/open-seo-mcp-skills★ 8.4ksame name
- nowork-studio/toprank★ 4.1ksame name
- nowork-studio/notfair-plugin★ 4.1ksame name
- appeeky/aso-skills★ 2.2ksame name
- Eronred/aso-skills★ 2.2ksame name
- Jwuthri/Tracely-ai★ 1.3ksame name
- VladSez/easy-invoice-pdf★ 1.1ksame name
- kostja94/marketing-skills★ 1.1ksame name
- liangdabiao/amazon-sorftime-research-MCP-skill★ 1.1ksame name
44 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository17 other files it gives its agents.
- battleSkill
- briefSkill
- codex-writeSkill
- councilSkill
- crawlSkill
- deslopSkill
- evaluate-planSkill
- gmail-attachmentSkill
- model-scanSkill
- modeSkill
- namecheapSkill
- pair-sessionSkill
- planSkill
- salesforce-reportsSkill
- second-opinionSkill
- update-machineSkill
- week-aheadSkill
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 3 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 50 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 18
Check Google search trends and relative interest for keywords.
- Distinctive: line 41
When this skill is invoked, run the keyword research script from the project root:
- Distinctive: line 47
If the user provides arguments, pass them through:
- Very specific: line 94
Use ISO 3166-1 alpha-2 country codes.
“Common” is measured: kept by at least 6 in 10 of the 50 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Keyword Research
Check Google search trends and relative interest for keywords. Useful for SEO content strategy, blog-post prioritization, and deciding where to place marketing assets.
This skill uses a driver script at scripts/keyword-research.ts that wraps the
google-trends-api npm package. A self-contained reference driver is bundled — adapt the
tracked-keyword lists to your own site.
Requirements
- Node.js 20+
tsxto run the TypeScript driver:npm install -g tsxgoogle-trends-apinpm package:npm install google-trends-api
Google Trends has no official API and no API key — the package scrapes the public Trends endpoints, so it is rate-limited. Wait a few seconds between requests to avoid temporary blocks.
The bundled driver is TypeScript/Node, but the same data is reachable from Python via the
pytrendslibrary if you prefer that ecosystem (pip install pytrends). The CLI surface and result interpretation below are framework-agnostic.
Immediate action
When this skill is invoked, run the keyword research script from the project root:
npx tsx scripts/keyword-research.tsIf the user provides arguments, pass them through:
npx tsx scripts/keyword-research.ts --keywords "AI writing tools, ChatGPT prompts, prompt engineering"
npx tsx scripts/keyword-research.ts --related "AI writing tools"
npx tsx scripts/keyword-research.ts --geo US --top 5Commands
Compare all tracked keywords
npx tsx scripts/keyword-research.tsReturns a ranked table of all keywords defined in the driver's tracked-keyword lists, sorted by average Google Trends interest over the last 12 months.
Compare specific keywords
npx tsx scripts/keyword-research.ts --keywords "keyword1, keyword2, keyword3"Compare up to 15 custom keywords. Google Trends allows max 5 per batch, so the driver compares them in batches.
Related queries for a keyword
npx tsx scripts/keyword-research.ts --related "AI writing tools"Returns:
- Top related queries: most commonly searched alongside this keyword
- Rising queries: fastest-growing related searches (breakout = >5000% growth)
- Top regions: countries with highest search interest
Filter by country
npx tsx scripts/keyword-research.ts --geo US
npx tsx scripts/keyword-research.ts --geo JP
npx tsx scripts/keyword-research.ts --related "AI writing" --geo USUse ISO 3166-1 alpha-2 country codes. Omit --geo for worldwide.
Show top N only
npx tsx scripts/keyword-research.ts --top 5Understanding results
- Average Interest: relative number (0–100) where 100 = peak search interest for that term in the period. NOT absolute search volume.
- 0 interest: the keyword has too little search volume for Google Trends to register. This doesn't mean zero searches — it's below Google Trends' threshold (roughly <1000 monthly searches).
- Comparing across batches: keywords in different batches are normalized to different baselines. The most reliable comparisons are within the same batch (up to 5 keywords).
Limitations
- Google Trends shows relative interest, not absolute search volume. A score of 50 means half the peak interest, not 50 searches.
- Very niche / long-tail keywords often show 0 because they fall below Google Trends' threshold.
- For actual monthly search-volume numbers, you need a paid tool (Ahrefs, SEMrush, DataForSEO).
- Rate limited: wait between requests to avoid being temporarily blocked.
Tracked keywords
Keywords are defined in scripts/keyword-research.ts in the BLOG_KEYWORDS and
LANDING_KEYWORDS objects. Update these when adding new blog posts or landing pages so the
default (no-args) run reflects your own content inventory.
Ad-hoc queries
For quick one-off checks, query Google Trends directly:
import googleTrends from "google-trends-api";
const result = await googleTrends.interestOverTime({
keyword: ["ChatGPT custom instructions", "AI writing tools"],
startTime: new Date(Date.now() - 365 * 24 * 60 * 60 * 1000),
geo: "US",
});
const data = JSON.parse(result);
console.log(data.default.timelineData);Known gotchas
- Rate limiting is silent. A blocked request often returns an HTML error page rather than JSON, which surfaces as a JSON-parse error. Back off and retry after a pause.
- Batch normalization confuses comparisons. Two keywords ranked across different batches of 5 are scored against different peaks — never read absolute rank across batch boundaries as exact.
geomust be a valid ISO 3166-1 alpha-2 code. Invalid codes silently return empty timelines that look like "0 interest".
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

