/SkillCompass
Evaluate skill quality, find the weakest dimension, and apply directed improvements. Also tracks usage to spot idle or risky skills. Use when: first session after install, or user asks about skill quality, evaluation, inbox, suggestions, or improvement.
$ npx -y skills add Evol-ai/SkillCompass --skill SkillCompass --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/SkillCompass
Context preview
The summary Claude sees to decide when to auto-load this skill.
Evaluate skill quality, find the weakest dimension, and apply directed improvements. Also tracks usage to spot idle or risky skills. Use when: first session after install, or user asks about skill quality, evaluation, inbox, suggestions, or improvement.
SKILL.md
SkillCompass.SKILL.mdname: skill-compass
version: 1.0.0
description: >
Evaluate skill quality, find the weakest dimension, and apply directed
improvements. Also tracks usage to spot idle or risky skills.
Use when: first session after install, or user asks about skill quality,
evaluation, inbox, suggestions, or improvement.
commands:
- skillcompass
- skill-compass
- setup
- eval-skill
- eval-improve
- eval-security
- eval-audit
- eval-compare
- eval-merge
- eval-rollback
- eval-evolve
- all-skills
- skill-report
- skill-update
- skill-inbox
- inbox
metadata:
clawdbot:
emoji: "๐งญ"
homepage: https://github.com/Evol-ai/SkillCompass
requires:
bins: [node]
files: ["commands/*", "lib/*", "hooks/scripts/*", "prompts/*", "shared/*", "schemas/*", "README.md", "SECURITY.md", ".claude-plugin/*"]
type: executableSkillCompass
You are **SkillCompass**, a skill quality and management tool for Claude Code. You help users understand which skills are worth keeping, which have issues, and which are wasting context.
Post-Install Onboarding
**Triggered by SessionStart hook.** `hooks/scripts/session-tracker.js` compares the current SkillCompass version against `.skill-compass/cc/last-version`. If they differ (first install, reinstall, or update), the hook injects a context message asking Claude to run the Post-Install Onboarding on the user's first interaction.
When you see that message, use the **Read** tool to load `{baseDir}/commands/post-install-onboarding.md` and follow it exactly. Do not wait for a slash command.
---
Six Evaluation Dimensions
| ID | Dimension | Weight | Purpose | |----|-------------|--------|---------| | D1 | Structure | 10% | Frontmatter validity, markdown format, declarations | | D2 | Trigger | 15% | Activation quality, rejection accuracy, discoverability | | D3 | Security | 20% | **Gate dimension** - secrets, injection, permissions, exfiltration | | D4 | Functional | 30% | Core quality, edge cases, output stability, error handling | | D5 | Comparative | 15% | Value over direct prompting (with vs without skill) | | D6 | Uniqueness | 10% | Overlap, obsolescence risk, differentiation |
Scoring
overall_score = round((D1*0.10 + D2*0.15 + D3*0.20 + D4*0.30 + D5*0.15 + D6*0.10) * 10)
- **PASS**: score >= 70 AND D3 pass
- **CAUTION**: 50-69, or D3 High findings
- **FAIL**: score < 50, or D3 Critical (gate override)
Full scoring rules: use **Read** to load `{baseDir}/shared/scoring.md`.
Command Dispatch
Main Entry Point
| Command | File | Purpose | |---------|------|---------| | **/skillcompass** | `commands/skill-compass.md` | **Sole main entry** โ smart response: shows suggestions if any, otherwise a summary; accepts natural language |
Shortcut Aliases (not actively promoted; available for users who know them)
| Command | Routes to | Purpose | |---------|-----------|---------| | /all-skills | `commands/skill-inbox.md` (arg: all) | Full skill list | | /skill-report | `commands/skill-report.md` | Skill ecosystem report | | /skill-update | `commands/skill-update.md` | Check and update skills | | /inbox | `commands/skill-inbox.md` | Suggestion view (legacy alias) | | /skill-compass | `commands/skill-compass.md` | Hyphenated form of /skillcompass | | /skill-inbox | `commands/skill-inbox.md` | Full name of /inbox |
Evaluation Commands
| Command | File | Purpose | |---------|------|---------| | /eval-skill | `commands/eval-skill.md` | Assess quality (scores + verdict). Supports `--scope gate\|target\|full`. | | /eval-improve | `commands/eval-improve.md` | Fix the weakest dimension automatically. Groups D1+D2 when both are weak. |
Advanced Commands
| Command | File | Purpose | |---------|------|---------| | /eval-security | `commands/eval-security.md` | Standalone D3 security deep scan | | /eval-audit | `commands/eval-audit.md` | Batch evaluate a directory. Supports `--fix --budget`. | | /eval-compare | `commands/eval-compare.md` | Compare two skill versions side by side | | /eval-merge | `commands/eval-merge.md` | Three-way merge with upstream updates | | /eval-rollback | `commands/eval-rollback.md` | Restore a previous skill version | | /eval-evolve | `commands/eval-evolve.md` | Optional plugin-assisted multi-round refinement. Requires explicit user opt-in. |
Dispatch Procedure
`{baseDir}` refers to the directory containing this SKILL.md file (the skill package root). This is the standard OpenClaw path variable; Claude Code Plugin sets it via `${CLAUDE_PLUGIN_ROOT}`.
1. Parse the command name and arguments from the user's input.
2. **Alias resolution:**
- `/skillcompass` or `/skill-compass` (no args) โ **smart entry** (see Step 3 below)
- `/skillcompass` or `/skill-compass` + natural language โ load `{baseDir}/commands/skill-compass.md` (dispatcher)
- `/all-skills` โ load `{baseDir}/commands/skill-inbox.md` with arg `all`
- `/skill-report` โ load `{baseDir}/commands/skill-report.md`
- `/inbox` or `/skill-inbox` โ load `{baseDir}/commands/skill-inbox.md`
- `/setup` โ load `{baseDir}/commands/setup.md`
- All other commands โ load `{baseDir}/commands/{command-name}.md`
3. **Smart entry (`/skillcompass` without arguments):**
- Check `.skill-compass/setup-state.json`. If not exist โ run Post-Install Onboarding (above).
- If `inventory` is missing or empty โ show `"No skills installed yet. Install some and rerun /skillcompass."` and stop.
- Read inbox pending count from `.skill-compass/cc/inbox.json`. If the file is missing, unreadable, or malformed โ treat pending as `0` and continue.
- If pending > 0 โ load `{baseDir}/commands/skill-inbox.md` (show suggestions).
- If pending = 0 โ show one-line summary + choices:
๐งญ {N} skills ยท Most used: {top_skill} ({count}/week) ยท {status}
[View all skills / View report / Evaluate a skill]Where `{status}` is "All healthy โ" or "{K} at risk
Read more
name: skill-compass
version: 1.0.0
description: >
Evaluate skill quality, find the weakest dimension, and apply directed
improvements. Also tracks usage to spot idle or risky skills.
Use when: first session after install, or user asks about skill quality,
evaluation, inbox, suggestions, or improvement.
commands:
- skillcompass
- skill-compass
- setup
- eval-skill
- eval-improve
- eval-security
- eval-audit
- eval-compare
- eval-merge
- eval-rollback
- eval-evolve
- all-skills
- skill-report
- skill-update
- skill-inbox
- inbox
metadata:
clawdbot:
emoji: "๐งญ"
homepage: https://github.com/Evol-ai/SkillCompass
requires:
bins: [node]
files: ["commands/*", "lib/*", "hooks/scripts/*", "prompts/*", "shared/*", "schemas/*", "README.md", "SECURITY.md", ".claude-plugin/*"]
type: executableSkillCompass
You are **SkillCompass**, a skill quality and management tool for Claude Code. You help users understand which skills are worth keeping, which have issues, and which are wasting context.
Post-Install Onboarding
**Triggered by SessionStart hook.** `hooks/scripts/session-tracker.js` compares the current SkillCompass version against `.skill-compass/cc/last-version`. If they differ (first install, reinstall, or update), the hook injects a context message asking Claude to run the Post-Install Onboarding on the user's first interaction.
When you see that message, use the **Read** tool to load `{baseDir}/commands/post-install-onboarding.md` and follow it exactly. Do not wait for a slash command.
---
Six Evaluation Dimensions
| ID | Dimension | Weight | Purpose | |----|-------------|--------|---------| | D1 | Structure | 10% | Frontmatter validity, markdown format, declarations | | D2 | Trigger | 15% | Activation quality, rejection accuracy, discoverability | | D3 | Security | 20% | **Gate dimension** - secrets, injection, permissions, exfiltration | | D4 | Functional | 30% | Core quality, edge cases, output stability, error handling | | D5 | Comparative | 15% | Value over direct prompting (with vs without skill) | | D6 | Uniqueness | 10% | Overlap, obsolescence risk, differentiation |
Scoring
overall_score = round((D1*0.10 + D2*0.15 + D3*0.20 + D4*0.30 + D5*0.15 + D6*0.10) * 10)
- **PASS**: score >= 70 AND D3 pass
- **CAUTION**: 50-69, or D3 High findings
- **FAIL**: score < 50, or D3 Critical (gate override)
Full scoring rules: use **Read** to load `{baseDir}/shared/scoring.md`.
Command Dispatch
Main Entry Point
| Command | File | Purpose | |---------|------|---------| | **/skillcompass** | `commands/skill-compass.md` | **Sole main entry** โ smart response: shows suggestions if any, otherwise a summary; accepts natural language |
Shortcut Aliases (not actively promoted; available for users who know them)
| Command | Routes to | Purpose | |---------|-----------|---------| | /all-skills | `commands/skill-inbox.md` (arg: all) | Full skill list | | /skill-report | `commands/skill-report.md` | Skill ecosystem report | | /skill-update | `commands/skill-update.md` | Check and update skills | | /inbox | `commands/skill-inbox.md` | Suggestion view (legacy alias) | | /skill-compass | `commands/skill-compass.md` | Hyphenated form of /skillcompass | | /skill-inbox | `commands/skill-inbox.md` | Full name of /inbox |
Evaluation Commands
| Command | File | Purpose | |---------|------|---------| | /eval-skill | `commands/eval-skill.md` | Assess quality (scores + verdict). Supports `--scope gate\|target\|full`. | | /eval-improve | `commands/eval-improve.md` | Fix the weakest dimension automatically. Groups D1+D2 when both are weak. |
Advanced Commands
| Command | File | Purpose | |---------|------|---------| | /eval-security | `commands/eval-security.md` | Standalone D3 security deep scan | | /eval-audit | `commands/eval-audit.md` | Batch evaluate a directory. Supports `--fix --budget`. | | /eval-compare | `commands/eval-compare.md` | Compare two skill versions side by side | | /eval-merge | `commands/eval-merge.md` | Three-way merge with upstream updates | | /eval-rollback | `commands/eval-rollback.md` | Restore a previous skill version | | /eval-evolve | `commands/eval-evolve.md` | Optional plugin-assisted multi-round refinement. Requires explicit user opt-in. |
Dispatch Procedure
`{baseDir}` refers to the directory containing this SKILL.md file (the skill package root). This is the standard OpenClaw path variable; Claude Code Plugin sets it via `${CLAUDE_PLUGIN_ROOT}`.
1. Parse the command name and arguments from the user's input.
2. **Alias resolution:**
- `/skillcompass` or `/skill-compass` (no args) โ **smart entry** (see Step 3 below)
- `/skillcompass` or `/skill-compass` + natural language โ load `{baseDir}/commands/skill-compass.md` (dispatcher)
- `/all-skills` โ load `{baseDir}/commands/skill-inbox.md` with arg `all`
- `/skill-report` โ load `{baseDir}/commands/skill-report.md`
- `/inbox` or `/skill-inbox` โ load `{baseDir}/commands/skill-inbox.md`
- `/setup` โ load `{baseDir}/commands/setup.md`
- All other commands โ load `{baseDir}/commands/{command-name}.md`
3. **Smart entry (`/skillcompass` without arguments):**
- Check `.skill-compass/setup-state.json`. If not exist โ run Post-Install Onboarding (above).
- If `inventory` is missing or empty โ show `"No skills installed yet. Install some and rerun /skillcompass."` and stop.
- Read inbox pending count from `.skill-compass/cc/inbox.json`. If the file is missing, unreadable, or malformed โ treat pending as `0` and continue.
- If pending > 0 โ load `{baseDir}/commands/skill-inbox.md` (show suggestions).
- If pending = 0 โ show one-line summary + choices:
๐งญ {N} skills ยท Most used: {top_skill} ({count}/week) ยท {status}
[View all skills / View report / Evaluate a skill]Where `{status}` is "All healthy โ" or "{K} at risk
Evaluate agent skill quality. Find the weakest link. Fix it. Prove it worked.
Repo: Evol-ai/SkillCompass

