Skill Dispatcher
/install skill-dispatcher
Skill Dispatcher — Universal Skill Router
§0 Configuration (READ FIRST)
Before this skill works, you MUST fill the routing table with YOUR skills:
- Scan
\x3Cavailable_skills>in your system prompt - Run
scripts/coverage_check.py \x3Cskill1> \x3Cskill2> ...— lists uncovered skills - Fill each uncovered skill into the routing table below at
\x3C!-- TODO -->markers - Add 2-5 trigger keywords per skill
- Set frequency (⭐/⭐⭐/⭐⭐⭐) based on how often the skill is used
- Re-run coverage check — should show "All skills covered"
Trigger keyword rules:
- Use phrases the user would naturally say
- Avoid single common words (e.g. "write", "search")
- Test: "If the user said ONLY this phrase, would it match?"
⚡ Direct Hits (FIRST — 2 seconds)
If user message contains an exact keyword match, skip Q1/Q2 and route directly:
| Exact phrase | Direct route |
|---|---|
| \x3C!-- TODO: add 3-6 most common unambiguous triggers --> |
If NOT a direct hit → proceed to decision tree.
🔴 Quick Decision Tree
Q1: Your primary domain?
├─ \x3C!-- TODO: add your most common task categories -->
├─ category_A / trigger_A → skill_A
├─ category_B / trigger_B → skill_B
├─ category_C / trigger_C → skill_C (chain if needed)
└─ ...
⚠️ CHAIN RULE: "→" = read 1st skill, execute, THEN read 2nd.
⚠️ NO chain for non-multi-step tasks.
Q2: Anything else?
→ Scan Full Routing Table below.
→ No match? Proceed normally.
Q3: Enhancer layer? ← auto-apply, not user-requested
After routing to primary skill/tool, check if output needs enhancement:
├─ 生成图/图表/UI/配色 → aesthetic, Color Palette Generator, data-viz-palette
├─ 生成大段文字/解释 → humanizer
├─ 上下文/文件膨胀 → token-optimizer
├─ 复杂多步任务 → agent-planner (先规划再执行)
├─ 被用户纠正/发现错误 → Self-Improving + Proactive Agent
├─ 设计skill/prompt → context-engineering, prompt-engineer
└─ 无增强需求 → skip
⚠️ 🔴 MANDATORY: You MUST open the matched enhancer's SKILL.md.
⚠️ At minimum: read the first section. Skipping = execution failure.
Q4: Background health? ← session-state triggers (every ~10 exchanges)
├─ Context usage >50% or >10 exchanges → token-optimizer
├─ Recent tool failures/timeouts → healthcheck
├─ Bulk file create/delete/reorg → lobster-workspace-guardian
└─ All clear → skip
💡 Check with: session_status (📊 session_status tool)
💡 Not every message — every ~10 exchanges or when things feel off.
🚨 Anti-Forget Gates (backup — when dispatcher NOT loaded)
These are your belt-and-suspenders. If the dispatcher's description didn't match and you're about to take one of these actions raw, this section catches it. If the dispatcher IS loaded, the decision tree already handled routing — skip this.
| You are about to... | STOP and check... |
|---|---|
| Write code / explain algorithm | Any code/algorithm skill you have |
Call web_search |
Search/scraping skills (they have better extraction) |
Call web_fetch |
Web content fetching skills |
| Read/write/clean memory | Memory management skills |
| Delete or reorganize files | Workspace janitor skills |
| Create or modify a skill | Skill creation skills |
| Do anything on GitHub | GitHub skills |
| Generating diagram/image/visual | 🔴 Aesthetic/design skills — read SKILL.md, do NOT skip |
| Writing long explanation/text | 🔴 Humanizer/text quality skills — read SKILL.md, do NOT skip |
| User corrected you / found mistake | 🔴 Self-improvement skills — read SKILL.md, do NOT skip |
🔼 Enhancer Skills (Q3 layer — auto-triggered by output type)
These are NOT standalone skills. They overlay on top of a primary skill/tool. User doesn't need to ask for them — check automatically when output matches:
| Enhancer | Triggers when... | Priority |
|---|---|---|
| \x3C!-- TODO: aesthetic skill --> | Generating image/diagram/visual → improve visual quality | ⭐⭐ |
| \x3C!-- TODO: color palette skill --> | New diagram/chart/UI → pick color scheme | ⭐⭐ |
| \x3C!-- TODO: humanizer skill --> | Writing long text/explanation → make it more natural | ⭐⭐ |
| \x3C!-- TODO: token optimizer skill --> | Context growing / files bloated → trim | ⭐⭐ |
| \x3C!-- TODO: planner skill --> | Complex multi-step task → plan before execute | ⭐⭐ |
| \x3C!-- TODO: self-improvement skill --> | User corrects you / you find a mistake | ⭐⭐⭐ |
📋 Full Routing Table
\x3C!-- TODO: Category 1 — your primary domain -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 2 — memory/knowledge -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 3 — browser/desktop -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 4 — content/search -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 5 — dev/tools -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 6 — workflow -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 7 — design/creative -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
\x3C!-- TODO: Category 8 — system/meta -->
| Trigger | Skill | Freq |
|---|---|---|
| \x3C!-- trigger keywords --> | \x3C!-- skill-name --> | ⭐ |
🔄 Fallback Protocol + Coverage Gap Detection
If NO routing table match but you SUSPECT a skill exists:
- Scan the
\x3Cavailable_skills>list in current context - Coverage check: Compare every skill in
\x3Cavailable_skills>against names in the routing table + Direct Hits.- If a skill exists in
\x3Cavailable_skills>but NOT in this dispatcher → 🚨 uncovered skill detected → trigger New Skill Onboarding
- If a skill exists in
- If still unsure → read
references/skill-capabilities.mdfor full capability details - If the skill doesn't exist locally → search Clawhub or other registries
- If still nothing → proceed with built-in tools
🆕 New Skill Onboarding Protocol
When a new skill is detected, follow the full 6-step protocol: → references/onboarding.md — Detection → Classify → Draft → 3-Round Review → Commit → Log
🔗 System Integration
- Your agent workspace files (SOUL.md, AGENTS.md, TOOLS.md) should reference this dispatcher
- Add a line to your core rules: "每次回复前先问哪个 skill 能处理这个任务?路由细节见 skill-dispatcher"
- The system prompt already instructs "scan available_skills, read matching SKILL.md". The dispatcher makes this scan systematic.
📊 Self-Correction Protocol + Cortex Feedback Loop
When you realize you forgot a skill
- Check if this is a repeat — search memory for prior forgets of this skill
- If first time → no log needed. Just fix the immediate task.
- If 2nd+ time → write a correction entry with: date, skill, task, root cause
- Always fix the immediate task — don't wait for logging.
When you re-read this dispatcher
- Search memory for recent forget patterns
- If any repeated forgets → upgrade their frequency or add to Direct Hits
Why 2-strike threshold?
Writing memory on every single forget creates noise. Only repeated patterns persist.
📖 References
- skill-capabilities.md — Full capability descriptions for reference (fill with YOUR skills)
- onboarding.md — 6-step protocol for integrating new skills
📋 Covered Skills Registry
\x3C!-- Keep this list in sync with routing table + Direct Hits. Used for coverage gap detection. -->
\x3C!-- Last sync: [DATE] -->
\x3C!-- Fill with your skill names: skill1 skill2 skill3 ... -->
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install skill-dispatcher - After installation, invoke the skill by name or use
/skill-dispatcher - Provide required inputs per the skill's parameter spec and get structured output
What is Skill Dispatcher?
Proactive skill router that prevents forgetting available skills. Triggers on any non-trivial task. Routes user intent to available skills via a decision tre... It is an AI Agent Skill for Claude Code / OpenClaw, with 32 downloads so far.
How do I install Skill Dispatcher?
Run "/install skill-dispatcher" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Skill Dispatcher free?
Yes, Skill Dispatcher is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does Skill Dispatcher support?
Skill Dispatcher is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Skill Dispatcher?
It is built and maintained by Miantiao1231 (@miantiao1231); the current version is v1.0.0.