V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
Aleks
V2EX  ›  分享创造

Skill 分析工具

  •  
  •   Aleks ·
    AleksChen · 6 天前 · 888 次点击

    Skill Taxonomy

    把 OpenClaw 技能库“一次看全、一次看透”的技能分类分析工具。

    skill-taxonomy 用来扫描整套 skill 目录,自动识别技能所处的架构层级,梳理依赖关系,发现路由冲突、能力重复和抽象缺失,并最终生成一份可交互的 HTML 分析报告,帮助你快速看清整个技能系统的结构健康度。

    它输出的报告主要包含两部分:

    • Graph 视图:展示分层后的技能拓扑结构
    • Analysis 视图:展示冲突、重复、违规项、缺失抽象以及建议动作

    这个仓库被单独开源出来,是为了让这套 taxonomy 分析流程可以脱离私有工作区,独立复用、持续迭代,也方便团队协作和社区共建。

    效果预览

    Graph 视图

    Skill Taxonomy Graph view

    Analysis 视图

    Skill Taxonomy Analysis view

    为什么需要这个仓库

    随着 skill 数量不断增长,系统的“可维护性”和“可路由性”通常会先变差,但团队往往很晚才意识到问题。常见症状包括:

    • 多个 skill 同时命中同一类 prompt ,路由变得模糊
    • workspace 内的副本和根目录 skill 逐渐漂移,行为不一致
    • 编排类 skill 绕过已有抽象,直接硬连底层能力
    • 已废弃或遗留 skill 长期残留,持续干扰路由判断

    skill-taxonomy 的价值,就是把这些平时不易察觉的结构问题,一次性可视化出来。

    它不再只是给你一个平铺的文件夹列表,而是给你一个“技能系统结构图”,让你能快速回答下面这些关键问题:

    • 每个 skill 的核心职责到底是什么
    • 它属于哪一层架构
    • 它依赖了哪些其他 skill
    • 哪些重叠、误分类或错误依赖,正在拖累系统稳定性

    它会产出什么

    整个流程会生成两类核心产物:

    1. 机器可读的 JSON 分析文件
    2. 可交互的 HTML 报告

    其中,HTML 报告默认包含以下能力:

    • L2 / L1 / L0 分泳道展示技能图谱
    • 支持按 workspace 过滤
    • 点击 skill 时高亮依赖链路
    • 提供指标看板
    • 审查路由冲突
    • 审查分层违规
    • 审查能力重复
    • 识别缺失抽象
    • 给出按优先级排序的行动建议

    分层模型

    taxonomy 使用三层架构模型:

    • L0 - Infrastructure & Connectors 通用能力层,负责基础设施、外部系统接入与底层通道能力
    • L1 - Domain Knowledge & Data 领域知识层,负责行业规则、指标体系、结构化检索与数据转换
    • L2 - Task & Workflow Orchestration 任务编排层,负责把多个步骤串起来,完成端到端交付

    这套分层不仅用于可视化展示,也会被用于检测架构违规,例如高层是否直接越层依赖底层实现、某些 skill 是否放错层级等。

    仓库结构

    skill-taxonomy/
    ├─ README.md
    ├─ LICENSE
    ├─ .gitignore
    ├─ SKILL.md
    └─ scripts/
       └─ generate_graph.py
    

    工作流程

    核心分析流程定义在 SKILL.md 中,整体步骤如下:

    1. 扫描根目录和各 workspace 下的所有 skill 目录
    2. 提取每个 skill 的名称、描述、所属 workspace 、依赖、外部系统以及废弃信号
    3. 将每个 skill 分类到 L0 / L1 / L2
    4. 分析路由冲突、分层违规、重复能力和缺失抽象
    5. 将标准化结果写入 /tmp/skill-taxonomy-data.json
    6. 调用 scripts/generate_graph.py 生成 HTML 报告

    快速开始

    1. 准备分析 JSON

    按照 SKILL.md 中定义的流程,先生成一个类似下面格式的 JSON 文件:

    {
      "skills": [],
      "analysis": {
        "metrics": {
          "health_score": 0,
          "routing_clarity": "0%",
          "layer_compliance": "0%"
        }
      }
    }
    

    保存到:

    /tmp/skill-taxonomy-data.json
    

    2. 生成交互式报告

    python3 scripts/generate_graph.py \
      --input /tmp/skill-taxonomy-data.json \
      --output /tmp/skill-taxonomy-graph.html
    

    3. 打开报告查看结果

    open /tmp/skill-taxonomy-graph.html
    

    脚本会做什么

    scripts/generate_graph.py 负责:

    • 读取标准化后的 JSON 输入
    • 构建按层级组织的 skill 卡片
    • 绘制依赖连线
    • 渲染分析看板与问题分区
    • 支持从分析项反向定位到图谱中的对应 skill 节点

    脚本本身足够轻量,只依赖 Python 标准库,便于本地快速运行和二次改造。

    适合用在什么场景

    当你遇到以下情况时,这个仓库会很有价值:

    • 你的 skill 库越来越大,想做一次系统体检
    • 你想降低 router 的歧义和误判
    • 你准备合并、拆分或下线一批 skill
    • 你怀疑系统里缺少通用抽象层
    • 你想在重构前先看清依赖网络
    • 你需要向协作者解释当前 skill 系统的架构全貌

    它不是什么

    为了避免误解,需要明确几点:

    • 它不是通用的代码架构可视化工具
    • 它不是自动重构引擎
    • 它本身不是生产级 router
    • 它不能替代人对 skill 边界的判断

    更准确地说,它是一套面向 skill 系统治理的“分析与决策辅助工具”。

    校验方式

    本地可先做基础校验:

    python3 -m py_compile scripts/generate_graph.py
    

    关于 Seele

    该仓库由 SeeleAI 发布,是其开源 agent 工作流与 skill-system 工具链的一部分。

    开源协议

    MIT

    Aleks
        1
    Aleks  
    OP
       2 天前
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2811 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 15:14 · PVG 23:14 · LAX 08:14 · JFK 11:14
    ♥ Do have faith in what you're doing.