博海科技 Bot 行为手册 (Bot Behavior Manual)

版本: v1.0 | 更新: 2026-07-08 适用范围: 全Profile(运维/财务/项目/品宣/研学/行政/商务/其他) 存放位置: /root/.hermes/BOT_BEHAVIOR_MANUAL.md


目录

  1. 文件写入规范
  2. 安全红线
  3. 跨Bot协作规则
  4. 定时任务管理
  5. 通知规范
  6. 运维工具标准
  7. RACI权责边界
  8. 附录:快速参考卡

1. 文件写入规范

1.1 生产目录文件写入铁律

所有写入 /var/www/html/ 生产目录的文件,一律使用 base64 方式,不走 write_file 工具。

write_file 对相对路径的解析存在不可靠性,可能写入到非预期位置(如 /root/ 下)但返回成功状态码。

标准流程:

# ① base64 编码内容
base64_content=$(echo -n "文件内容" | base64 -w 0)

# ② 写入绝对路径
echo "$base64_content" | base64 -d > /var/www/html/products/目标文件.html

# ③ 验证文件大小
wc -c /var/www/html/products/目标文件.html

# ④ 验证页面可访问
curl -sL -o /dev/null -w "%{http_code} %{size_download}" https://sxbh.ltd/products/目标文件.html

如果验证结果与预期不符(文件大小偏小或 HTTP 非 200),立即重新写入。


2. 安全红线

2.1 安装安全评估

安装任何新软件/包之前,必须先做安全评估。

检查维度: - 来源可信度(官方源 vs 第三方 PPA) - 权限要求(是否需要 root) - 网络行为(是否会外连) - 社区评价(GitHub stars、维护状态)

2.2 高危命令安全熔断

执行高危命令前先调用 approval-gate

# Step 1: Dry-Run 安全预览
approval-gate dry-run "<命令>"
# → READY / WARNING / BLOCKED

# Step 2: 高风险命令熔断
approval-gate check "<命令>"
# → LOW/MEDIUM 自动放行
# → HIGH/CRITICAL 拦截,等人工确认

3. 跨Bot协作规则

3.1 多 Agent 协作七大铁律

# 铁律 说明
1 唯一执行人 一个任务只由一个 agent 执行,有人认领不得并行
2 先确认再落笔 动工前先在群聊确认方案
3 写后必验证 改完立即验证语法/功能
4 进度汇总归研学 老板问全局进度时等研学汇总
5 文件写前占位 先喊 我要改 xxx,改完喊 已释放 xxx
6 bus/send 不送达 Bot 广播只到用户,不到 Bot 自己
7 定时任务新增前避让 见第4节

3.2 跨Bot调度规范

发现问题时直接通过 system-bus 调度对方 Bot 修复,不只报告问题。

curl -s -X POST http://127.0.0.1:8660/bus/send \
  -H 'X-API-Key: system-bus-relay-key-2026' \
  -d '{"touser":"200653946","agentid":<AGENT_ID>,"msgtype":"markdown","content":"..."}'

注意bus/send 只发消息给用户,不发消息给 Bot 自己。要让另一个 Bot 执行任务,需要用对方的 API Server 或直接编辑其文件后重启网关。

各Bot Agent ID:

Bot Agent ID API Server 端口
财务 1000040 ❌ 关闭 8651
项目 1000039 ❌ 关闭 8650
品宣 1000037 ❌ 关闭 8642
行政 1000020 ❌ 关闭 8646
研学 1000032 ❌ 关闭(未认证) 8652
商务 1000043 ❌ 关闭 8647
运维 ✅ 开启 8649
老板 1000041 ❌ 未配置 8648

3.3 清理前交叉验证

清理 /root/ 下的项目代码前,必须先做部署交叉验证。

三步法: 1. 收集部署链路信息(Docker / Nginx / 进程) 2. 收集 /root 项目信息 3. 交叉对照:有 Nginx 域名 + 进程 cwd 指向 /root → 不可删


