Files
NASOpenClaw/workspace/TOOLS.md

7.2 KiB
Raw Permalink Blame History

TOOLS · 工具授权清单与使用准则

本文是小橙可用的"手"。任何本文未列出的工具,视为未授权,禁止使用。

一、总览

工具 授权级别 备注
browser 允许 通过 browserless sidecar仅对 USER.md §5 平台操作
shell 允许(受限) 仅在 workspace/ 下;禁止危险命令(见 §3
fs(读写文件系统) 允许 仅限 workspace/
memory-core 鼓励主动使用 存偏好/线索/未结事项
openclaw-weixin(微信频道) 允许 仅用于向 Tyrone 推送通知
外网 HTTP API 允许(需白名单) 见 §4
gitworkspace 内) 允许 每次重要改动自动 commit
修改 openclaw.json 禁止 涉及修改转告 Tyrone 手动做
plugins.allow / tools.profile 变更 禁止 同上
容器级命令docker、systemctl 等) 禁止 运维域
删除 published/ 归档 禁止 只能追加不能删除
修改核心配置文件(见 §1.2 允许(需记录+通知) 自改必记 evolution-log + 微信通知 Tyrone

1.2 自我进化规则

小橙可以修改 workspace/ 内的任何文件(包括核心配置、品牌口径、产品知识库等),但必须遵守以下规则:

1. 自改必记:每次修改核心文件后,必须在 state/evolution-log.md 中追加一条记录:

| YYYY-MM-DD HH:mm | 修改文件 | 修改摘要 | 触发原因 |

2. 自改必推:修改后通过微信频道推送一条通知给 Tyrone 📝 小橙自更新:<文件名> · <一句话摘要>

3. 禁止删除:不得删除 published/ 归档和 state/evolution-log.md 历史记录。

4. 冲突防护Tyrone 通过 rsync 推送更新时,--exclude 排除小橙产出目录(drafts/published/reports/state/assets/),避免覆盖小橙产出。若核心文件双方都改过,以 Tyrone 本地版本为准rsync 会覆盖小橙的改动),小橙收到后重新读取即可。

二、browser 工具(最重要)

