装了一堆 Skill 不知道哪个好用?哪些功能重复?哪些会抢对话?SkillMedic 帮你扫一遍,告诉你该留谁、该合谁、该删谁。
在 TRAE 等 AI IDE 里装了十几个甚至几十个 Skill 之后,你一定遇到过这些问题:
- 🤦 重复功能:装了 3 个"写文档"的 Skill,不知道哪个才是最好的
- ⚔️ 意图冲突:两个 Skill 都声称"我来处理代码审查",AI 不知道该听谁的
- 💥 上下文膨胀:装得越多,AI 每次加载的上下文越大,速度越慢
- ❓ 不知道成熟度:社区搜来的 Skill,看起来很牛但会不会是半成品?
SkillMedic 就是来做这件事的——像老中医体检一样,把你所有的 Skill 从头到尾扫一遍,然后告诉你:谁健康、谁亚健康、谁该治、谁该删。
| 能力 | 说明 |
|---|---|
| 全量清单 | 扫描 workspace + 全局 Skill,产出统一清单(名称/版本/功能域) |
| 三维分类 | 按功能域 / 交互模型 / 生命周期状态自动分类 |
| 五类冲突检测 | C1 同质重复 / C2 意图抢占 / C3 上下文膨胀 / C4 依赖 / C5 资源竞争 |
| 八维成熟度评分 | 0-100 分,L0~L3 四档定级(放心用 / 基本能用 / 不太成熟 / 不建议用) |
| 综合处方 | 保留 / 合并 / 整改 / 移除 四档建议,附带理由 |
| 分档报告 | S1 精细(≤20) / S2 标准(21-80) / S3 摘要(81-300) / S4 极限(>300),少则精多则省 |
直接对 AI 说:
"帮我检查一下当前项目装了哪些 Skill,看看有没有冲突或重复的"
→ AI 自动启动全流程扫描,最终生成 skill-check-report.md。
# ① 工具自检(确认 SkillMedic 本身没问题)
python .trae/skills/skill-medic/medic_tools/run.py ping <project_root>
# ② 一键体检(扫描 + 分析 + 评分 + 处方 + 报告,全流程)
python .trae/skills/skill-medic/medic_tools/run.py report <project_root>
# ③ 分步执行(中间产物落盘到 .medic/)
python .trae/skills/skill-medic/medic_tools/run.py scan <project_root> --save
python .trae/skills/skill-medic/medic_tools/run.py conflict <project_root> --save
python .trae/skills/skill-medic/medic_tools/run.py score <project_root> <skill_name> --save
python .trae/skills/skill-medic/medic_tools/run.py prescribe <project_root> --save## 📋 Skill 健康检查报告
### 总览
- 扫描 Skill 数:18
- L3 放心用:12
- L2 基本能用:4
- L1 不太成熟:2
- 发现冲突:3 组
### ⚠️ 冲突组 #1:文档生成
| Skill | 问题类型 | 建议 |
|-------|---------|------|
| ManualGen | C1 同质 | **保留**(成熟度 L3) |
| cdoc | C1 同质 | **合并进 ManualGen** |
### ✅ 处方建议
- **保留**:ManualGen, conspect, scout, parse, skill-medic, reqplan...
- **合并**:cdoc → ManualGen
- **移除**:style-weaver(功能重复 + 长期未更新)| ✅ 适用 | ❌ 不适用 |
|---|---|
| Skill 装了一堆,想清理一下 | 只装了 2-3 个 Skill(没必要扫) |
| 团队想标准化 Skill 生态 | 写代码/改 bug(用 ReqPlan-v3 去) |
| 评估社区新 Skill 值不值得装 | 生成报表/看板(用 conspect 去) |
| Skill 突然开始打架,查原因 | 生成操作手册(用 ManualGen 去) |
| 定期体检,保持 Skill 生态健康 | — |
| 类型 | 代号 | 含义 | 示例 |
|---|---|---|---|
| 同质重复 | C1 | 两个 Skill 做几乎一样的事 | "生成文档"的 Skill 有 3 个 |
| 意图抢占 | C2 | 触发词重叠,AI 不知道选谁 | "分析"同时命中数据 Skill 和代码 Skill |
| 上下文膨胀 | C3 | 每个 Skill 都带一堆 chunk,加载变慢 | 装了 15 个 Skill,每次对话多 3000 token |
| 依赖冲突 | C4 | A Skill 依赖 B,但 B 又依赖 A 或版本不兼容 | 少见但致命 |
| 资源竞争 | C5 | 同时调用同一个 API/端口/数据库 | 两个 Skill 都想用 Chrome DevTools |
| 维度 | 权重 | 说明 |
|---|---|---|
| 功能完整性 | 高 | 核心功能是否都实现了 |
| 文档质量 | 中 | SKILL.md / README 是否清晰 |
| 错误处理 | 中 | 异常会不会崩、有没有降级 |
| 边界守卫 | 中 | 有没有防止幻觉输出的机制 |
| 可测试性 | 低 | 有没有测试、CLI 工具是否可验证 |
| 版本迭代 | 低 | 最近是否有更新 |
| 依赖健康 | 低 | 依赖库是否维护中 |
| 规范符合 | 低 | 是否遵循 Skill 开发规范 |
四档定级:L3 放心用(≥75) · L2 基本能用(50-74) · L1 不太成熟(25-49) · L0 不建议用(<25)
skill-medic/
├── SKILL.md # 主入口(触发契约 + 执行流程)
├── README.md # 本文件
├── CHANGELOG.md # 版本变更
├── 1-manifest/
│ └── skill-manifest.yaml # Skill 元数据
├── medic_tools/ # CLI 工具层(Python 纯标准库)
│ └── run.py # ping / scan / analyze / conflict / score / prescribe / report
├── agents/ # 7 个 Agent 定义
│ ├── 00-master-controller.md
│ ├── 01-inventory-agent.md # 清单扫描
│ ├── 02-classifier-agent.md # 三维分类
│ ├── 03-conflict-agent.md # 五维冲突检测
│ ├── 04-scorer-agent.md # 八维评分
│ ├── 05-auditor-agent.md # 交叉审核
│ ├── 06-synthesizer-agent.md # 处方综合
│ └── 07-reporter-agent.md # 报告生成
├── protocols/
│ ├── baton-protocol.md # 接力棒协议
│ └── phase-protocol.md # 阶段流转协议
├── references/
│ ├── conflict-catalog.md # 冲突类型详解
│ ├── rubric-detail.md # 评分细则
│ ├── cli-guide.md # CLI 使用指南
│ ├── examples.md # 真实案例
│ └── faq-deep.md # 进阶 FAQ
└── SKILL.chunks/ # 分块按需加载
| 版本 | 核心变化 |
|---|---|
| v0.4.18 | 四档规模分级策略:S1 精细(≤20) / S2 标准(21-80) / S3 摘要(81-300) / S4 极限(>300),候选降噪、摘要报告+每域附录、处方聚合按档自动启用 |
| v0.4.17 | 候选降噪与摘要模式 |
| v0.4.x | 八维评分体系 + 五类冲突检测 |
- Python 3.10+
- 纯标准库(零第三方依赖,开箱即用)
MIT