技能网络(skill-net)
v3.0.0分析 OpenClaw 技能生态系统 —— 依赖关系、孤儿检测、生态系统健康评分、影响分析和技能关系。当用户询问技能关系、"什么依赖于 X"、"如果我删除 Y 会有什么影响"、生态系统健康或者想要找到没有触发条件的技能(孤儿)时使用。
运行时依赖
安装命令
点击复制本土化适配说明
技能网络(skill-net) 安装说明: 安装命令:["openclaw skills install skill-net"]
技能文档
OpenClaw Skill Net 分析、映射和诊断OpenClaw技能生态系统 —— 不是技能创建者,而是诊断工具。 核心定位 这个技能回答:我的技能生态系统实际上是如何工作的?它扫描每个SKILL.md,检测依赖关系,评分生态系统健康,并找到孤儿。 模式 模式1:完整分析(默认) 运行完整的生态系统扫描并生成完整的诊断报告。 触发器: "analyze ecosystem"、 "full scan"、 "ecosystem health"、 "skill health"、 "技能生态"、 "生态报告" 语言选项(CLI标志): python3 scripts/analyze_deps.py # 默认:ZH然后EN python3 scripts/analyze_deps.py --lang=ZH # 仅中文 python3 scripts/analyze_deps.py --lang=EN # 仅英文 python3 scripts/analyze_deps.py --lang=BOTH # ZH然后EN(默认) 输出部分: Ecosystem Health Score(0-100)—— 生态健康分 Health Breakdown —— 健康度明细(触发器覆盖、元数据、交叉引用) Core Hubs —— 核心枢纽(被3+技能引用) Bridge Connectors —— 桥接技能 Leaf Skills —— 叶节点技能 Isolated Skills —— 孤立技能 Orphan Skills —— 孤儿技能(有SKILL.md但没有触发条件) Impact Analysis —— 删除影响分析(谁打破了什么) ASCII Ecosystem Map —— 技能生态地图 所有部分以请求的语言(ZH/EN)渲染,具有全双语标签。 模式2:查询 从缓存或新数据中回答特定问题。 触发器: "what depends on X"、 "if I delete Y"、 "who references Z"、 "core skills"、 "most connected skill" 执行: 从data/ecosystem.json中回答或运行新扫描。 模式3:孤儿扫描 找到所有具有SKILL.md但缺少触发条件的技能。 触发器: "find orphans"、 "skills without triggers"、 "dead skills"、 "missing triggers" 输出:孤儿技能列表,包括行数和前置名称。 模式4:比较 并排比较两个技能。 触发器: "compare X and Y"、 "X vs Y dependencies"、 "skill X relationship to Y" 输出:共享提及、关系类型、重叠分析。 关键发现 从真实数据中,生态系统揭示了从随意观察中不可见的结构模式: 发现证据 真正的核心枢纽:review 53个技能引用/review —— 远远最多的连接 qa是次要枢纽 9个技能引用/qa /summarize、 /weather 被2+技能引用 —— 实用锚点 100/123个技能缺少触发条件 许多使用/protocol样式而不是"use when" 生态系统健康:22.6/100 大多数技能缺少元数据和触发条件 review和qa是不可见的枢纽 它们不使用skill-前缀 —— 协议命令 执行步骤(完整分析) 扫描 —— 遍历~/.openclaw/skills/和~/.openclaw/workspace/skills/,读取每个SKILL.md 提取 —— 对于每个技能:前置字段(名称、版本、许可、元数据) 触发器存在(使用何时/触发器/ /protocol) 所有技能名称提及(完整扫描,而不仅仅是已知的slug) 元数据块 构建图 —— 提及(出站)+ 引用_by(入站)对于每个技能 分类 —— 核心(≥3入站)→ 桥接 → 叶节点 → 孤立 检测孤儿 —— 有SKILL.md但没有检测到触发短语 评分健康 —— 加权公式跨4个维度 渲染 —— 双语ASCII报告(ZH/EN)+ 保存data/ecosystem.json + data/report.md 生态系统健康公式 健康评分 = (触发器覆盖 × 30% + 元数据完成 × 20% + 交叉引用 × 20% + 生态系统凝聚力 × 30%) 您的生态系统:22.6/100 —— 健康的改进空间。 什么是真实数据揭示的 令人惊讶的洞察:最连接的节点是协议命令(/review、 /qa),而不是skill-*命名的技能。 这些协议技能是由代码模式引用,如: # 许多技能以此开头: # /review —— 结构化代码审查协议 # /qa —— 质量保证执行协议 这意味着传统的依赖检测(寻找技能-X提及)严重低估了真实的关系。 真实的依赖类型: 命名技能提及 —— skill-factory、 gupiao、 bazi 协议命令引用 —— /review、 /qa、 /careful、 /cso CLI工具引用 —— clawhub、 mmx、 summarize、 weather 不做 不在没有明确用户请求的情况下修改任何技能基于分析 不在没有上下文的情况下发布生态系统地图 —— 它是一个诊断工具 不仅仅因为它们缺少触发短语而将技能称为"破碎" —— 许多使用协议样式激活 不在扫描中包含.git/、 .venv/、 __pycache__/ 质量标准 输出必须: 扫描~/.openclaw/skills/和~/.openclaw/workspace/skills/ 正确识别每个技能的入站和出站引用 检测孤儿(有SKILL.md,无触发短语) 计算生态系统健康评分(0-100) 在120+技能中完成完整扫描,时间少于15秒 将结构化数据保存到data/ecosystem.json + data/report.md 支持通过--lang标志的双语输出(ZH/EN) 好的例子与坏的例子 好的例子: " review(核心枢纽,53入站):/review被53个技能引用。如果删除,这些技能将失去它们的审查协议:gupiao、 proactive-agent、 skill-vetter..." 坏的例子: "这里列出了所有技能,按字母顺序排列" 好的孤儿报告