NotFair Plugin is a collection of open-source SEO, generative-engine-optimization, and marketing workflows that AI agents can follow. It helps agents audit websites, analyze search and advertising data, plan campaigns, and make reviewable marketing changes; the catalogue entries are its skills, instructions, MCP connection, and plugin.
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 nowork-studio/notfair-plugin --skill broken-link-checkergit clone --depth 1 https://github.com/nowork-studio/notfair-pluginWrote 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/nowork-studio/notfair-plugin/broken-link-checker)<a href="https://agentmods.dev/skills/nowork-studio/notfair-plugin/broken-link-checker"><img src="https://agentmods.dev/badge/skills/nowork-studio/notfair-plugin/broken-link-checker.svg" alt="Measured on agentmods" height="20"></a>- NVIDIA SkillSpector pass
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.00072 | $0.00507 |
| Opus 5 | $0.00036 | $0.00253 |
| Sonnet 5 | $0.00014 | $0.00101 |
| Haiku 4.5 | $0.00007 | $0.00051 |
Grade A, and why
broken-link-checker 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 8d 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
Broken Link Checker
You are a technical SEO specialist focused on website health and crawlability. Broken links hurt user experience and waste "crawl budget" from search engines.
Your goal is to identify broken links and provide a clear path to fixing them.
Step 1 — Identify the Target URL
If the user didn't provide a URL, ask:
"Which website should I check for broken links?"
Once you have the URL, store it as $TARGET_URL.
Step 2 — Run the Scan
Run the broken link checker script:
python3 seo/broken-link-checker/scripts/checker.py --url "$TARGET_URL" --max-pages 50
Note: You can adjust --max-pages if the user wants a deeper scan.
Step 3 — Analyze and Report
The script will output a JSON report. Analyze the broken_links array:
- Group by Status: Group 404s (Not Found) vs 5xx (Server Errors).
- Identify Internal vs External: Note if the broken link is on the same domain or an external site.
- Map to Source: For each broken link, identify which page(s) it was found on (
sourcefield).
How to report to the user:
- Summary: "I scanned X pages and found Y broken links."
- High Priority: List broken internal links first (these are entirely under the user's control).
- Secondary: List broken external links.
- Actionable Fixes:
- For internal 404s: "Update the link on [Source Page] to point to the correct URL, or set up a 301 redirect."
- For external 404s: "The external site at [Target URL] is down or moved. Update or remove the link on [Source Page]."
If no broken links are found, congratulate the user on a healthy site!
What ships with it
2 files 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.
- 8d ago First seen · 59 lines · 72 tokens per session scan A 9a76d76e842b
broken-link-checker is a skill published in the GitHub repository nowork-studio/notfair-plugin (3,601 stars, last pushed 2d ago), licensed MIT. It adds 72 tokens to every session and 507 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
apply
Fill out a job application on Greenhouse, Lever, or Workday.
fuse-browser-usage
Use when about to call any mcpfuse-browser tool. Routes fetch/crawl/SERP vs live browser session vs screenshot capture, and enforces the 4 ZERO-TOLERANCE rules -- read BEFORE the tool call.
setup-playwright
Use when adding, extending, or repairing a repo-owned Playwright test harness across Node Playwright Test, Playwright Pytest, or .NET/Java test frameworks. Also use when explicitly persisting @playwright/cli developer tooling, or adding or regenerating Playwright Test Agent definitions for a compatible Node Playwright…
safari-extension-control-workflow
Guide macOS Safari integration decisions across Safari Web Extensions, Safari Web Inspector Extensions, Safari App Extensions, SafariServices APIs, content blockers, extension messaging, and app-to-Safari control surfaces. Use when the user wants a Mac app to extend, message, open, inspect, debug, or coordinate with…
browser-use
Drive a real browser to QA a running app. Screenshots, clicks, forms, evidence. Use when there is no Playwright suite, or when a human flow must be walked.
playwright-testing
Use for explicitly requested live browser investigation with playwright-cli, or for writing, debugging, reviewing, or hardening Playwright tests in an existing working harness across Node, Python, .NET, or Java. Covers flake triage, locator refinement, visual and responsive checks, test structure, fixtures, auth-state…