Files
company-kb/tools/kb-bot/README.md
2026-07-17 10:29:27 +08:00

1.5 KiB
Executable File
Raw Blame History

kb-bot —— 飞书群知识库问答机器人

群里 @机器人 提问 → 查知识库 → 带溯源回复。长连接,无需公网服务器。 底座lark-clibot 身份自管凭据,不入库)。详见 docs/08-飞书双向前端方案.md

组件

文件 作用
subscribe.sh 起 WebSocket 长连接,把 @机器人 群消息事件落到 events/
handle.py 轮询 events/,抽问题→调 /kb-asklark-cli 回复
send.sh 手动发消息(验证发消息通路用)

分步验证

# P2-a 发消息:查群 id 后手动发一条
lark-cli im +chat-search --query "你的群名"
bash tools/kb-bot/send.sh oc_xxxxx "**kb-bot 上线测试**"

# P2-b 收消息:起长连接,去群里 @机器人 说句话,看 events/ 是否落文件
bash tools/kb-bot/subscribe.sh        # 前台观察

# P2-c 闭环:另开一个终端跑消费者
python3 tools/kb-bot/handle.py --watch

常驻部署(验证通过后)

跑在任一常开机器Mac mini / VPS 皆可,长连接不挑落点):

nohup bash tools/kb-bot/subscribe.sh > /tmp/kb-bot-sub.log 2>&1 &
nohup python3 tools/kb-bot/handle.py --watch > /tmp/kb-bot-handle.log 2>&1 &

稳定后再包成 launchd(macOS)/systemd(Linux) 常驻服务。

铁律(继承知识库)

  • 机器人只读知识库,绝不写/删。
  • 答案强制带 source_link 溯源;无据回「知识库暂无」,绝不编造(由 /kb-ask 保证)。
  • events/.seen-msg-ids 是运行时产物,已 gitignore。