Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add marketingskills/seo --skill keyword-plannergit clone --depth 1 https://github.com/marketingskills/seoWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/marketingskills/seo/keyword-planner)<a href="https://agentmods.dev/skills/marketingskills/seo/keyword-planner"><img src="https://agentmods.dev/badge/skills/marketingskills/seo/keyword-planner/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/marketingskills/seo/keyword-planner"><img src="https://agentmods.dev/badge/skills/marketingskills/seo/keyword-planner.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00077 | $0.01310 |
| Opus 5 | $0.00039 | $0.00655 |
| Sonnet 5 | $0.00015 | $0.00262 |
| Haiku 4.5 | $0.00008 | $0.00131 |
Grade A, and why
keyword-planner scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 129 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Keyword Planner
Overview
Use the local keyword-planner command to pull Google Keyword Planner ideas and search-volume metrics directly from the Google Ads API. The CLI calls Google's KeywordPlanIdeaService.GenerateKeywordIdeas, which is the API equivalent of the Keyword Planner flow in the Google Ads UI. Prefer this skill when the user asks for keyword volume, keyword ideas, demand validation, CPC/bid ranges, or a keyword list grounded in Keyword Planner rather than SERP estimates or memory.
Google does not charge a separate per-call fee for normal Google Ads API usage, but calls are governed by the developer token's access level and daily operation limits. The user still needs an eligible Google Ads account and approved API access.
Quick Start
Use JSON output by default so results can be filtered, sorted, and summarized reliably:
keyword-planner --keywords "seo tools" "keyword research" --output json
Use a URL seed when the user wants ideas from an existing page or competitor page:
keyword-planner --url "https://example.com/page" --output json
If sandbox policy requires approval for network/API access, request escalation before running the command. The command calls the Google Ads API.
Inputs
Collect or infer:
- Seed keywords with
--keywords, or one seed URL with--url. - Optional
--customer-idifGOOGLE_ADS_CUSTOMER_IDis not already configured. - Optional
--location-ids; default is2840for the United States. - Optional
--language-id; default is1000for English. - Optional existing-content spreadsheet path for exclusion.
Ask for missing seeds if the user provides neither keywords nor a URL. Do not ask for credentials unless the command fails or the user has not configured a Google Ads customer ID.
Access and Credentials
There is no simple "Keyword Planner API key." The required access credential is a Google Ads API developer token, plus authentication credentials for the Google Ads account the CLI should query.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 129 lines · 77 tokens per session scan A c60948304305
keyword-planner is a skill published in the GitHub repository marketingskills/seo (3 stars, last pushed 1mo ago), licensed MIT. It adds 77 tokens to every session and 1,310 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
os-check-work
ALWAYS invoke this skill when the user asks about work done outside this session - "check work", "check the others", "check other sessions" - or to accept one: "the session is done, check it", "can we merge it" - in any language. You are the receiving party: treat the report as a claim, verify each part against…
os-done-or-not
ALWAYS invoke this skill when work wraps up or the user asks how it went - "done or not", "are we done", "what happened", "report", "what's the status of this ticket" - in any language, and when a Stop hook asks for a session report. Produces a ten-line plain- language report: a lead, a checkmark table, and a verdict…
os-step-by-step
ALWAYS invoke this skill when you need the user to act - run a command, paste a secret, click, approve - and whenever they ask how to do something or say they do not know what to do: "step by step", "walk me through it", "what do I do", "what should I do", "I don't understand what to do", "explain what I need to do"…
os-what-could-go-wrong
ALWAYS invoke this skill before anything hard to undo gets agreed to - a contract, a purchase, a migration, a launch, a price change, a reorganisation - and whenever the user asks "what could go wrong", "what are we missing", "poke holes in this", or for a premortem or a red team, in any language. Assumes the decision…
os-whats-next
ALWAYS invoke this skill when the user asks what to do next, what is left, or what is blocked - "what's next", "what now", "what should we work on", "anything I can do" - in any language. This skill picks the next piece of work; when the user asks HOW to do a thing or says they do not understand what to do, that is…
os-big-picture
ALWAYS invoke this skill when the user asks where the project as a whole stands - "where are we", "what's the big picture", "what have we built", "what is in this project", "map the project", "what does this thing even do", "what is stale", "what can we delete", "update the roadmap" - in any language, and whenever a…