Skill2 audit
Use when reviewing one skill or a skill library for structural, safety, linkage, size, or static trigger-boundary problems.From its SKILL.md
npx -y skills add blackblue-labs/skill2 --skill skill2-auditAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
2.2 KB, 452 tokens by cl100k_base, as published. Nobody here has run it
Audit Skill Libraries
Find evidence-backed defects without changing the library.
Scope
| Target | Checks |
|---|---|
| One Skill | Frontmatter, description, links, resources, scripts, secrets, local paths, size |
| Skill Library | Every single-Skill check plus duplicate names, ownership, scope, and static trigger overlap |
Ownership
- Audit owns static structure, safety, references, metadata, and trigger overlap.
- Test owns live activation and outcome behavior.
- Visualize owns inventory/usage/test evidence and conservative lifecycle review candidates.
- Create owns applying approved structural changes.
Method
- Run
uv run --script <skill-dir>/scripts/run -- lint <target> --jsonfirst for a single Skill or a library. Save and use its static findings as evidence. - Manually review what CLI cannot prove: description semantics, ownership, scope, and trigger overlap.
- If CLI is unavailable or fails: state limitation /
inconclusive. Never claim clean. - Do not execute scripts. Do not auto-fix.
Checks
- Missing or invalid
SKILL.mdand frontmatter - Directory/name mismatch
- Workflow summaries or ambiguous triggers in
description - Broken relative links and unused resources
- Non-executable or risky scripts
- Secrets and accidental machine-local paths
- Oversized bodies that should use progressive disclosure
- Static trigger overlap across sibling skills
- Project-only instructions inside a global package
Severity
| Level | Meaning |
|---|---|
| P0 | Install or execution breaks |
| P1 | Triggering or ownership is wrong |
| P2 | Safety or maintenance risk |
| P3 | Cleanup or style debt |
Output
Return severity, file, evidence, impact, and smallest suggested change. Do not apply fixes unless requested.
uv run --script <skill-dir>/scripts/run -- lint skills/<name> --json
uv run --script <skill-dir>/scripts/run -- lint skills --json
uv run --script <skill-dir>/scripts/run -- scan skills/<name> --json
uv run --script <skill-dir>/scripts/run -- scan skills --json
What ships with it: 7 files
32.8 KB alongside SKILL.md, 6 of them executable
scripts/
- runruns901 B
- .runtime-manifest.json942 B
- _runtime/skill2/cli.pyruns13.5 KB
- _runtime/skill2/__init__.pyruns22 B
- _runtime/skill2/lint.pyruns3.6 KB
- _runtime/skill2/models.pyruns6.5 KB
- _runtime/skill2/scan.pyruns7.3 KB
Gives 0 of the 12 instructions most audit compliance skills give in 452 tokens
Counted across 960 of the 1,589 authors here whose files we hold, read 2026-09-06
- Read product marketing context before asking questionsin 29 of 960, across 11 files
- Rank findings by severityin 29 of 960, across 22 files
- Generate audit reportin 22 of 960
- Run the audit scriptin 20 of 960, across 19 files
- Generate a prioritized action plan reportin 19 of 960, across 11 files
- Ensure one H1 per pagein 15 of 960, across 5 files
- Ensure sitemap exists and is accessiblein 14 of 960, across 4 files
- Verify alt text on all imagesin 12 of 960, across 3 files
- Determine the audit scope before startingin 12 of 960, across 4 files
- Verify important pages allowed in robots.txtin 11 of 960, across 2 files
- Detect business type from homepage signalsin 11 of 960, across 7 files
- Delegate specialized tasks to subagentsin 11 of 960, across 7 files
Said here and by no other author read
- Run the lint script first
- Review description semantics and trigger overlap manually
- State limitation if CLI is unavailable
- Return severity, file, evidence, impact, and change
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.