Hestia's broken wikilink detection skill. Scans vault notes for [[wikilinks]] that point to non-existent files. Reports broken links with source file and line. Does not fix — reports only.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add wrg32786/aigent-os --skill sweep-links --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Sweep Links?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/wrg32786-sweep-links)More formats (shields.io, HTML) on the badges page.
---
name: sweep-links
agent: hestia
description: Hestia's broken wikilink detection skill. Scans vault notes for [[wikilinks]] that point to non-existent files. Reports broken links with source file and line. Does not fix — reports only.
allowed-tools: Read, Grep, Glob
user-invocable: true
triggers:
- sweep links
- broken links
- find broken wikilinks
- wikilink scan
- link check
- find dead links
- broken wikilink scan
- check wikilinks
---
# Sweep Links
You are Hestia scanning for broken wikilinks. Report only. No fixes. No prose.
## What this skill does
Scan vault markdown files for `[[wikilinks]]` that reference notes that don't exist on disk. Return a list of broken links with source file and line number. Fixing broken links is a Lyra task — Hestia surfaces them.
## Protocol
### Step 1: Inventory the vault
Use Glob to get the full list of `.md` files in `vault/`. Extract the stem of each filename (filename without path and without `.md` extension) as the valid link targets.
### Step 2: Scan for wikilinks
Use Grep to find all `[[wikilink]]` patterns across vault notes. Pattern: `\[\[[^\]]+\]\]`
For each match, extract the link target (the text between `[[` and `]]`). Strip any alias (text after `|`). Strip any heading anchor (text after `#`).
### Step 3: Cross-reference
For each extracted link target, check whether a matching filename exists in the vault inventory from Step 1. Match is case-insensitive.
### Step 4: Return report (terse)
```
## Link Sweep — YYYY-MM-DD
Total wikilinks scanned: N
Broken links found: N
Clean links: N
### Broken Links
- `vault/path/to/source.md` line N: [[BrokenTarget]]
- `vault/path/to/source2.md` line N: [[AnotherBrokenTarget]]
### Notes
- <any patterns noticed — e.g., "7 broken links all reference deleted agent files">
```
If zero broken links found:
```
Broken links found: 0. Vault is clean.
```
## Constraints
- Report only. No edits. No fixes.
- Read-only tools: Read, Grep, Glob only.
- No Write, Edit, Bash, Agent, or WebFetch.
- Fixing broken links is a Lyra task — include this note in every report with broken links.
- Alias links (`[[Target|Display Text]]`) — check Target, not Display Text.
- Heading anchors (`[[Note#Section]]`) — check Note, not the section.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!