Skip to content
Back to skills

Open Skill Router

ASecurity

Picks which installed skills to use for a task and in what order, from the user's IT role and the project's state (spec-kit, BMad, superpowers, codegraph), then starts the first skill. Use when starting a new project or multi-step work (specify, plan, build, test, review) with no skill named; when the user asks which skill, which workflow or which sequence of skills to use, or where to start; when several installed workflows could fit; or when they state their role (data engineer, frontend, S...

  • 8 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 29, 2026
ai-agentsgobashcode-reviewgitfrontend

Works with

  • claude code
  • cursor
  • cli

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned October 5, 2026

npx -y skills add VoKhoiNhon/open-skill-standard --skill open-skill-router --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Open Skill Router?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Open Skill Router
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vokhoinhon-open-skill-router/badge)](https://www.skillsdirectory.com/skills/vokhoinhon-open-skill-router)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: open-skill-router
description: Picks which installed skills to use for a task and in what order, from the user's IT role and the project's state (spec-kit, BMad, superpowers, codegraph), then starts the first skill. Use when starting a new project or multi-step work (specify, plan, build, test, review) with no skill named; when the user asks which skill, which workflow or which sequence of skills to use, or where to start; when several installed workflows could fit; or when they state their role (data engineer, frontend, SRE, product manager). Also for "route this task".
---

# Open Skill Router

Your job is to turn a request into a short, ordered chain of the right skills and start on it. The chain matters because this machine may have many overlapping skills (several build workflows, several reviewers); mixing workflows corrupts their artifacts and wastes the user's time.

`open-skill` below means the CLI. If it is not on PATH, run it as
`uvx --from git+https://github.com/VoKhoiNhon/open-skill-standard@v0.7.4 open-skill`.

## 1. Classify, then route

You have read the conversation; the CLI sees one sentence. So decide first where the work starts and how big it is.

Phase, one of:
- `discover` (an idea, "should we", "what if")
- `research` (compare options, learn how something works)
- `specify` (requirements, a spec, user stories)
- `plan` (a design or task breakdown before code)
- `build` (new or changed code or data)
- `verify` (test it, check the numbers)
- `review` (look over code, a pull request or designs)
- `release` (ship, deploy, release notes)
- `operate` (something is broken, slow, wrong, empty or down, even when nobody says "bug")
- `learn` (a retro, a postmortem, something to remember)

Size: `small` (a one-line, mechanical or clearly bounded change), `medium`, or `large` (a new app or system).

Then run, from the project root:

```bash
open-skill route "<the user's request, in their words>" --phase <phase> --size <size> --project . --model <your model id> --agent <agent id> [--role <role>]
```

Pass `--phase` and `--size` when the conversation makes them clear; leave either out when you are unsure, and the CLI falls back to keyword detection. If the output says `"phase_from": "guessed"`, no keyword matched and the phase is a default: check it against the request and route again with `--phase` if it is wrong.

`--agent` is the coding agent you are running in (`claude-code`, `codex`, `cursor`, `gemini-cli`, `github-copilot`, `opencode`, `goose`, `windsurf`, `amp`; `open-skill agents` lists them). The chain then holds only skills that agent can load, under the names it invokes them by; leave it out if you are unsure. Pass `--model` only with the exact id your runtime gives you, not a guess; without it the CLI uses a generic profile. Pass `--role` only when the user stated one, as a role id from `references/roles/README.md` (`frontend-developer`, not `frontend`); otherwise the CLI uses their saved profile or project signals. The JSON output has `route_id` (for step 4), `chain` (ordered steps with `invoke`, `phase`, `why`, `effort`), `knowledge` (the user's lessons and preferences that apply), `missing` (useful skills that are not installed or need a project init), `advice`, and `model` (notes for the model you are running on).

## 2. Check it against the real request

The CLI ranks by your phase and size, the role, text relevance and project state; you read the request itself. Drop a step that clearly does not serve the request, or add one the user asked for. Keep one build workflow: spec-kit, BMad and superpowers build steps never appear together, and the project's own framework (`.specify/` or `_bmad/`) wins.

If `advice` is `do directly`, skip the chain and just do the task.
If a step has `ask`, it lists the two skill ids whose scores are close: ask the user one question with those two options.

## 3. Announce in one line, then start

Tell the user the chain in one line, plus any `knowledge` item that changes how you will work, for example:

> Chain: speckit-plan → speckit-implement → data:validate-data → code-review. Applying your note: backfill in bounded batches.

Then load and follow the first skill the way your agent runs skills (in Claude Code, the Skill tool). For `missing` items, mention the install or init command in one line; running project init commands (`specify init`, `bmad setup`, `codegraph init`) is the user's decision.

Apply the `model.addenda` lines for the rest of the session; they are prompting notes measured for the model you are running on.

## 4. Record what happened

When the chain is finished (or abandoned), record which skills actually ran, so future routes learn the user's habits:

```bash
open-skill feedback <route_id> --ran <invoke1,invoke2,...> --outcome ok|fail [--note "<why>"]
```

If the user corrected the route ("use superpowers here, not spec-kit"), that correction is exactly what feedback is for; for a lasting preference also use the `open-skill-learn` skill.

## Without the CLI

If `uv`/`uvx` is unavailable or the command fails, route by hand:

1. Identify the role from the user or the project, then read `references/roles/<role>.md` (index: `references/roles/README.md`).
2. Start at the phase you classified in step 1 and add the phases it needs. For build work: a small change is done directly; if the playbook says "Build tasks for this role walk ...", use those phases; otherwise large work starts at specify and medium at plan, then build, verify and review, skipping ahead past a spec, plan or tasks file the project already has. A large plan without a spec starts at specify; operate is followed by build and verify; release comes after verify; every other phase stands alone.
3. For each phase, take the first primary skill that is installed; use an alternative only if no primary is.
4. Announce and start as above; there is no route to record feedback for.

Files in this skill

  • SKILL.md5.4 KB
  • references/roles/README.md3.6 KB
  • references/roles/ai-engineer.md3.8 KB
  • references/roles/analytics-engineer.md3.7 KB
  • references/roles/backend-developer.md3.7 KB
  • references/roles/business-analyst.md3.5 KB
  • references/roles/cloud-engineer.md3.2 KB
  • references/roles/data-ai-platform-engineer.md3.8 KB
  • references/roles/data-analyst.md3.3 KB
  • references/roles/data-engineer.md4.2 KB
  • references/roles/data-scientist.md3.6 KB
  • references/roles/database-administrator.md3.4 KB
  • references/roles/devops-engineer.md3.5 KB
  • references/roles/embedded-engineer.md3.5 KB
  • references/roles/engineering-manager.md3.3 KB
  • references/roles/frontend-developer.md3.9 KB
  • references/roles/fullstack-developer.md3.6 KB
  • references/roles/game-developer.md3.5 KB
  • references/roles/ml-engineer.md3.5 KB
  • references/roles/mobile-developer.md3.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…