원클릭으로
cowork-router
// Meta-router for dynamic skill routing. Use when: cowork, skill management, router generation, Skills.toml, plugin configuration
// Meta-router for dynamic skill routing. Use when: cowork, skill management, router generation, Skills.toml, plugin configuration
CRITICAL: Comprehensive guide for CoWork Skills CLI tool. Triggers on: cowork, Skills.toml, skill management, plugin configuration, cowork init, cowork install, cowork config, cowork generate
CRITICAL: Code review skill using GitHub API. Triggers on: review PR, code review, PR review, pull request review, review changes, check this PR, analyze this PR, review #, 代码审查, 审查 PR
CRITICAL: Comprehensive guide for CoWork Skills CLI tool. Triggers on: cowork, Skills.toml, skill management, plugin configuration, cowork init, cowork install, cowork config, cowork generate, cowork audit, cowork verify, cowork test
CRITICAL: Use for generating skills from GitHub repositories. Triggers on: generate skill from repo, create skills from GitHub, cowork generate, generate llms.txt, convert repo to skills, make skills from repository, parse repository, GitHub 转 skill, 从仓库生成 skill, 生成技能, extract API from code
CRITICAL: Use for searching GitHub repositories for skills. Triggers on: search for skills, find skill repositories, cowork search, search GitHub topics, discover skills on GitHub, find repos on GitHub, browse skill repos, 搜索 skill, 查找技能仓库, 搜索仓库, 找技能
CRITICAL: Use for managing agent memory based on CoALA cognitive architecture. Triggers on: remember this, 记住这个, save this info, learn from this, 学习这个, memory system, 记忆系统, knowledge base, what did we learn, 之前学到的, project context, 项目上下文, my preferences, 偏好设置, recall memory, 回忆一下, what do you know about, 你知道什么, forget this, 忘记这个, reflect on, 反思一下, summarize session, 总结会话
| name | cowork-router |
| description | Meta-router for dynamic skill routing. Use when: cowork, skill management, router generation, Skills.toml, plugin configuration |
Meta-router that guides dynamic generation of project-specific skill routers
This is a meta-skill that:
cowork config routerThis skill does NOT hardcode specific plugins - it describes the system for dynamically discovering and routing to installed plugins.
┌─────────────────────────────────────────────────────────────────────────┐
│ Skills.toml (User Config) │
│ [skills.install] │
│ rust-skills = "user/rust-skills" │
│ dora-skills = { path = "/local/dora-skills", plugin = true } │
└─────────────────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────┐
│ cowork config install │
└───────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────┐
│ Skills.lock (Generated) │
│ - Tracks installed plugins, versions, paths │
│ - Records extracted trigger keywords │
└─────────────────────────────────────────────────────────────────────────┘
│
▼
┌───────────────────────┐
│ cowork config router │
└───────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────────────┐
│ .claude/skills/cowork-router/SKILL.md (Dynamic) │
│ - Auto-generated from installed plugins │
│ - Merged trigger keywords from all plugins │
│ - Domain detection table based on actual installations │
└─────────────────────────────────────────────────────────────────────────┘
Each plugin contains skills with SKILL.md files. The frontmatter description field contains trigger keywords:
---
name: rust-router
description: "Triggers on: E0xxx, ownership, borrow, lifetime, async, trait"
---
cowork config router scans all installed plugins and extracts:
rust-router, dora-router)Generates a project-specific cowork-router that:
# Initialize project configuration
cowork config init
# Add plugin dependencies
cowork config add rust-skills ZhangHanDong/rust-skills --plugin
cowork config add dora-dev /path/to/dora-skills --dev --plugin
# Install all dependencies
cowork config install
# Generate dynamic router from installed plugins
cowork config router
# Generate router with auto-trigger hooks
cowork config router --hooks
The dynamically generated router will contain:
---
name: cowork-router
description: "Triggers on: [merged keywords from all plugins]"
---
## Domain Detection
| Domain | Keywords | Route To |
|--------|----------|----------|
| [plugin-1] | [extracted keywords] | [plugin-1-router] |
| [plugin-2] | [extracted keywords] | [plugin-2-router] |
| ... | ... | ... |
All plugin routers should follow this pattern:
┌─────────────────────────────────────┐
│ cowork-router (Meta) │
│ Unified entry - Domain detection │
└───────────────┬─────────────────────┘
│
┌────────────────────────┼────────────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ plugin-router │ │ plugin-router │ │ plugin-router │
│ (Domain A) │ │ (Domain B) │ │ (Domain C) │
└───────┬───────┘ └───────┬───────┘ └───────┬───────┘
│ │ │
▼ ▼ ▼
plugin-skills plugin-skills plugin-skills
When a question spans multiple domains:
Example: "Dora node 中 E0382 错误"
dora-router (dataflow context)rust-skills:m01-ownership (ownership mechanics)| File | Location | Purpose |
|---|---|---|
Skills.toml | .cowork/Skills.toml | User configuration |
Skills.lock | .cowork/Skills.lock | Installed state (auto-generated) |
cowork-router | .claude/skills/cowork-router/ | Dynamic router (auto-generated) |
hooks.json | .claude/skills/cowork-router/ | Auto-trigger hooks (optional) |
Run cowork config router after:
In Skills.toml:
[triggers]
priority = ["dora-router", "rust-router", "makepad-router"]
[triggers.overrides]
"async" = "rust-router"
"widget" = "makepad-router"
Higher priority routers win when keywords conflict.