知识
← 返回

治理方案

2026-05-16 技术
#技术 #claw 内部

Claw 内部治理方案

版本: v1.0
日期: 2026-05-16
范围: 技能(Skills)、工具(Tools/CLI)、资产(Assets)的存放与管理规范


一、治理目标

  1. 所有自定义技能统一在 workspace/skills/ 下管理
  2. 工具(CLI 二进制)与技能(SKILL.md 定义)分离
  3. 资产报告有固定存放位置
  4. 添加新技能/工具时有明确的决策路径

二、总体结构

~/workspace/                            ← 工作区根
├── AGENTS.md
├── SOUL.md
├── USER.md
├── MEMORY.md                           ← 长期记忆
├── TOOLS.md                            ← 工具速查 + API Token
├── memory/                             ← 每日记录
│
├── skills/                             ← ★ 统一技能目录
│   ├── knowledge-base/                 ← 知识库操作(已存在)
│   ├── storyteller/                    ← 讲故事(从 .agents 迁入)
│   ├── gh-project-health/              ← GitHub 项目评估(从 .agents 迁入)
│   ├── opencli-usage/                  ← OpenCLI(从 ~/.agents 迁入)
│   └── README.md                       ← 本目录说明
│
├── reports/                            ← 生成报告
│   ├── 2026-05-16-dong-e-e-jiao.html
│   └── github-health/
│
└── .agents/skills/                     ← ★ 废弃,不再手动管理

三、技能治理

3.1 技能存放原则

所有技能一律放在 workspace/skills/<技能名>/SKILL.md

来源 原路径 目标路径 操作
已有 workspace/skills/knowledge-base 不动
自定义 workspace/.agents/skills/storyteller → workspace/skills/storyteller 迁移
自定义 workspace/.agents/skills/gh-project-health → workspace/skills/gh-project-health 迁移
npx skills 安装 ~/.agents/skills/opencli-usage → workspace/skills/opencli-usage 迁移

3.2 技能添加流程

场景 A:手工编写技能

  1. workspace/skills/​ 下创建 <技能名>/SKILL.md
  2. 遵循 AgentSkills 格式(含 frontmatter: name / description)
  3. 技能名统一用小写英文,连字符分隔(如 knowledge-base​,不用 KnowledgeBase

场景 B:安装第三方技能

# 先装到工作区
openclaw skills install <slug>
# npx skills 安装的,移进去
npx skills add <包名> --skill <技能名> -g -y
cp -r ~/.agents/skills/<技能名> ~/workspace/skills/
rm -rf ~/.agents/skills/<技能名>

3.3 技能命名规范

skills/<类别>-<名称>/
类别 命名 示例
工具使用 工具名 opencli-usage
业务技能 功能描述 knowledge-base, gh-project-health
创作技能 创作类型 storyteller

3.4 禁止行为

  • ❌ 不往 ~/.agents/skills/ 手动加技能
  • ❌ 不修改 /app/skills/ 下的内容(是软件包,改不动的也无必要)
  • ❌ 不把技能放到 workspace 根目录或散落在 memory/ 里

四、工具治理

4.1 CLI 工具与技能的关系

CLI 工具(二进制)           Skill 定义(SKILL.md)
─────────────────           ─────────────────────
opencli 命令                 opencli-usage/SKILL.md
装到 PATH 上                告诉 Agent 怎么用这个命令

工具本体和技能定义是两个东西。技能只是说明书,工具才是可执行文件。

4.2 工具安装位置

安装方式 存放路径 示例
npm -g(有 root) /usr/local/bin/
npm -g(用户级) ~/.npm-global/bin/ opencli
pip install /usr/local/bin/ 或系统 Python 目录 Python 工具
源码编译 /usr/local/bin/ Cargo 等

工具安装路径受技术限制,不可自由选定(npm -g 装到哪由 npm prefix 决定)。

4.3 工具注册到 TOOLS.md

安装完成后,在 TOOLS.md 中登记:

### CLI 工具清单

| 工具 | 路径 | 安装方式 | 用途 |
| --- | --- | --- | --- |
| opencli | ~/.npm-global/bin/opencli | npm -g @jackwener/opencli | 网站转 CLI 获取数据 |

这样无论你是自己用,还是通过 Agent 调用,都能查到装了哪些工具、在哪。

4.4 工具卸载

# npm 工具
npm uninstall -g @jackwener/opencli

# 同时删 TOOLS.md 里的记录

五、资产治理

5.1 报告存放

workspace/reports/
├── YYYY-MM-DD-<描述>.html        ← 交互报告
└── <项目名>/                      ← 多文件报告

5.2 知识库(SiYuan)与工作区的关系

内容 存哪 原因
调研报告文档 SiYuan 知识库 可搜索、可导出、可关联
原始 HTML 报告 workspace/reports/ 文件较大,不适合存思源
技能与工具清单 SiYuan「claw 内部」目录 系统文档,跟知识库在一起方便查阅

六、实施步骤

□ 1. 迁移 storyteller 到 workspace/skills/
     cp -r workspace/.agents/skills/storyteller workspace/skills/
     (保留原 .agents 备份,确认无问题后删除)

□ 2. 迁移 gh-project-health 到 workspace/skills/
     同上

□ 3. 迁移 opencli-usage 到 workspace/skills/
     cp -r ~/.agents/skills/opencli-usage workspace/skills/
     删除原目录

□ 4. 清理 workspace/.agents/skills/
     只保留 gh-project-health.skill 绑定文件
     技能实体全部迁走

□ 5. 更新 workspace/skills/README.md
     写明目录规范

□ 6. 更新 TOOLS.md
     登记所有已安装的 CLI 工具

□ 7. 这个文档本身已存到 SiYuan「claw 内部」目录

七、示意图

迁移前                             迁移后
──────                             ──────

workspace/skills/                  workspace/skills/
├── knowledge-base/        →       ├── knowledge-base/
                                   ├── storyteller/
                                   ├── gh-project-health/
                                   ├── opencli-usage/
                                   └── README.md

workspace/.agents/skills/          workspace/.agents/skills/
├── storyteller/          →       (清空或只留 .skill 绑定文件)
├── gh-project-health/
└── gh-project-health.skill

~/.agents/skills/                  ~/.agents/skills/
└── opencli-usage/        →       (清空)

八、例外与特殊情况

情况 处理方式
/app/skills/ 下的内置技能 不动,不覆盖,也不关心
/app/extensions/*/skills/ 插件自带的,启用插件自动加载
npx skills add 默认装到 ~/.agents 装完后手工移入 workspace/skills/
openclaw skills install 默认装到 workspace/skills/,无需迁移
需要全局共享的 skill 当前单用户,不需要「全局」,统一放 workspace 即可