· Route user requests to the right installed skill with minimal loading. Triggers: 'which skill', 'skill routing', 'choose skill', 'skill overlap', 'trigger conflict'. Not for creating skills (use skill-creator).
Route a user request to the smallest useful skill set. Prefer one primary skill. Use a short
ordered set only when the request genuinely spans independent domains.
When to use
User asks which skill applies to a request
A request appears to match multiple skill descriptions
A skill description or trigger list is causing routing confusion
You need to explain why one adjacent skill is a better fit than another
When NOT to use
Creating or rewriting a skill - use skill-creator
Batch improving a collection - use skill-refiner
Capturing feature ideas or competitive backlog items - use roadmap
Implementing domain work after routing - use the selected domain skill
Routing requests to understand or optimize a skill's own trigger text - use skill-creator (Mode 4)
AI Self-Check
Before returning a routing decision, verify:
User intent is stated in one sentence
Hard trigger words were checked against the available skill descriptions
"Not for" routing hints were checked before choosing
One primary skill is selected unless the task truly spans multiple domains
Near misses are explained only when useful
The next action is clear: invoke a skill, ask a question, or proceed without a skill
Current source checked: dated versions, CLI flags, API names, and support windows are verified against primary docs before repeating them
Hidden state identified: local config, credentials, caches, contexts, branches, cluster targets, or previous runs are made explicit before acting
Verification is real: final checks exercise the actual runtime, parser, service, or integration point instead of only linting prose or happy paths
Routing overlap checked: close matches are checked for trigger theft, missing exclusions, and process-skill precedence before the final route
Spec claims verified: claims about installed skills, trigger descriptions, or routing metadata are checked against the current collection
Performance
Read skill metadata first; open full SKILL.md files only for close matches.
Prefer two or three near matches over scanning every reference file.
Stop once the selected skill has enough confidence for the next action.
Best Practices
Route by the user's intended work, not by incidental keywords.
Respect explicit user skill requests even if another skill might also apply.
Use ordered skill sets when process skills must precede domain skills.
Ordered vs Parallel: use Ordered when output of the first skill is input to the second (e.g., a review/reframe step that shapes the domain work). Use Parallel when the subtasks are independent and neither depends on the other's output. A process skill is one whose primary purpose is shaping, evaluating, or transforming intent rather than producing a domain artifact - examples in the installed collection: jekyll-hyde (critical reframing), code-review (evaluation before fixes). See references/routing-patterns.md for examples.
Workflow
Step 1: Restate intent
Reduce the request to one concrete task statement.
Step 2: Identify hard matches
Check skill names, trigger words, file types, tools, and explicit user mentions.
Step 3: Apply exclusions
Read "When NOT to use" and "Not for" hints for close matches. Remove skills whose exclusions fit
the request.
Step 4: Choose the route
Return one of:
Primary: <skill> when one skill is enough
Ordered: <skill-1> -> <skill-2> when a process skill must run before a domain skill
Parallel: <skill-a>, <skill-b> when independent domains can be worked separately
No skill when no available skill materially helps
Step 5: Explain briefly
Give the reason in one or two sentences. Include near misses only if they prevent confusion.
For examples, see references/routing-patterns.md.
Output Contract
See skills/_shared/output-contract.md for the full contract.
Skill name: SKILL-ROUTER
Deliverable bucket:audits
Mode: conditional. When invoked to analyze, review, audit, or improve existing repo content (e.g., a routing-conflict audit across the installed skill set), emit the full contract - boxed inline header, body summary inline plus per-finding detail in the deliverable file, boxed conclusion, conclusion table - and write the deliverable to docs/local/audits/skill-router/<YYYY-MM-DD>-<slug>.md. When invoked to answer a question, teach a concept, build a new artifact, or generate content (its primary routing-decision mode), respond freely without the contract.
Severity scale:P0 | P1 | P2 | P3 | info (see shared contract; only used in audit/review mode).
Related Skills
skill-creator - create, review, or optimize skill files after routing identifies skill-library work.
skill-refiner - batch-improve a skill collection with scoring and iteration; this skill only chooses routes.
full-review and deep-audit - orchestrate repo audits after routing identifies broad review intent.
roadmap - capture product or feature ideas; route there when the request is backlog shaping rather than skill selection.
Rules
Prefer one primary skill.
Do not load reference files during routing unless the main skill file is ambiguous.
Do not invent skills that are not installed.
Do not let broad words like "review", "test", or "frontend" override explicit exclusions.
After routing, stop routing and let the selected skill govern the next work.
1---2name: skill-router-33description: · Route user requests to the right installed skill with minimal loading. Triggers: 'which skill', 'skill routing', 'choose skill', 'skill overlap', 'trigger conflict'. Not for creating skills (use skill-creator).4license: MIT5---67# Skill Router
89Route a user request to the smallest useful skill set. Prefer one primary skill. Use a short
10ordered set only when the request genuinely spans independent domains.
1112## When to use
1314- User asks which skill applies to a request
15- A request appears to match multiple skill descriptions
16- A skill description or trigger list is causing routing confusion
17- You need to explain why one adjacent skill is a better fit than another
1819## When NOT to use
2021- Creating or rewriting a skill - use **skill-creator**
22- Batch improving a collection - use **skill-refiner**
23- Capturing feature ideas or competitive backlog items - use **roadmap**
24- Implementing domain work after routing - use the selected domain skill
25- Routing requests to understand or optimize a skill's own trigger text - use **skill-creator** (Mode 4)
2627---
2829## AI Self-Check
3031Before returning a routing decision, verify:
3233- [ ] User intent is stated in one sentence
34- [ ] Hard trigger words were checked against the available skill descriptions
35- [ ] "Not for" routing hints were checked before choosing
36- [ ] One primary skill is selected unless the task truly spans multiple domains
37- [ ] Near misses are explained only when useful
38- [ ] The next action is clear: invoke a skill, ask a question, or proceed without a skill
39- [ ] **Current source checked**: dated versions, CLI flags, API names, and support windows are verified against primary docs before repeating them
40- [ ] **Hidden state identified**: local config, credentials, caches, contexts, branches, cluster targets, or previous runs are made explicit before acting
41- [ ] **Verification is real**: final checks exercise the actual runtime, parser, service, or integration point instead of only linting prose or happy paths
42- [ ] **Routing overlap checked**: close matches are checked for trigger theft, missing exclusions, and process-skill precedence before the final route
43- [ ] **Spec claims verified**: claims about installed skills, trigger descriptions, or routing metadata are checked against the current collection
4445---
4647## Performance
4849- Read skill metadata first; open full `SKILL.md` files only for close matches.
50- Prefer two or three near matches over scanning every reference file.
51- Stop once the selected skill has enough confidence for the next action.
5253## Best Practices
5455- Route by the user's intended work, not by incidental keywords.
56- Respect explicit user skill requests even if another skill might also apply.
57- Use ordered skill sets when process skills must precede domain skills.
58- **Ordered vs Parallel:** use `Ordered` when output of the first skill is input to the second (e.g., a review/reframe step that shapes the domain work). Use `Parallel` when the subtasks are independent and neither depends on the other's output. A process skill is one whose primary purpose is shaping, evaluating, or transforming intent rather than producing a domain artifact - examples in the installed collection: **jekyll-hyde** (critical reframing), **code-review** (evaluation before fixes). See `references/routing-patterns.md` for examples.
5960## Workflow
6162### Step 1: Restate intent
6364Reduce the request to one concrete task statement.
6566### Step 2: Identify hard matches
6768Check skill names, trigger words, file types, tools, and explicit user mentions.
6970### Step 3: Apply exclusions
7172Read "When NOT to use" and "Not for" hints for close matches. Remove skills whose exclusions fit
73the request.
7475### Step 4: Choose the route
7677Return one of:
7879- `Primary: <skill>` when one skill is enough
80- `Ordered: <skill-1> -> <skill-2>` when a process skill must run before a domain skill
81- `Parallel: <skill-a>, <skill-b>` when independent domains can be worked separately
82- `No skill` when no available skill materially helps
8384### Step 5: Explain briefly
8586Give the reason in one or two sentences. Include near misses only if they prevent confusion.
8788For examples, see `references/routing-patterns.md`.
8990## Output Contract
9192See `skills/_shared/output-contract.md` for the full contract.
9394- **Skill name:** SKILL-ROUTER
95- **Deliverable bucket:** `audits`
96- **Mode:** conditional. When invoked to **analyze, review, audit, or improve** existing repo content (e.g., a routing-conflict audit across the installed skill set), emit the full contract - boxed inline header, body summary inline plus per-finding detail in the deliverable file, boxed conclusion, conclusion table - and write the deliverable to `docs/local/audits/skill-router/<YYYY-MM-DD>-<slug>.md`. When invoked to **answer a question, teach a concept, build a new artifact, or generate content** (its primary routing-decision mode), respond freely without the contract.
97- **Severity scale:** `P0 | P1 | P2 | P3 | info` (see shared contract; only used in audit/review mode).
9899## Related Skills
100101- **skill-creator** - create, review, or optimize skill files after routing identifies skill-library work.
102- **skill-refiner** - batch-improve a skill collection with scoring and iteration; this skill only chooses routes.
103- **full-review** and **deep-audit** - orchestrate repo audits after routing identifies broad review intent.
104- **roadmap** - capture product or feature ideas; route there when the request is backlog shaping rather than skill selection.
105106## Rules
1071081. Prefer one primary skill.
1092. Do not load reference files during routing unless the main skill file is ambiguous.
1103. Do not invent skills that are not installed.
1114. Do not let broad words like "review", "test", or "frontend" override explicit exclusions.
1125. After routing, stop routing and let the selected skill govern the next work.
Run npx skillmds add majiayu000/skill-router-3 in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
· Route user requests to the right installed skill with minimal loading. Triggers: 'which skill', 'skill routing', 'choose skill', 'skill overlap', 'trigger conflict'. Not for creating skills (use skill-creator). It is listed under Coding & Dev Tools on SkillMD.
This skill has not completed SkillMD's automated safety review yet. Capability flags: docs only. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free. This skill is licensed under MIT.
majiayu000 (@majiayu000) published this skill. Their other Agent Skills are listed on their SkillMD profile.