Skip to Content
👋 欢迎来到 HowToUseMoltbot 快速入门
工具Skills 技能

Skills(Moltbot)

技能即自定义工具;放入 ~/clawd/skills/ 即可。Moltbot 使用 AgentSkills  兼容的技能目录,教代理如何使用工具。每个技能是一个包含带 YAML frontmatter 的 SKILL.md 及说明的目录。Moltbot 加载内置技能与可选本地覆盖,并在加载时根据环境、配置与二进制存在情况过滤。

位置与优先级

技能从三处加载:

  1. 内置技能:随安装提供(npm 包或 Moltbot.app)
  2. 托管/本地技能~/.clawdbot/skills
  3. 工作区技能<workspace>/skills

同名冲突时优先级:<workspace>/skills(最高)→ ~/.clawdbot/skills → 内置技能(最低)。此外可通过 ~/.clawdbot/moltbot.json 中的 skills.load.extraDirs 配置额外技能目录(优先级最低)。

每代理与共享技能

多代理场景下,每个代理有独立工作区,因此:

  • 每代理技能位于该代理的 <workspace>/skills,仅对该代理可见。
  • 共享技能位于 ~/.clawdbot/skills(托管/本地),对同一机器上所有代理可见。
  • 也可通过 skills.load.extraDirs(最低优先级)添加共享目录。

同名技能多处存在时,按上述优先级解析。

插件与技能

插件可通过在 moltbot.plugin.json 中列出 skills 目录(相对于插件根路径)随插件提供技能。插件启用时加载这些技能,并参与正常技能优先级。可通过插件配置条目上的 metadata.moltbot.requires.config 做门控。发现与配置见 Plugins,工具表面见 Tools

ClawdHub(安装与同步)

ClawdHub 是 Moltbot 的公共技能注册表。浏览 https://clawdhub.com 。用于发现、安装、更新与备份技能。完整指南:ClawdHub。常用流程:将技能安装到工作区:clawdhub install <skill-slug>;更新已安装技能:clawdhub update --all;同步(扫描 + 发布更新):clawdhub sync --all。默认 clawdhub 安装到当前工作目录下的 ./skills(或回退到已配置的 Moltbot 工作区),Moltbot 在下一会话中从 <workspace>/skills 加载。

安全说明

  • 将第三方技能视为可信代码;启用前请阅读。
  • 对不可信输入与高风险工具优先使用沙箱运行。见 沙箱
  • skills.entries.*.envskills.entries.*.apiKey 将秘密注入该代理当次运行的主机进程(非沙箱)。请勿将秘密放入提示或日志。
  • 更全面的威胁模型与检查清单见 安全

格式(AgentSkills + Pi 兼容)

SKILL.md 至少需包含:

--- name: nano-banana-pro description: Generate or edit images via Gemini 3 Pro Image ---

说明:遵循 AgentSkills 的布局与意图。内嵌代理使用的解析器仅支持单行 frontmatter 键。metadata 应为单行 JSON 对象。在说明中用 {baseDir} 引用技能目录路径。可选 frontmatter 键:homepageuser-invocabledisable-model-invocationcommand-dispatchcommand-toolcommand-arg-mode 等。

门控(加载时过滤)

Moltbot 在加载时使用 metadata(单行 JSON)过滤技能。metadata.moltbot 下字段:always: trueemojihomepageosrequires.binsrequires.anyBinsrequires.envrequires.configprimaryEnvinstall 等。沙箱说明:requires.bins主机上于技能加载时检查。若代理处于沙箱,二进制也须在容器内存在;可通过 agents.defaults.sandbox.docker.setupCommand(或自定义镜像)安装。setupCommand 在容器创建后运行一次。包安装还需网络出口、可写根文件系统与沙箱内 root 用户。

配置覆盖(~/.clawdbot/moltbot.json)

内置/托管技能可开关并注入 env:

{ skills: { entries: { "nano-banana-pro": { enabled: true, apiKey: "GEMINI_KEY_HERE", env: { GEMINI_API_KEY: "GEMINI_KEY_HERE" }, config: { endpoint: "https://example.invalid", model: "nano-pro" } }, peekaboo: { enabled: true }, sag: { enabled: false } } } }

规则:enabled: false 可禁用已内置/安装的技能。env 仅在进程未设置该变量时注入。apiKey 为声明了 metadata.moltbot.primaryEnv 的技能提供便利。config 为可选的自定义每技能字段袋。allowBundled仅内置技能的可选白名单;若设置,仅列表中的内置技能可用(托管/工作区技能不受影响)。

环境注入(每次代理运行)

代理运行开始时,Moltbot:1. 读取技能元数据;2. 将 skills.entries.<key>.envskills.entries.<key>.apiKey 应用到 process.env;3. 用符合条件的技能构建系统提示;4. 运行结束后恢复原环境。作用域为单次代理运行,非全局 shell 环境。

会话快照(性能)

Moltbot 在会话开始时对符合条件的技能做快照,并在同一会话的后续轮次复用。技能或配置变更在下一新会话生效。启用技能监视器或出现新的符合条件的远程节点时,也可在会话中途刷新(热重载:下次代理轮次使用刷新后的列表)。

远程 macOS 节点(Linux 网关)

若网关在 Linux 上运行但已连接 macOS 节点且允许 system.run(Exec 审批安全未设为 deny),当该节点上存在所需二进制时,Moltbot 可将仅 macOS 技能视为符合条件。代理应通过 nodes 工具(通常 nodes.run)在该节点执行这些技能。这依赖节点上报其命令支持及通过 system.run 的 bin 探测。若 macOS 节点之后离线,技能仍显示;调用可能失败直到节点重连。

技能监视器(自动刷新)

默认 Moltbot 监视技能目录,在 SKILL.md 变更时更新技能快照。在 skills.load 下配置:

{ skills: { load: { watch: true, watchDebounceMs: 250 } } }

Token 影响(技能列表)

当技能符合条件时,Moltbot 向系统提示注入紧凑的 XML 技能列表(通过 pi-coding-agentformatSkillsForPrompt)。开销确定:基础开销(仅当 ≥1 个技能时):195 字符。每技能:97 字符 + XML 转义后的 <name><description><location> 长度。公式(字符):total = 195 + Σ (97 + len(name_escaped) + len(description_escaped) + len(location_escaped))。XML 转义会扩大 & < > " ' 等,增加长度。Token 数因模型分词器而异;粗略按 OpenAI 风格约 4 字符/token,即每技能约 97 字符 ≈ 24 token 再加实际字段长度。

托管技能生命周期

Moltbot 随安装提供一组内置技能~/.clawdbot/skills 用于本地覆盖(例如在不改内置副本的情况下固定或修补某技能)。工作区技能归用户所有,同名时覆盖上述两者。

配置参考

完整配置结构见 Skills 配置

寻找更多技能?

浏览 https://clawdhub.com 

最后更新于: