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 agentmods add skills/cbrock84/headcount/programmatic-seonpx skills add cbrock84/headcount --skill programmatic-seogit clone --depth 1 https://github.com/cbrock84/headcountWrote 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/cbrock84/headcount/programmatic-seo)<a href="https://agentmods.dev/skills/cbrock84/headcount/programmatic-seo"><img src="https://agentmods.dev/badge/skills/cbrock84/headcount/programmatic-seo.svg" alt="Measured on agentmods" 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 | $0.00076 | $0.00515 |
| Opus 5 | $0.00038 | $0.00258 |
| Sonnet 5 | $0.00015 | $0.00103 |
| Haiku 4.5 | $0.00008 | $0.00052 |
Grade A, and why
programmatic-seo 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 3d 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.
What it actually says
Programmatic SEO
Done well, one template covers thousands of real searches. Done badly, it is a mass of thin pages that damages the whole domain.
Qualify before building
All four must hold:
- A real query pattern with verified volume across many instances — not one popular term and a long tail of zeroes.
- Data you actually have, at quality, for most instances. Missing data produces empty pages, and empty pages are the failure mode.
- Genuine per-page value. If two pages differ only by a swapped noun, they are duplicates however they are generated.
- A reason to be better than what ranks now. Usually completeness, freshness, or data nobody else has.
Fail any one and the answer is fewer, better pages.
Building
- Design the best single page first, by hand, and confirm it is genuinely useful. Then find what in it is variable. Templating before you know the good page scales a mediocre one.
- Vary the substance, not just the strings. Each page needs data, comparisons, or context specific to it.
- Set a minimum data threshold. Below it, the page does not get generated. This single rule prevents most programmatic disasters.
- Internal linking is not optional — thousands of orphaned pages will not be crawled. Build hub pages and cross-links into the template.
- Roll out in batches. Publish a few hundred, wait for indexation and performance, then continue. A full launch that goes wrong is hard to unwind.
Maintaining
Stale programmatic pages rot faster than editorial ones because there are so many. Set a refresh cadence tied to the data source, and prune: pages with no impressions after two quarters should be consolidated or removed. Volume is not the goal.
Never
- Generate pages for instances with no data.
- Spin text to create the appearance of uniqueness.
- Launch without a plan for removing what does not work.
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.
- 3d ago First seen · 50 lines · 76 tokens per session scan A 0acdf7b30ade
programmatic-seo is a skill published in the GitHub repository cbrock84/headcount (578 stars, last pushed 4d ago), licensed MIT. It adds 76 tokens to every session and 515 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-30.
Other skills, from other repositories
model-compatibility
Model family compatibility matrix covering loaders, resolutions, samplers, CFG, VAE, ControlNet, and LoRA compatibility for SD 1.5, SDXL, Flux, SD3, and video models.
comfyui-node-registry
Authoring & publishing ComfyUI custom nodes to the Comfy Registry, covering node structure, pyproject.toml spec, comfy-cli publishing, and CI.
mcp-server
Use when exposing Spring Boot 3 application capabilities through Model Context Protocol tools, resources, or prompts. Covers Spring AI 1.x tool callback registration, transports, schemas, errors, security, and standalone MCP Java SDK compatibility.
oauth2-resource-server
Use when configuring Spring Boot as an OAuth2 resource server, validating JWTs from an external auth provider (Keycloak, Auth0, Okta, Cognito), extracting claims, or implementing scope-based authorization.
performance-analysis
Measurement approaches, profiling patterns, bottleneck identification, and optimization guidance. Use when diagnosing performance issues, establishing baselines, identifying bottlenecks, or planning for scale. Always measure before optimizing.
graphify
Use when the user invokes /graphify or asks to build, update, or query a knowledge graph from a folder of files (code, docs, papers, notes, images). Triggers: 'map this codebase', 'graph my notes', 'what is connected across these files', 'community detection', 'GraphRAG', incremental graph update, Neo4j/SVG/GraphML…