技能管家 · Skill Curator
Xiaomi MiMo(小米 MiMo)/ DeepSeek(深度求索)/ Qwen(通义千问)/ MiniMax / OpenAI 多模型驱动的 AI 技能(skills)管理器。
一个 VS Code 扩展:自动扫描你本机所有 coding agent(Claude Code、Codex、GitHub Copilot、Gemini、OpenCode)下的 skills(技能),调用你配置的大模型做质量诊断(分级 + 跨技能重叠检测),并以只增不删的软链接方式把技能同步到所有 agent。可在多家模型之间一键切换:MiMo、DeepSeek、Qwen(通义千问)、MiniMax、OpenAI。
- 🔍 一处总览所有 agent 的全部技能
- 🩺 大模型诊断:用 MiMo / DeepSeek / Qwen / MiniMax / OpenAI 评估技能描述与触发词、检测重复重叠
- 🔁 跨 agent 同步技能(只增不删,先 dry-run 预览再确认)
- 🤝 一键把技能交给右侧的 Copilot / Claude Code 去优化
关键词 / keywords:技能管理、skill manager、MiMo、Xiaomi MiMo、小米 MiMo、小米大模型、DeepSeek、深度求索、Qwen、通义千问、MiniMax、OpenAI、ChatGPT、Claude Code、Codex、GitHub Copilot、Gemini、OpenCode、Kimi、大模型、LLM、AI agent、SKILL.md。
诊断用的是你自己配置的大模型 API(OpenAI 兼容端点),API key 只存在本机,不随扩展发布。
Skill Curator (English)
Inventory, LLM-diagnose, and add-only sync the skills installed for your coding
agents — all from one VS Code sidebar. Built to manage a large, multi-agent
skill library and then hand individual skills off to Copilot / Claude Code for
editing.
Features
- Inventory — scans skills across Claude, Codex, Copilot, Gemini, and
OpenCode (user dirs plus Claude/Codex plugin layers), grouped in a sidebar
tree.
- LLM diagnosis — runs your configured OpenAI-compatible model over each
skill and tags it
attention / improve / good with a short note, plus a
whole-library overlap pass that flags duplicate or trigger-conflicting
skills.
- Static health checks — broken symlinks, missing/unparseable
SKILL.md,
name↔directory mismatch, cross-surface drift, stale plugin cache. These work
without any LLM configured.
- Add-only sync — mirrors user-level skills into every enabled agent via
symlinks. It shows a dry-run preview and asks for confirmation, never
overwrites or deletes, and only ever creates missing links.
- Hand-off — open a skill's
SKILL.md, or copy a diagnosis-laden prompt and
send it to your Copilot / Claude Code chat to do the actual editing.
Requirements
- VS Code 1.90+
- For diagnosis: an OpenAI-compatible chat endpoint (any provider). Inventory
and static health checks work without it.
Configuration
| Setting |
Description |
skillCurator.llm.baseUrl |
OpenAI-compatible base URL, e.g. https://…/v1 |
skillCurator.llm.model |
Model name used for diagnosis |
skillCurator.llm.apiKeyEnv |
Optional env var name to read the API key from if SecretStorage is empty |
skillCurator.surfaces |
Which agents to scan/sync (default: all five) |
skillCurator.diagnose.concurrency |
Max concurrent diagnosis calls (default 4) |
The API key is not a setting. Store it with the "Skill Curator: Set LLM
API Key" command (kept in VS Code SecretStorage), or point
skillCurator.llm.apiKeyEnv at an environment variable.
Commands
- Skill Curator: Refresh — re-scan skills
- Skill Curator: Diagnose All Skills — run LLM diagnosis + overlap
- Skill Curator: Diagnose This Skill — diagnose one (picks from a list)
- Skill Curator: Sync Skills to All Agents — dry-run preview, then add-only sync
- Skill Curator: Set LLM API Key — store the key in SecretStorage
Privacy
Diagnosis sends each skill's name, description, trigger phrases, and a truncated
body excerpt to the LLM endpoint you configure. Nothing is sent anywhere
else. Sync only touches your local filesystem.
Development
npm install
npm run build # esbuild bundle → dist/extension.js
npm test # vitest (core / llm / sync)
npm run typecheck # tsc --noEmit
Press F5 to launch the Extension Development Host.
License
MIT