Agent skill

Codexqa Skill Router

by openqa-cn in openqa-cn/codexqa

Auto-routes a user request to the matching codexqa skill, then ensures that skill is on disk and follows its SKILL.md.

Apache-2.0Auto-check passedTesting & QA

Install Codexqa Skill Router

skills CLI
$ npx skills add openqa-cn/codexqa --skill codexqa-skill-router -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install openqa-cn/codexqa codexqa-skill-router --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/openqa-cn/codexqa.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/codexqa-skill-router .claude/skills/codexqa-skill-router && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
codexqa-skill-router
GitHub stars
152
Used in
1 other repo
Token cost
~2k tokens
SKILL.md length
929 words
Files
16 (incl. scripts, references)
Skills in repo
14
Repo updated
First seen
Licence
Apache-2.0

At a glance

Auto-routes a user request to the matching codexqa skill, then ensures that skill is on disk and follows its SKILL.md.

  • Works in 6 steps: Discover (mandatory, every turn) → Match the user request → Ensure the winner is installed → …
  • The user is unsure which skill to run
  • SKILL.md covers 1. Discover (mandatory, every…, 2. Match the user request, 3. Ensure the winner is… and 4. Hand off and execute, plus 2 more sections
  • Runs Python scripts from its folder; calls python3 and npx

What it does

Codexqa Skill Router is an agent skill from openqa-cn/codexqa. Auto-routes a user request to the matching codexqa skill, then ensures that skill is on disk and follows its SKILL.md. Use whenever the user is unsure which skill to run, says 帮我选 skill、自动路由、选哪个 skill、不知道用哪个、 route this request、pick the right skill、codexqa 该用哪个, installs only codexqa-skill-router and still needs a worker skill, or describes a verification / QA / testing / review / RCA / requirements / cases / testdata task without naming a skill. Former skill name: skill-router. Matches against live siblings plus…

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 18 other files, including scripts and reference files (for example `.meta.json`, `HOW_IT_WORKS.md` and `HOW_IT_WORKS.zh-CN.md`). Compatibility notes: Requires Python 3.10+ on PATH for discover/ensure scripts (auto re-execs from older system python3). On-demand install needs network (GitHub tarball) or a…

It sits in Testing & QA, covering QA and bug reports. The repository describes itself as: codexqa: 11 local-first Agent Skills for Cursor, Claude Code, Codex & OpenClaw — change impact analysis, AI code review, defect scan, testcase generation, browser replay & RCA. The licence is Apache-2.0.

When your agent uses it

  • The user is unsure which skill to run
  • Says 帮我选 skill、自动路由、选哪个 skill、不知道用哪个、 route this request、pick the right skill、codexqa 该用哪个
  • Installs only codexqa-skill-router and still needs a worker skill
  • Describes a verification / QA / testing / review / RCA / requirements / cases / testdata task without naming a skill

Example prompts

  • “/codexqa-skill-router”

Requirements

  • Python 3
  • Node.js
  • Compatibility (from SKILL.md): Requires Python 3.10+ on PATH for discover/ensure scripts (auto re-execs from older system python3). On-demand install needs network (GitHub tarball) or a local --from-repo checkout; optional npx skills add fallback. Target skills may need their own runtimes (Node, Python 3.10+, codexqa CLI, etc.).

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Discover (mandatory, every turn)
  2. Match the user request
  3. Ensure the winner is installed
  4. Hand off and execute
  5. Done criteria
  6. Boundaries

What it can do on your machine

Read from SKILL.md and the folder at commit 7839542. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 4 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Requires Python 3.10+ on PATH for discover/ensure scripts (auto re-execs from older system python3). On-demand install needs network (GitHub tarball) or a local --from-repo checkout; optional npx skills add fallback. Target skills may need their own runtimes (Node, Python 3.10+, codexqa CLI, etc.).

    From compatibility in the SKILL.md frontmatter.

Context cost

Codexqa Skill Router loads about 2k tokens when it runs, and up to ~6.8k if it reads all its reference files. Until then it costs about 199 tokens; SKILL.md has 929 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~199
When it runs · the whole SKILL.md, loaded when a task matches
~2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~6.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from openqa-cn/codexqa at commit 7839542, republished under its Apache-2.0 licence (© openqa-cn). 929 words, ~2,027 tokens.

Download SKILL.mdSave it as .claude/skills/codexqa-skill-router/SKILL.md (or your agent's skills folder). This skill also uses 15 other files; get the full folder from GitHub.
name
codexqa-skill-router
description
Auto-routes a user request to the matching codexqa skill, then ensures that skill is on disk and follows its SKILL.md. Use whenever the user is unsure which skill to run, says 帮我选 skill、自动路由、选哪个 skill、不知道用哪个、 route this request、pick the right skill、codexqa 该用哪个, installs only codexqa-skill-router and still needs a worker skill, or describes a verification / QA / testing / review / RCA / requirements / cases / testdata task without naming a skill. Former skill name: skill-router. Matches against live siblings plus a bundled catalog so newly published pack skills remain routable; if the winner is not installed, fetch it beside this router (ask once, then ensure_skill.py --yes) and hand off — do not invent a parallel workflow. Not a replacement for any target skill.
compatibility
Requires Python 3.10+ on PATH for discover/ensure scripts (auto re-execs from older system python3). On-demand install needs network (GitHub tarball) or a local --from-repo checkout; optional npx skills add fallback. Target skills may need their own runtimes (Node, Python 3.10+, codexqa CLI, etc.).
license
Apache-2.0
metadata.version
1.2.0

codexqa-skill-router

Agent entry map for discover → match → ensure installed → hand off. Human docs (README.md, HOW_IT_WORKS.md, KNOWN_LIMITATIONS.md and .zh-CN twins) are not loaded at runtime.

This skill does not implement defect scans, case writing, RCA, or data build. It selects a pack skill, makes sure its files exist next to this router, then executes that skill's contract.

1. Discover (mandatory, every turn)

Refresh the match catalog:

bash
python3 <this_skill_dir>/scripts/discover_skills.py --with-catalog
  • Live siblings with SKILL.md appear as source: "live", installed: true.
  • Missing workers still appear from references/catalog.json as source: "bundled", installed: false (for matching only).
  • needsInstall lists names that must be fetched before hand-off.
  • Optional: --skills-root <abs-path> when the pack is not this skill's parent.
  • Self-check: python3 …/discover_skills.py --self-check.

Do not hard-code the worker list in your reasoning — use the JSON. New skills become matchable after catalog.json is refreshed (maintainers: scripts/refresh_catalog.py in a full checkout). codexqa-skill-router is excluded.

If discovery fails entirely (script error), stop and report it. An empty live count is OK when the bundled catalog is non-empty.

Detailed match rules: references/routing-rules.md.

2. Match the user request

Read the user's latest message (and only this-turn attachments they named). Discover still supplies the catalog. Routing does not score by overlapping words in descriptions. Run the decider:

bash
python3 <this_skill_dir>/scripts/suggest_route.py --text "<user message>"

Use --text-file when the message is long. If the script fails, stop and report the error — do not fall back to keyword overlap.

outcomeAction
clear or explicitEnsure + hand off to winner (sections 3–4)
explicit_conflictDo not start the named skill. Show reason and alternatives. Wait
ambiguousAsk once with at most three alternatives and one-line why. Wait
chainPropose steps in order. Ensure/start the first only after confirm
noneSay no catalog skill claimed it; list catalog names; do not invent one

A clear / explicit winner is authoritative. Description text must not override it. In particular, codexqa-defect-analyzer's phrase "review a diff/MR/PR" is an incremental scan scenario. It does not claim 代码评审, code review, PR review, or "review this PR".

Task shape, not the shared verb:

  • 代码评审 / 代码审查 / 走查 / 单文件或整仓评审 / code review / PR·MR review / 审查意见 / 语义评审 / 双语审查 / 证据包 / 合入建议 / 这段代码有没有问题 → codexqa-code-reviewer
  • 缺陷检测 / SAST / 漏洞·密钥·依赖·CVE / 安全基线 / 粘贴或上传代码找漏洞 / report_scan / "review this diff for vulnerabilities" → codexqa-defect-analyzer. 格式化、自动改风格不归这里
  • Both a review report and a scan list, with no order → ambiguous (ask). 先评审再扫描 → chain, reviewer then defect
  • 影响面 / 谁在调用 / 入口风险 / 敏感路径 / 测试缺口 / 有没有单测 / 回归哪些 / 相对 main 变了什么 / 建索引 / 错误定位 / 模块归属 → codexqa-code-analyzer. Those words inside a 代码评审 stay with the reviewer. 补测试缺口 stays here; 补测试 / 写用例 does not
  • 变更分析 / 变更代码分析 / 变更影响报告 / 影响入口 / 召回测试用例 / change impact report, or impact words on one diff (变更 / 改动 / PR / diff / 分支) plus an HTML report or 补上缺的测试 → codexqa-change-analysis. 只要影响面, a report with no diff, or a named analyzer stays with the analyzer; inside a 代码评审 it stays with the reviewer; PRD or 提测 cases stay with the testcase generator; 先…再… stays a chain
  • 架构 wiki / 模块地图 / 模块划分 / 从哪开始读 / 阅读导览 / 仓库导览 / 这个模块是干什么 / wiki inputs → codexqa-code-wiki. Bare 知识图谱 → ask (wiki vs analyzer)
  • 堆栈 / 根因 / 崩溃 / 报错原因 / 线上报错 / 日志里的异常 / 调试输出 / 根因报告 → codexqa-rootcause-analyzer. A call chain or "报错在哪" used to explain that failure stays root-cause
  • 需求评审 / 需求缺口 / 需求歧义 / 需求一致性 / 非功能需求 / 需求能不能测 / requirements review → codexqa-requirement-analyzer, not a code review
  • 测试方案 / 测试分析 / 写用例 / 方案和用例 / 按 PRD 出测试 / 提测前改用例 / 提测后补用例 / test plan → codexqa-testcase-generator. 写单元测试不归这里
  • 造数据 / 用例物料 / 前置账号 / 造一笔订单 / 造数脚本 / 发布成工具 / 回写前置 / OpenAPI 造账号 → codexqa-testdata-generator

When the user names a catalog skill whose own boundary rejects that task shape, outcome is explicit_conflict: warn and offer alternatives. Do not install the rejected fit. Detail: references/routing-rules.md.

Show full SKILL.md (361 more words)Show less

3. Ensure the winner is installed

If the chosen entry has installed: false (or no skillMd on disk):

  1. Tell the user in one sentence that you will install <name> beside codexqa-skill-router so you can follow its contract (network fetch from the codexqa pack, unless a local checkout is available).
  2. If the user refuses, stop and give the manual hint: npx skills add openqa-cn/codexqa --skill <name>.
  3. If they agree (or already said to proceed / auto-route fully), run:
bash
python3 <this_skill_dir>/scripts/ensure_skill.py <name> --yes

Dev / offline: add --from-repo /path/to/codexqa to copy from a local clone instead of the network. Dry-run: omit --yes or pass --dry-run.

  1. Re-run discover_skills.py --with-catalog and confirm the skill is installed: true with a real skillMd path. If ensure failed, show the JSON error and stop — do not invent the worker workflow.

Why ask once: installing copies third-party skill files onto disk. Why still automate: a router that only prints a name does not complete the user's task.

4. Hand off and execute

  1. Announce the choice in one short sentence: skill name + why (+ "installed just now" if ensure ran).
  2. Read the chosen skillMd (and only the references that skill says to load next). Prefer the path returned by discover/ensure — do not rely on the host having re-indexed its skill list yet.
  3. Follow that skill completely for the user's request — same gates, scripts, and artifacts.
  4. Do not re-implement the target skill inside this router. Do not skip its "ask before Exec" or similar stop conditions.
  5. If mid-flight the work clearly belongs elsewhere, stop, re-discover, and re-route (ensure the new winner if needed).

5. Done criteria

Routing is done when either:

  • the chosen skill's own done criteria are met, or
  • you asked a clarification / install-consent question and are waiting, or
  • you reported that no catalog skill fits or ensure failed.

6. Boundaries

  • Does not replace worker skills; it only selects, installs if needed, and follows them.
  • Does not install missing CLIs (codexqa, jq, …); the target skill's compatibility section still applies after hand-off.
  • Does not edit sibling skills as part of routing (install/copy only).
  • Bundled catalog.json may lag a brand-new unpublished skill until refreshed; live siblings still win when present.

© openqa-cn, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 15 other files (scripts, references) in skills/codexqa-skill-router of openqa-cn/codexqa.

  • SKILL.md
  • .meta.json
  • HOW_IT_WORKS.md
  • HOW_IT_WORKS.zh-CN.md
  • KNOWN_LIMITATIONS.md
  • KNOWN_LIMITATIONS.zh-CN.md
  • LICENSE
  • README.md
  • README.zh-CN.md
  • evals/evals.json
  • references/catalog.json
  • references/routing-rules.md
  • scripts/discover_skills.py
  • scripts/ensure_skill.py
  • scripts/refresh_catalog.py
  • scripts/suggest_route.py

Open the folder on GitHubat commit 7839542

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in openqa-cn/codexqa, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Codexqa Skill Router next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Codexqa Skill Router compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Codexqa Skill Router this skillopenqa-cn/codexqa1521 repos~2kAutomated safety check: PassApache-2.0
Codex Plugin QAcode-yeongyu/oh-my-openagent70k1 repos~1.9kAutomated safety check: PassCustom licence
Acceptance Evidence for Deliverieslobehub/lobehub83k—~9.7kAutomated safety check: PassApache-2.0
OpenWork Desktop CDP Driverdifferent-ai/openwork24k—~465Automated safety check: PassCustom licence
Triage IssuesClickHouse/clickhouse-java1.6k—~904Automated safety check: PassApache-2.0
Ironrdp Activex Mstsc TestingDevolutions/IronRDP3.2k—~1.3kAutomated safety check: PassApache-2.0

Similar skills

  • Codex Plugin QA

    code-yeongyu/oh-my-openagent

    Tests the omo Codex plugin in an isolated CODEX_HOME with a local mock model, proving hooks fired through app-server notifications without touching ~/.codex.

    70k GitHub starsUsed in 1 repo~1.9k tokens
    Testing & QAAuto-check passed
  • Verifies a delivery end to end by driving the real product on a CLI, web, desktop or iOS Simulator surface, capturing evidence and publishing a round with the lh CLI.

    83k GitHub stars~9.7k tokensUpdated today
    Testing & QAAuto-check passed
  • OpenWork Desktop CDP Driver

    different-ai/openwork

    Drives a running OpenWork desktop window over CDP from the shell to evaluate JS, take screenshots, start sessions and send prompts for hand checks.

    24k GitHub stars~465 tokensUpdated today
    Testing & QAAuto-check passed
  • Triage Issues

    ClickHouse/clickhouse-java

    Analyzes a single GitHub issue at a time. An agent skill from ClickHouse/clickhouse-java.

    1.6k GitHub stars~904 tokensUpdated today
    Testing & QAAuto-check passed
  • Test IronRDP ActiveX in the real mstsc.exe child launched by MsRdpEx, including the native credential bridge, shell behavior, resize handling, clipboard startup, and bounded UI stress.

    3.2k GitHub stars~1.3k tokensUpdated today
    Testing & QAAuto-check passed
  • Senpi Agent QA Harness

    code-yeongyu/senpi

    Checks changes to the senpi coding agent by driving the real CLI from source in an isolated sandbox, over RPC, terminal UI, mock model and CLI smoke channels.

    472 GitHub stars~2.7k tokensUpdated today
    Testing & QAAuto-check: notes

More from openqa-cn/codexqa

All 14 skills in this repo
  • Codexqa Code Wiki

    openqa-cn/codexqa

    Builds a local architecture wiki for a repository from the CodexQA symbol graph (no model needed): modules, who calls whom and how often, reading paths, and one self-contained HTML page.

    152 GitHub stars~1.3k tokensUpdated 5 days ago
    Auto-check passed
  • Diagnoses exception root causes from stack traces, logs, call-chain dumps, and debug output using the CodexQA CLI for structured repo analysis.

    152 GitHub stars~2.6k tokensUpdated 5 days ago
    Auto-check passed
  • Constructs test data against real backends and writes it back into test cases as executable preconditions.

    152 GitHub stars~4.8k tokensUpdated 5 days ago
    Auto-check passed
  • Generates test plans and test cases from local requirements for APP, Web, and server.

    152 GitHub stars~3.6k tokensUpdated 5 days ago
    Auto-check passed
  • Codexqa Code Reviewer

    openqa-cn/codexqa

    Graph-evidence AI code review (codexqa-code-reviewer) for ANY language repo using ONLY the CodexQA CLI symbol graph (call chains, classes, methods, configs, blast radius, test edges), then an…

    152 GitHub starsUsed in 1 repo~7.2k tokens
    Auto-check: warnings
  • Catalog

    openqa-cn/codexqa

    Constructs catalog products (standard or limited), catalog orders, and account-credit enrollment, including product-then-credit scenes.

    152 GitHub stars~514 tokensUpdated 5 days ago
    Auto-check passed

Questions about Codexqa Skill Router

What does Codexqa Skill Router do?

Auto-routes a user request to the matching codexqa skill, then ensures that skill is on disk and follows its SKILL.md. Codexqa Skill Router is an agent skill from openqa-cn/codexqa.md.

When should I use Codexqa Skill Router?

Codexqa Skill Router fits situations like: the user is unsure which skill to run; says 帮我选 skill、自动路由、选哪个 skill、不知道用哪个、 route this request、pick the right skill、codexqa 该用哪个; installs only codexqa-skill-router and still needs a worker skill; describes a verification / QA / testing / review / RCA / requirements / cases / testdata task without naming a skill.

How do I install Codexqa Skill Router in Claude Code?

Run `npx skills add openqa-cn/codexqa --skill codexqa-skill-router -a claude-code`. Or copy the skill folder (skills/codexqa-skill-router in openqa-cn/codexqa) into .claude/skills/codexqa-skill-router in your project. Claude Code loads it when a task matches its description.

How do I install Codexqa Skill Router in Codex?

Run `npx skills add openqa-cn/codexqa --skill codexqa-skill-router -a codex`. Or copy the skill folder (skills/codexqa-skill-router in openqa-cn/codexqa) into .agents/skills/codexqa-skill-router in your project. Codex loads it when a task matches its description.

Can I use Codexqa Skill Router in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add openqa-cn/codexqa --skill codexqa-skill-router -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/codexqa-skill-router, .gemini/skills/codexqa-skill-router, .github/skills/codexqa-skill-router and .opencode/skills/codexqa-skill-router in your project.

What does Codexqa Skill Router need to run?

Going by SKILL.md and its folder, Codexqa Skill Router needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and npx). Our summary lists: Python 3; Node.js. Compatibility (from SKILL.md): Requires Python 3.10+ on PATH for discover/ensure scripts (auto re-execs from older system python3). On-demand install needs network (GitHub tarball) or a local --from-repo checkout; optional npx skills add fallback. Target skills may need their own runtimes (Node, Python 3.10+, codexqa CLI, etc.). .

Does Codexqa Skill Router access the network?

SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Codexqa Skill Router safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Codexqa Skill Router use?

Codexqa Skill Router is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Codexqa Skill Router use?

About 2k tokens (SKILL.md is roughly 8.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.7k tokens, read only when the agent opens those files.

What are the alternatives to Codexqa Skill Router?

Skills that share tags, products or a category with Codexqa Skill Router: Codex Plugin QA (code-yeongyu/oh-my-openagent, 70k stars), Acceptance Evidence for Deliveries (lobehub/lobehub, 83k stars), OpenWork Desktop CDP Driver (different-ai/openwork, 24k stars) and Triage Issues (ClickHouse/clickhouse-java, 1.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Codexqa Skill Router?

openqa-cn (a GitHub organization) maintains it in openqa-cn/codexqa, which has 152 GitHub stars. The repository holds 14 skills in this directory. The repository was last updated on October 3, 2026.

Source: openqa-cn/codexqa on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.