
keyword-research
Build a prioritized keyword cluster map using the 6 Circles Method — keywords at the intersection of positioning alignment, customer language, competitor blind spots, workable search volume, real expertise, and business intent. Use when the user asks 'what keywords should I target', 'what should I write about', 'find SEO opportunities', 'plan my content strategy', 'what does my audience search for', or before any SEO content is written. Produces a Keyword Map: scored keywords grouped into topic clusters, each cluster mapped to the article that should target it, ready to hand to content production.
- Installs
- 55
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/sanky369/vibe-building-skills --skill keyword-research- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads keyword-research automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Keyword Research
Produce a keyword map: a scored, clustered list of search terms worth targeting, each tied to the content that should win it. Governing principle: a keyword is only worth targeting if it survives all six circles — aligned with the positioning, phrased in the customer's language, under-served by competitors, actually searched, winnable with the user's real expertise, and connected to revenue. Traffic that fails circle 6 is vanity.
When to use / when not to
- Use before writing SEO content, when planning a content calendar, or when the user wants to know what their audience searches for.
- If no positioning statement exists, run
skills/marketing/positioning-anglesfirst (or infer a provisional one and label it) — circle 1 is unworkable without it. - If the user wants the full organic program — link building, technical SEO, programmatic pages, domain authority — use
skills/marketing/seo-strategy; this skill is the keyword-selection layer only. - If keywords already exist and the user wants the article written, go straight to
skills/marketing/seo-content.
Intake
One batch; reuse anything already produced by skills/marketing/orchestrator or skills/marketing/positioning-angles:
- Your positioning statement (or: what you sell, to whom, and what makes it different).
- Your 2–3 closest competitors' websites.
- Any sources of raw customer language — support tickets, sales calls, reviews, community threads — or paste examples of how customers describe the problem.
- Site status: domain age, roughly how much content published, any current rankings? (Determines how competitive a keyword you can win.)
- Access to a keyword tool (Ahrefs, Semrush, Google Keyword Planner)? If yes, the user runs volume lookups when asked; if no, proceed with estimates.
Don't stall: with a positioning statement and a recognizable market you can draft the full map from knowledge and web research — label all volumes and difficulty as estimates and list them for the user to verify in a tool.
Workflow — the 6 Circles Method
Run the circles as sequential filters: generate wide in circles 1–2, then cut in 3–6.
Circle 1 — Positioning alignment (seed)
Expand the positioning statement into 20–40 seed keywords. Take each element of the claim (audience, problem, mechanism, outcome) and list the searches that element implies. Rule: seeds come from the angle, not the category. "Project management tool for remote teams" seeds remote-team keywords (async standups, distributed team communication), not generic project management keywords the incumbents own.
Circle 2 — Customer language (rephrase)
Rewrite every seed in the words customers actually type, harvested from the intake sources. Kill jargon: if customers say "remote work tools", drop "distributed workforce management solutions". Add the question-form variants ("how do I…", "best X for Y", "X vs Y") — those carry the clearest intent.
Circle 3 — Competitor blind spots (cut or boost)
Check each surviving keyword against the competitors' content (crawl their blog/sitemap or search site:competitor.com <keyword>).
- Competitors rank with strong, current content → cut, unless the user has a decisively better asset.
- Competitors ignore it or cover it thinly/outdated → boost priority. These gaps are the map's best entries.
Circle 4 — Search volume (screen)
Screen for workable volume. Heuristic (label it as such): target roughly 100–10,000 searches/month — below ~100 rarely repays an article; above ~10,000 is usually incumbent territory for a young domain. Decision rules: established domain with authority (from intake Q4) → the upper bound relaxes; brand-new domain → stay in the low hundreds-to-low-thousands band. If no tool access, estimate from autocomplete breadth, "People also ask" density, and ad presence — and flag every estimate.
Circle 5 — Expertise (cut)
Keep only keywords where the user can honestly out-write the current top results — first-hand experience, proprietary data, a named mechanism, or a sharper niche take. If the user can't add anything the top 3 results lack, cut the keyword regardless of volume.
Circle 6 — Business intent (score)
Score what remains by distance to revenue:
- High: buying/comparison intent — "best X for Y", "X vs Y", "X pricing", "X alternative".
- Medium: problem-aware how-tos the offer solves — "how to manage remote teams".
- Low: informational adjacency — "remote work statistics". Keep low-intent keywords only as cluster support, never as the cluster head.
Cluster and prioritize
Group survivors into topic clusters (one head keyword + 3–8 supporting keywords that one strong article or hub can cover). Priority order: high intent + competitor blind spot first, then high intent + contested, then medium intent gaps. Propose the top 3–5 clusters and have the user confirm the order before content production starts.
Required output format
# Keyword Map — [Brand]
**Positioning it serves:** "[claim from skills/marketing/positioning-angles]"
**Volume/difficulty source:** [tool name | estimates — user to verify]
## Priority clusters
### Cluster 1: [name] — Priority: HIGH
Target article: "[working title]" — intent: [high/med] — feeds: [lead magnet / product page]
| Keyword | Role | Est. volume | Competition note | Intent |
|---|---|---|---|---|
| [head keyword] | Head | ~N/mo | [gap / thin / contested] | High |
| [supporting] | Support | ... | ... | ... |
### Cluster 2: ...
(3–5 clusters total)
## Cut list (why keywords were rejected)
- "[keyword]" — failed circle [n]: [one-line reason]
(representative sample, not exhaustive)
## Assumptions & verification queue
- [every estimated volume or inferred competitor read, listed for tool verification]
**Next step:** write Cluster 1's target article via skills/marketing/seo-content.
Quality bar (check before delivering)
- Every cluster head passed all six circles; the failing circle is named for every cut shown.
- No cluster head is a generic category term the incumbents own.
- Every keyword uses customer phrasing — zero internal jargon survives.
- All volumes labeled with their source; estimates explicitly flagged, never presented as tool data.
- Every cluster names the article that targets it and the business asset it feeds.
- 3–5 clusters delivered, priority-ordered and user-confirmed — not an undifferentiated keyword dump.
Integration
- Upstream:
skills/marketing/positioning-anglessupplies the claim that seeds circle 1;skills/marketing/orchestratorroutes here on awareness and scale paths. - Downstream:
skills/marketing/seo-contentconsumes the cluster map one cluster at a time (head keyword + supports + working title cross the boundary);skills/marketing/seo-strategyconsumes it as the keyword layer of a full program;skills/marketing/content-atomizeruses cluster themes to steer repurposing.
FAQ
What does the keyword-research skill do?
Build a prioritized keyword cluster map using the 6 Circles Method — keywords at the intersection of positioning alignment, customer language, competitor blind spots, workable search volume, real expertise, and business intent. Use when the user asks 'what keywords should I target', 'what should I write about', 'find SEO opportunities', 'plan my content strategy', 'what does my audience search for', or before any SEO content is written. Produces a Keyword Map: scored keywords grouped into topic clusters, each cluster mapped to the article that should target it, ready to hand to content production.
How do I install keyword-research?
Run npx skills add https://github.com/sanky369/vibe-building-skills --skill keyword-research in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/keyword-research/ (personal) or .claude/skills/keyword-research/ (project).
Which AI agents can use keyword-research?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is keyword-research safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains keyword-research?
It is published by sanky369 in sanky369/vibe-building-skills. It has 55 recorded installs.
More from sanky369/vibe-building-skills
social-graphics
sanky369/vibe-building-skills
Produce platform-correct social media graphics: pick the right dimensions and layout per platform, write the headline/body/CTA copy, build the generation prompt, and generate the image via the repo's FAL.ai pipeline. Use whenever the user wants a social post visual, Instagram post/story/carousel, LinkedIn graphic, Twitter/X image, TikTok thumbnail, Pinterest pin, launch announcement graphic, or 'something to post about X' — even if they never name a platform. Also use to adapt one design across several platforms. Produces a Social Graphic Spec per asset (platform, dimensions, layout, copy, full generation prompt) plus generated images when FALAPIKEY is available.
direct-response-copy
sanky369/vibe-building-skills
Write copy engineered to drive one specific action — landing pages, sales pages, opt-in pages, ads, promotional emails — using an eight-part direct-response architecture (hook, problem, mechanism, solution, proof, objections, CTA, urgency). Use when the user says 'write my landing page / sales page / ad', 'this page isn't converting', 'rewrite my homepage copy', 'write copy for my lead magnet page', or any request for persuasive copy with a measurable action at the end. Produces the full copy draft, section-labeled against the architecture, plus hook alternatives and a conversion checklist.
tweet-writer
sanky369/vibe-building-skills
Write high-engagement tweets and X/Twitter threads, grounded in live research of what's currently working in the user's niche: researches viral examples via web search, then drafts hook variants, a single-tweet version, and a thread version with alternates to test. Use when the user says 'write a tweet about X', 'turn this into a thread', 'help me go viral', 'grow my X/Twitter account', 'my tweets get no engagement', or shares an idea/article to tweet — any X/Twitter content request. Produces a Tweet Package: 3 hook options, final single tweet, full thread, and posting notes.
typography-system
sanky369/vibe-building-skills
Build or repair a typography system: a modular type scale, font choices and loading, hierarchy, line-height/line-length, and fluid sizing — delivered as tokens (Tailwind fontSize config or CSS variables) applied to real components. Use when the user says 'the text looks off', 'fonts are inconsistent', 'headings don't stand out', 'pick fonts for me', 'it's hard to read', 'too many font sizes', or when an audit finds font-size sprawl. Chooses the scale ratio from product density (dense app vs marketing vs editorial), verifies contrast and measure, and produces the type tokens plus a migration map from existing rogue sizes.
remotion-script-writer
sanky369/vibe-building-skills
Write a complete, render-ready Remotion video script as structured JSON: analyze the user's codebase or product, break the video into timed scenes, specify every visual element, animation, transition, and voiceover line, and list required assets and Remotion packages. Use whenever the user wants a Remotion video, a programmatic/code-rendered video, a product demo video of their app, an animated coding tutorial, a data-visualization video, or short-form animated social content — trigger on 'make a video of my app', 'Remotion', 'animated demo', 'code walkthrough video', 'render a video from code'. Produces a Remotion Script JSON (videoMetadata, scenes[], requiredAssets, technicalRequirements) that Remotion agent tooling can implement directly.
product-video
sanky369/vibe-building-skills
Open the skill to read its SKILL.md instructions.
Popular productivity & automation skills
agent-browser
vercel-labs/agent-browser
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.
lark-doc
open.feishu.cn
飞书云文档(Docx / Wiki)内容操作:读取、创建、编辑文档,插入或下载图片附件,以及操作思维笔记。用户提供文档 URL/token(包括 doubao.com 的 /docx/、/wiki/)时使用;按 URL 路径/token 而非域名路由;/page/ 是妙搭应用,非飞书云文档。文档内嵌资源按读取参考中的统一规则分流。独立评论操作走 lark-drive;随正文读取评论使用 docs +fetch。表格或 Base 内部数据操作不在本 skill。
lark-base
open.feishu.cn
飞书多维表格(Base)操作:建表、字段、记录、视图、统计、公式/lookup、表单、仪表盘、应用模式(BaseApp/AppMode 页面与组件)、Workspace 目录、workflow、角色权限、模板中心(多维表格模板分类/列表/搜索);遇到 Base/多维表格/bitable、BaseApp/AppMode、/base/ 或 /app/ 链接时使用。BaseApp 不走 lark-apps;文件导入/导出转 lark-drive,认证/授权转 lark-shared。
lark-drive
open.feishu.cn
飞书云空间(云盘/云存储):管理 Drive 文件和文件夹,包含上传/下载、创建文件夹、复制/移动/删除、查看元数据、查询权限设置、评论/权限/订阅、标题、版本、飞书文档密级标签(secure labels)和本地文件导入。用户需要整理云盘目录、处理云空间资源 URL/token、判断链接类型/真实 token/标题,或导入 Word/Markdown/Excel/CSV/PPTX/.base 为 docx/sheet/bitable/slides 时使用;doubao.com 云空间 URL/token 也按资源路径和 token 路由,不回退 WebFetch。不负责:文档内容编辑(走 lark-doc)、表格/Base 表内数据操作(走 lark-sheets/lark-base)、知识空间节点/成员管理(走 lark-wiki)、原生 Markdown 文件读写/patch/diff(走 lark-markdown)。
lark-shared
open.feishu.cn
Use for lark-cli setup/auth tasks: auth login/status/logout, user vs bot identity, business-domain permissions (--domain, including all/docs/drive), missing scopes, revoking authorization, or handling notice JSON.
lark-im
open.feishu.cn
飞书即时通讯:收发消息和管理群聊。发送和回复消息、搜索聊天记录、管理群聊成员、上传下载图片和文件、管理表情回复、发送应用内/短信/电话加急、发送和处理交互卡片(Interactive Card)、监听卡片按钮回调(card.action.trigger)。当用户需要发消息、查看或搜索聊天记录、下载聊天中的文件、查看群成员、搜索群、创建群聊或话题群、管理标记数据、管理 Feed 置顶(添加/移除/查询置顶会话)、管理标签数据、处理卡片回调时使用。