link-validation
Universal link validation using lychee for Claude Code sessions. Detect broken links and path policy violations on demand.
Best use case
link-validation is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Universal link validation using lychee for Claude Code sessions. Detect broken links and path policy violations on demand.
Teams using link-validation should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/link-validation/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How link-validation Compares
| Feature / Agent | link-validation | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Universal link validation using lychee for Claude Code sessions. Detect broken links and path policy violations on demand.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Link Validation Skill Validates markdown links in your workspace using [lychee](https://github.com/lycheeverse/lychee). > **Self-Evolving Skill**: This skill improves through use. If instructions are wrong, parameters drifted, or a workaround was needed — fix this file immediately, don't defer. Only update for real, reproducible issues. ## When to Use This Skill Use this skill when: - Checking for broken links in markdown files - Validating link paths before committing documentation - Detecting path policy violations (absolute paths, excessive traversal) ## What It Does When invoked, this skill: 1. **Discovers** all markdown files in your workspace 2. **Runs lychee** to check for broken links 3. **Lints paths** for policy violations (absolute paths, excessive traversal) 4. **Outputs JSON** results for programmatic consumption ## Requirements - [lychee](https://github.com/lycheeverse/lychee) installed (`brew install lychee`) - Python 3.11+ and uv ## Output Results are written to `.link-check-results.md` in your workspace: ```markdown # Link Check Results **Correlation ID**: `01JEGQXV8KHTNF3YD8G7ZC9XYK` ## Lychee Link Validation No broken links found. ## Path Policy Violations No path violations found. ``` ## Path Policy Rules | Rule | Severity | Description | | -------------------- | -------- | -------------------------------------- | | NO_ABSOLUTE_PATHS | Error | Filesystem absolute paths not allowed | | NO_PARENT_ESCAPES | Warning | Excessive `../` may escape repository | | MARKETPLACE_RELATIVE | Warning | Plugins should use `./` relative paths | ## Configuration Override the default lychee config by placing `.lycheerc.toml` in your workspace root. See [config/lychee.toml](../../config/lychee.toml) for the default configuration. ## References - [ADR: Link Checker Plugin Extraction](../../../../docs/adr/2025-12-11-link-checker-plugin-extraction.md) - [Design Spec](../../../../docs/design/2025-12-11-link-checker-plugin-extraction/spec.md) - [lychee Documentation](https://github.com/lycheeverse/lychee) --- ## Troubleshooting | Issue | Cause | Solution | | -------------------- | -------------------- | ---------------------------------- | | lychee not found | Not installed | Run `mise install lychee` | | Too many 403 errors | Rate limiting | Add rate limit to .lycheerc.toml | | Relative path errors | Wrong base directory | Run from repository root | | False positives | Dynamic content | Add URL pattern to exclude list | | Timeout on links | Slow external sites | Increase timeout in config | | Cache issues | Stale cached results | Clear cache with `--no-cache` flag | ## Post-Execution Reflection After this skill completes, check before closing: 1. **Did the command succeed?** — If not, fix the instruction or error table that caused the failure. 2. **Did parameters or output change?** — If the underlying tool's interface drifted, update Usage examples and Parameters table to match. 3. **Was a workaround needed?** — If you had to improvise (different flags, extra steps), update this SKILL.md so the next invocation doesn't need the same workaround. Only update if the issue is real and reproducible — not speculative.
Related Skills
schema-e2e-validation
Earthly E2E validation for YAML schema contracts. TRIGGERS - schema validation, YAML schema, schema contracts, regenerate types.
multi-agent-e2e-validation
Multi-agent parallel E2E validation for database refactors. TRIGGERS - E2E validation, schema migration testing, database refactor validation.
link-validator
Validate markdown link portability in skills. TRIGGERS - check links, validate portability, fix broken links, relative paths.
ml-failfast-validation
POC validation patterns to catch issues before committing to long-running ML experiments. TRIGGERS - fail-fast, POC validation, preflight check, experiment validation, schema validation, gradient check, sanity check, smoke test.
doppler-secret-validation
Validate and test Doppler secrets. TRIGGERS - add to Doppler, store secret, validate token, test credentials.
voice-quality-audition
Audition Kokoro TTS voices to compare quality and grade. TRIGGERS - audition voices, kokoro voices, voice comparison, tts voice, voice quality, compare voices.
settings-and-tuning
Configure TTS voices, speed, timeouts, queue depth, and bot settings. TRIGGERS - configure tts, change voice, tts speed, queue depth, tts timeout, bot config, tune settings, adjust parameters.
full-stack-bootstrap
One-time bootstrap for Kokoro TTS engine, Telegram bot, and BotFather setup. TRIGGERS - setup tts, install kokoro, botfather, bootstrap tts-tg-sync, configure telegram bot, full stack setup.
diagnostic-issue-resolver
Diagnose and resolve TTS and Telegram bot issues. TRIGGERS - tts not working, bot not responding, kokoro error, audio not playing, lock stuck, telegram bot troubleshoot, diagnose issue.
component-version-upgrade
Upgrade Kokoro model, bot dependencies, or TTS components. TRIGGERS - upgrade kokoro, update model, upgrade bot, update dependencies, version bump, component update.
clean-component-removal
Remove TTS and Telegram sync components cleanly. TRIGGERS - uninstall tts, remove telegram bot, uninstall kokoro, clean tts, teardown, component removal.
send-message
Use when user wants to send a text message on Telegram as their personal account via MTProto, text someone, or message a contact by username, phone, or chat ID.