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 PavloSEO/seohead-seotools --skill duplicate-auditgit clone --depth 1 https://github.com/PavloSEO/seohead-seotoolsWrote 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/pavloseo/seohead-seotools/duplicate-audit)<a href="https://agentmods.dev/skills/pavloseo/seohead-seotools/duplicate-audit"><img src="https://agentmods.dev/badge/skills/pavloseo/seohead-seotools/duplicate-audit/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/pavloseo/seohead-seotools/duplicate-audit"><img src="https://agentmods.dev/badge/skills/pavloseo/seohead-seotools/duplicate-audit.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.00132 | $0.00978 |
| Opus 5 | $0.00066 | $0.00489 |
| Sonnet 5 | $0.00026 | $0.00196 |
| Haiku 4.5 | $0.00013 | $0.00098 |
Grade A, and why
duplicate-audit 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 9d 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 — 72 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Duplicate Audit — Near-Duplicate and Thin Pages on a Large Site
Comparing N pages pairwise is O(N²); for 10,000 pages, that means 50 million checks. This skill uses simhash + LSH: each page becomes a 64-bit fingerprint, similar pages land in the same "bands," and only candidates are compared. The similarity threshold is configurable.
When to Use It
- Duplicates are suspected on a large site (pagination, filters, copied content, utility pages).
- "Thin pages" / thin content: you need to find pages with little content or identical pages.
- Search-result cannibalization: find pages competing for the same intent.
Workflow
Step 1. Collect page text. There are three sources; choose the one available:
- From an SF crawl (recommended for a large site): take
internal_html.html(orall_bodytextfrom the normalized export) and map each URL to its visible text. - From sitemap + parse (without SF): run
seohead sitemap-crawl --url .../sitemap.xml, then runseohead parseon the URL list, collecting each page'stextfield. - Prepared list:
[{"id": "<url>", "text": "..."}].
Step 2. Find duplicate clusters.
seohead duplicate-check --input '{"items":[{"id":"https://example.com/a","text":"..."},
{"id":"https://example.com/b","text":"..."}], "threshold": 0.92}'
threshold0.92 (the default) means nearly identical. Lower it to 0.85 for "highly similar" pages, or raise it to 0.97 for "strict duplicates."- In the response,
clusters[]contains groups of ≥2 pages, with pairwise similarity within each group and the group'smin_similarity;candidate_pairs_checkedis the number of pairs checked exactly (after LSH filtering).
Step 3. Interpret the results.
- A cluster with
min_similarity = 1.0contains exact duplicates (often utility pages or pagination). Resolution: canonical, redirect, or noindex. - A cluster in the 0.85–0.95 range contains near-duplicates (product pages differing only in color or size). Resolution: make them unique, consolidate them, or canonicalize to the reference page.
- Unique pages with small
textvalues (word_count) are a separate thin-content finding; useparseto check their content volume.
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.
- 9d ago First seen · 72 lines · 132 tokens per session scan A a0584675948e
duplicate-audit is a skill published in the GitHub repository PavloSEO/seohead-seotools (0 stars, last pushed 6d ago), licensed MIT. It adds 132 tokens to every session and 978 once invoked, about $0.0007 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
fire-your-seo-agency
A procedure for improving how a website appears in search engines and how AI answer systems find and cite it. It covers search, answer-engine, generative-AI, and Naver visibility.
geo-loop
Run one bounded eGEOagents loop iteration over a workspace domain - read the charter and fresh collector data, do ONE unit of work, write substrate artifacts, append one Timeline entry and one LOG line. Use for loop mode, /geo:loop, scheduled GEO runs, or continuous monitoring.
content-scoring
Score content against the 10 GEO criteria with evidence and prioritized fixes. Use when users ask to score, rate, evaluate, or estimate ranking strength.
competitive-analysis
Analyze AI-search competitors for a query and recommend ranking strategy. Use when users ask competitor analysis, who ranks, or competitive landscape.
validation-doctor
Check Brave Search and Chrome DevTools MCP availability and provide exact setup snippets. Use when validation dependencies are missing or uncertain.
geo-content-research
Researches what prompts people ask AI engines (ChatGPT, Gemini, Perplexity, Claude) about a product category and produces a prompts.csv artifact — a prioritized, strictly-schema'd list of the queries where the brand should be cited. Feeds the monitor workflow.