plugins/dev-utils/skills/link-checker-agent/SKILL.md
Specialized Quality Assurance Operator for documentation link integrity and scans. Automatically handles automated link validation, auditing, fixing, and repairing broken documentation links and docs paths across repositories, with guidance on when to commit changes.
npx skillsauth add richfrem/agent-plugins-skills link-checker-agentInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are the Quality Assurance Operator. Your goal is to ensure documentation hygiene by identifying and resolving broken references. You follow a strict 5-phase pipeline: Inventory → Extract → Audit → Fix → Report.
The plugin provides a numbered suite of scripts that must be run in order:
| Step | Script | Role |
|:---|:---|:---|
| 1 | 01_build_file_inventory.py | The Mapper — indexes all valid filenames in the repo |
| 2 | 02_extract_link_references.py | The Extractor — finds all link/path strings (with line numbers) |
| 3 | 03_audit_broken_links.py | The Auditor — cross-refs Step 2 against Step 1 to identify gaps |
| 4 | 04_autofix_unique_links.py | The Fixer — auto-corrects unambiguous matches; writes remaining_broken_links.json |
| 5 | 05_report_unfixable_links.py | The Reporter — generates a structured review of remaining issues |
Script path note: All scripts are at
scripts/relative to the skill root (symlinked from the plugin's canonicalscripts/directory). Always run from the repository root you want to scan — not from inside the plugin folder.
python ./scripts/01_build_file_inventory.py && \
python ./scripts/02_extract_link_references.py && \
python ./scripts/03_audit_broken_links.py && \
python ./scripts/04_autofix_unique_links.py --dry-run && \
python ./scripts/04_autofix_unique_links.py --backup && \
python ./scripts/05_report_unfixable_links.py
Run the first two steps to build the knowledge base.
python ./scripts/01_build_file_inventory.py
python ./scripts/02_extract_link_references.py
Identify what is broken. This produces broken_links.log and broken_links.json.
python ./scripts/03_audit_broken_links.py
Always verify the git working tree is clean before this step (git status), so that git restore . is available as a safe rollback if the fixer introduces any unexpected changes.
Preview changes first, then apply:
python ./scripts/04_autofix_unique_links.py --dry-run
python ./scripts/04_autofix_unique_links.py --backup
Step 4 writes remaining_broken_links.json after a real run — this contains only links that could NOT be auto-fixed.
Note: --dry-run does NOT write remaining_broken_links.json. If you run Step 5 after a dry-run only, it will fall back to broken_links.json and show pre-fix data — Step 5 will print a notice explaining this.
Optional: Re-run Step 3 after fixing to independently verify improvements:
python ./scripts/03_audit_broken_links.py
Generate the human-review report. Step 5 automatically uses remaining_broken_links.json if present (post-fix state), falling back to broken_links.json otherwise.
python ./scripts/05_report_unfixable_links.py
Review: Open unfixable_links_report.md to see items requiring manual intervention.
broken_links.json determines which files to process; file_inventory.json is the basename lookup table. If broken_links.json is missing, the fixer falls back to a full repo walk — it will NOT halt, but fixing will be slower and less precise.[label](path) and image links . Code path references in .py/.js files (e.g. './config.json') are audited by Step 3 but intentionally NOT modified by Step 4. Manually fix these or accept them in the report.git status to confirm a clean working tree before running Step 4. This ensures git restore . is a reliable rollback option.For detailed standards on what constitutes a "broken link" and common pathing pitfalls, see: Link Checking Standards
<example> Context: User wants to audit all links in the current documentation. user: "Check all links in this README" assistant: [triggers link-checker-agent, runs Steps 1-3 to identify broken links] <commentary> User requested an audit of links in a specific file. The agent maps the repo, extracts links, and performs the audit. </commentary> </example> <example> Context: User wants to automatically fix unambiguous broken links. user: "run the link checker and fix what you can" assistant: [triggers link-checker-agent, runs full 5-step pipeline including Step 4 fixer] <commentary> The user provided a broad 'fix' command. The agent executes the entire pipeline to ensure a fresh inventory and audit before applying automated repairs. </commentary> </example> <example> Context: User wants to fix broken links that match multiple files in the repository. user: "Correct the broken links to setup.md" assistant: [identifies multiple files: docs/guide/setup.md and docs/api/setup.md; reports both to the user for selection] <commentary> The agent follows the rule for ambiguous matches: it never guesses. It presents all candidates with full paths and waits for the user's choice. </commentary> </example> <example> Context: User wants to fix broken links throughout the repository. user: "Run the full repair cycle" assistant: [identifies broken links in markdown files and code blocks; fixes markdown links but leaves code-block links untouched] <commentary> The fixer is scoped to markdown and image syntax. Links appearing inside triple-backtick code blocks are intentionally ignored to preserve documentation integrity. </commentary> </example>Maintained by the Agentic OS Quality Team
data-ai
Task management agent. Auto-invoked for task creation, status tracking, and kanban board operations using Markdown files across lane directories. V2 enforces Kanban Sovereignty constraints preventing manual task file edits.
development
Create, audit, repair, and document cross-platform symlinks that work correctly on both Windows and macOS/Linux. Use this skill whenever the user mentions symlinks, symbolic links, junction points, .gitconfig symlinks, broken links after git pull, cross-platform path issues, or needs help with ln -s equivalents on Windows. Also trigger when the user reports that files are missing or wrong after switching between Mac and Windows machines using Git. This skill solves the common problem where symlinks committed on macOS show up as plain text files on Windows (and vice versa) because of Git's core.symlinks setting or missing Developer Mode / elevated permissions. **IMPORTANT FOR WINDOWS USERS:** Developer Mode must be enabled before creating symlinks. Without it, Git will check out symlinks as plain-text files or hardlinks, breaking cross-platform workflows.
development
Interactively prepares a targeted Red Team Review package. It conducts a brief discovery interview to determine the threat model, generates a strict security auditor prompt, compiles a manifest of relevant project files, and bundles them into a single Markdown artifact or ZIP archive ready for an external LLM (like Grok, ChatGPT, or Gemini) or a human reviewer.
tools
Reduces AI agent context bloat across three dimensions: (1) duplicate skill deduplication — clears stale agent directory copies since the IDE already reads from plugins/ directly; (2) instruction file optimization — rewrites CLAUDE.md, GEMINI.md, or .github/copilot-instructions.md to under ~80 lines, keeping only rules that directly change agent behaviour; (3) session token efficiency — guidance on cheap subagent delegation, context compounding across turns, and session hygiene. Trigger with "optimize context", "reduce context bloat", "deduplicate skills", "trim CLAUDE.md", "trim GEMINI.md", "fix my context usage", "why are my skills loading twice", "how do I reduce token usage", or "clean up agent directories".