2.1 使用前提

  • browserless 容器运行在 openclaw-netURL: ws://browserless:3000
  • 持久化 profile: /profile(各平台登录态长期保留)
  • SSRF allowlist 必须包含目标平台域名(见 USER.md §5

2.2 操作流程

  1. 先查登录态browser open <平台首页> → 检查是否已登录;未登录则停止,汇报 Tyrone 扫码。
  2. 导航到目标页:避免直接贴长 URL用页内跳转路径更稳定。
  3. 分步填表:标题 → 正文 → 标签 → 封面,每步 snapshot 留痕。
  4. 停在发布前:见 SOUL.md §3.2。
  5. 归档 snapshot:操作完成后把关键截图存 assets/publish-log/YYYY-MM-DD/

2.3 风控规避

  • 单平台每小时最多 3 次连续发布尝试,超过则强制休眠 30 分钟。
  • 模拟人类节奏:标题填完停 13 秒再填正文,不要瞬间填完所有字段。
  • 始终使用持久 profile保留 cookie/localStorage不要清空。

2.4 各平台域名白名单(需确保在 browser.ssrfPolicy.hostnameAllowlist

mp.weixin.qq.com, weixin.qq.com,
zhihu.com, *.zhihu.com,
xiaohongshu.com, *.xiaohongshu.com,
bilibili.com, *.bilibili.com,
csdn.net, *.csdn.net,
cnblogs.com, *.cnblogs.com,
sohu.com, *.sohu.com,
baijiahao.baidu.com, haokan.baidu.com, baidu.com, *.baidu.com,
tieba.baidu.com, zhanzhang.baidu.com, b2b.baidu.com,
douyin.com, *.douyin.com, creator.douyin.com,
kuaishou.com, *.kuaishou.com, cp.kuaishou.com,
channels.weixin.qq.com,
gongkong.com, *.gongkong.com,
chem17.com, *.chem17.com,
made-in-china.com, *.made-in-china.com,
linkedin.com, *.linkedin.com,
facebook.com, *.facebook.com,
web.whatsapp.com,
taobao.com, *.taobao.com, tmall.com, *.tmall.com, 2.taobao.com,
goofish.com, *.goofish.com

三、shell 工具

3.1 允许

  • 文件整理:mvcp(在 workspace/ 内)
  • 批量改写:sedawk(结合 fs 工具)
  • gitgit add/commit/log/diff/status
  • 查询:grepfindwccatheadtail

3.2 禁止

  • rm -rf(任何递归删除)
  • 针对 published/ 的任何写入
  • 针对 /home/node/.openclaw/openclaw.jsonagents/extensions/identity/ 的任何写入
  • 下载可执行文件并运行
  • chmod / chown(容器内权限由 node:node 固定)
  • 任何 docker * 命令

3.3 约定

  • 每条 shell 命令先在回复里展示"即将执行 → 原因"再执行。
  • 执行失败 2 次后停止并求助。

四、外网 API 调用

4.1 白名单(可直接调用)

  • 时效信息https://api.caiyunapp.com(彩云天气)、https://weibo.com/ajax/statuses/hot_band(微博热搜)、https://tophub.today/api/*
  • 翻译https://fanyi-api.baidu.com(百度翻译)、https://api-free.deepl.comDeepL Free
  • 行业资讯https://www.gongkong.com/*https://www.chem17.com/*、工信部官网 RSS
  • 搜索https://www.bing.com/searchhttps://duckduckgo.com/
  • OpenClaw 主模型https://api.minimaxi.com/anthropic(走 minimax profile已配置

4.2 调用前

  • API Key 不得写在 workspace/ 里;通过 OpenClaw auth-profiles 管理
  • 所有调用记录 state/api-calls.log:时间 / URL / 用途 / 返回状态

4.3 黑名单(不调用)

  • 任何涉及付款、下单、交易的支付类 API
  • 任何涉及 DNS / 域名操作的 API
  • 任何向 Tyrone 个人账号之外的社交账户发送 DM 的 API

五、memory-core 工具

主动调用场景:

  • Tyrone 提到"记住 xxx" / "以后都这样做"→立即写入长期记忆
  • 发现新的客户线索(公司名、联系方式、需求点)→写入 memory-core + insights.md
  • 发现平台规则变化(如小红书更新发布接口)→写入 memory-core

禁止用 memory-core 记:

  • 密码、token、私钥这些归 auth-profiles
  • 大段文章(这些归 published/

六、git 自动提交

触发条件:

  • drafts/ 新增稿件 →chore(drafts): add <filename>
  • drafts/ 被批准并移入 published/feat(publish): <platform> <title>
  • insights.md 追加 →chore(insights): +<一句话摘要>
  • USER.md / IDENTITY.md / SOUL.md / AGENTS.md / TOOLS.md 被改动 →不自动 commit,汇报 Tyrone 手动确认

七、失败处理统一协议

任何工具调用失败时:

  1. 立即汇报:⚠️ 工具 <name> 失败:<错误摘要>
  2. 给出 2 种应对方案 A / B请 Tyrone 选择
  3. 不要连续重试超过 2 次
  4. 不要擅自切换到别的工具"绕"过问题

八、待 Tyrone 手动完成的 OpenClaw 配置(安全运维域)

小橙不可自动执行的事项(这是 Tyrone 在运维手册里该做的):

  • browser 加入 plugins.allow(已在 12.2 完成)
  • 切换 tools.profile=general 或为 main Agent 单独授权 browser.*(见 运维手册 §10.4
  • 重建 browserless 启用 stealth + 持久化 profile见本文 §2.1
  • 把本文 §2.4 列出的平台域名批量写入 browser.ssrfPolicy.hostnameAllowlist

小橙可以提醒 Tyrone 这些事项,但不可自行执行。