feishu-agent-bridge · 安全与权限

安全与权限

先说清一件事:机器人跑 agent 始终是 approvalPolicy: never(无逐条人工审批),沙箱是唯一的安全闸门。所以在把机器人放进任何群之前,请先给项目选对权限档。

本机执行边界

  • Bridge 与 agent 都跑在你自己的电脑上。它不是多租户托管服务,是给你(和你信任的小团队)自用的桥。
  • agent 只在群绑定的项目目录里干活(🔒 / ✏️ 档由 OS 沙箱强制约束读写范围)。
  • 网页控制台只绑定 127.0.0.1,每次启动使用随机 token 鉴权,不对外网开放端口。

三档权限沙箱

每个项目在私聊 / 网页控制台里可设三档权限:

档位能读 / 能写适用
🔒 项目内只读仅项目目录 / 不可写外部群、不可信场景的问答机器人
✏️ 项目内读写仅项目目录自己的编码项目,禁止它碰机器其余部分
⚠️ 完全访问整台电脑完全信任、你自己掌控的机器
  • 🔒 / ✏️ 的读写限定由 OS 沙箱强制(macOS / 原生 Windows),不是提示词层面的约定。
  • ⚠️ 完全访问 = 任何能给机器人发消息的人,都能以你的身份在这台机器上执行任意命令——只把信任的人拉进群、在你自己掌控的机器上跑、目录里别放敏感数据。
  • 联网能力单独开关(v0.3.3 起),对只读 / 读写档默认关闭。
权限卡片:管理员、普通成员和联网能力可以分档设置
权限卡片:管理员档、普通成员档和联网能力都可以分开设置。

管理员与普通用户分档

同一个项目里,管理员档普通用户档可以分开设置:你自己「完全访问」,群里其他人「项目内只读」,连会话和沙箱都互相隔离。配置、新建 / 删除项目、调整设置、白名单、/settings、中止任务等操作仅管理员可用;每个项目还可以设置响应白名单——谁能让机器人干活,白名单说了算(为空则默认所有人可用)。

百人外部群怎么放心用

把机器人拉进百人外部群答疑时,群里其他人最高只到「项目内只读」:项目看得见、问题答得了,但改、删、写一概没有,电脑别处也进不去。各人独立线程互不串。要再往上的权限?只有你自己的管理员档够得着。

外部群只读答疑:回复说明能读哪些资料、不能越过边界
外部群只读答疑实况:它明确说明能读哪些资料、不会越过边界。
建议:外部群一律用 🔒 只读档 + 单独目录(只放可公开内容),把答疑项目和你的私人项目物理隔开。

什么数据出机器 / 什么不出

数据去向依据
群消息、@ 内容、图片与文件附件经飞书 / Lark 开放平台送达你本机的 Bridge(长连接);附件会下载到本地交给 agent 分析README
agent 的推理 / 命令 / 改动 / 结果以流式 Markdown 卡片经飞书开放平台发回群里——发进群的内容对群成员可见README
交给 agent 的任务内容(prompt、相关文件片段)由你本机登录的后端(Codex / Claude Code)发往对应模型服务处理——与你直接在本机使用这两个 CLI 时一致后端自身行为
你的代码仓库 / 项目目录本身保留在本机;Bridge 不上传目录,agent 在本地读写(受权限档约束)README
「咖啡一下」转发的审批 / 提问 / 完成通知只发到机器人 owner 本人的飞书私聊;默认记录对话原文官方更新说明

token 与本地数据存在哪

  • 所有本地状态都在 ~/.feishu-codex-bridge/:机器人配置、项目 / 会话注册表,以及 AES-256-GCM 加密的密钥库(飞书机器人凭据等)。
  • 卸载时删掉这个目录即可清干净。
  • Codex / Claude 后端各自的登录态由各自 CLI 管理,不归 Bridge 存储。

上线前自查清单

  1. 选对档位:外部群 🔒 只读;自己项目 ✏️ 读写;⚠️ 完全访问只给完全信任的环境。
  2. 目录最小化:绑定目录里只放这个项目需要的内容,别把含密钥的目录绑给群。
  3. 控制入群名单:能发消息的人 = 能驱动 agent 的人(也可以用响应白名单收紧)。
  4. 知道怎么停:卡片 ⏹ 终止单轮;feishu-codex-bridge stop 停整个服务。