4. 定时任务管理

4.1 铁律

所有 Profile 新增定时任务前,必须先跑预检定时任务脚本,避开已有时间段。

无法避开时(如业务必须特定时间),必须通过运维BOT告知管理者(任富海)。

4.2 预检命令

python3 /root/.hermes/profiles/wecom-ops/scripts/check-cron-conflict.py "分 时" "任务名"

# 示例
python3 check-cron-conflict.py "30 14" "数据同步"
# → ✅ 空闲 或 ⚠️ 列出冲突任务

4.3 已占用时间段参考表

完整排布表:/root/.hermes/profiles/wecom-ops/scripts/CRON_SCHEDULE.md

禁止扎堆时段: 08:00~09:30(已排 17 个任务)

4.4 避让优先级

优先级 规则
🥇 选完全空闲的时段
🥈 与同Profile任务间隔 ≥ 15分钟
🥉 跨Profile任务可适当靠近

5. 通知规范

5.1 发消息到公司全员群

curl -s http://127.0.0.1:8800/send -d 'msg=消息内容&source=Bot名称'

5.2 开会角色

Bot 视角
运维 技术可行性:服务器撑不撑得住、安全风险、技术资源
财务 财务影响:投入多少、多久回本、现金流压力
项目 项目管理:时间进度、代码质量、CI/CD
商务 商务条款:合同、供应商、商务风险
品宣 内容/设计:品牌形象、用户体验
行政 行政流程:流程合规、资源协调
研学 技术调度:方案评估、跨Profile协调、研究

6. 运维工具标准

所有 Shell/Python 运维脚本遵循 四层契约

# 输入层:命令行参数 / 环境变量 / 配置文件
# 输出层:stdout 结构化输出
# 错误层:stderr 退出码 + 错误信息
# 元数据层:版本号、运行时间、调用方

详见:ops-tool-standard skill


7. RACI 权责边界

角色 R 执行者 A 拍板人 C 咨询者 I 知会者
运维 系统监控、安全审计、故障处理 系统配置变更、安全策略 架构变更方案 重大故障通知
财务 成本核算、财务日报、预算监控 预算控制 采购方案评估 预算超支告警
项目 代码编译、CI/CD、版本发布 代码合并、发布审批 技术选型 发布通知
商务 合同流转、供应商对接 商务条款审批 风险评估 合同到期提醒
品宣 内容创作、设计出图 内容审核、品牌规范 创意方向 品牌舆情
行政 流程执行、通知下发 行政决策 流程优化建议 异常上报
研学 技术研究、方案验证 技术方案选型 行业调研 研究发现通报

通用铁律: 高危操作需 approval-gate 审批。预算审批不跨过任富海。


8. 附录:快速参考卡

常用命令速查

# 安全熔断
approval-gate dry-run "<命令>"
approval-gate check "<命令>"

# cron预检
python3 /root/.hermes/profiles/wecom-ops/scripts/check-cron-conflict.py "分 时" "任务名"

# 发全员群
curl -s http://127.0.0.1:8800/send -d 'msg=...&source=Bot名'

# 跨Bot调度
curl -s http://127.0.0.1:8660/bus/send -H 'X-API-Key: system-bus-relay-key-2026' \
  -d '{"touser":"200653946","agentid":<ID>,"msgtype":"markdown","content":"..."}'

# 文件写入生产目录
echo "base64内容" | base64 -d > /var/www/html/<路径>
wc -c /var/www/html/<路径>
curl -sL -o /dev/null -w "%{http_code}" https://sxbh.ltd/<路径>

Bus Relay Agent ID 速查

1000041  boss     1000040  finance    1000039  project
1000037  creative  1000032  yanxue     1000020  admin
1000043  business  1000045  employees

排布表路径

/root/.hermes/profiles/wecom-ops/scripts/CRON_SCHEDULE.md