pulser
Diagnose and test Claude Code skills against Anthropic's 7 principles. Scans SKILL.md files, checks 8 rules (gotchas, description, allowed-tools, file-size, structure, frontmatter, conflicts, usage-hooks), classifies skill types, generates prescriptions, and runs eval tests. Use when checking skill quality, auditing skills, testing skills, or before publishing skills. Triggers on "스킬 점검", "스킬 진단", "스킬 테스트", "check skills", "audit skills", "test skills", "skill health", "pulser", "pulser eval".
install
source · Clone the upstream repo
git clone https://github.com/TheStack-ai/pulser
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/TheStack-ai/pulser "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skill" ~/.claude/skills/thestack-ai-pulser-pulser && rm -rf "$T"
manifest:
skill/SKILL.mdsource content
Pulser — Skill Diagnostics & Testing
Run pulser to diagnose and test Claude Code skills, then present results conversationally.
How to Run
pulser --format json ~/.claude/skills/
If
pulser is not installed globally, use:
npx pulser-cli --format json ~/.claude/skills/
For a single skill:
pulser --format json --skill <name> ~/.claude/skills/
How to Present Results
- Run the command above and capture JSON output
- Parse the JSON result
- Present a conversational summary:
- Total skills, score, healthy/warning/error counts
- Top issues (max 5) with skill name + issue
- "Fix these issues?" prompt
- If user says yes, apply prescriptions one by one:
- Show the before/after diff
- Ask for confirmation
- Apply via Edit tool (NOT via --fix flag — you have more context than the CLI)
Summary Format
스킬 진단 완료: 📊 30개 스킬 스캔 | Score: 76/100 ✓ 22 healthy ⚠ 6 warnings ✗ 2 errors 주요 이슈: 1. cardnews — Gotchas 없음, allowed-tools 미설정 2. geo-audit — 338줄 단일파일, Gotchas 없음 3. detailpage — Gotchas 없음, allowed-tools 미설정 고칠까요?
When Fixing
Use the prescription data from JSON. For each fix:
- Read the actual SKILL.md file
- Apply the suggested change using Edit tool
- Verify the change makes sense in context
- You can improve on the template prescriptions — you understand the skill's purpose
Eval — Skill Testing
Run
pulser eval to test skills that have eval.yaml files:
pulser eval --format json
For a single skill:
pulser eval --format json --skill <name>
Present eval results conversationally:
- Total tests, passed, failed, regressions
- Failed test details with assertion info
- Regression warnings (previously passing tests that now fail)
Gotchas
- Do not dump raw JSON to the user — always summarize conversationally
- If pulser is not installed, suggest
firstnpm install -g pulser-cli - For --fix operations, use Edit tool directly rather than CLI --fix (you have better context)
- Score below 50 is critical — highlight urgently
- Don't fix all skills at once — group by priority, confirm with user
- Eval only works for text-output skills (analysis, research, generation, reference) — execution-type skills cannot be tested this way
- Eval requires Claude Code CLI installed (
must be available)claude -p