安全使用 Agent 和电脑

Agent 的任务不在云端沙箱里执行,而是在电脑上执行:本地服务在这台电脑上启动 Claude Code、Codex 等 Runtime,并以本地服务运行用户的身份真实运行 git、构建和测试命令。因此,谁能让你的 Agent 干活,谁就在间接使用那台电脑上这个用户能访问的一切:代码、SSH key、Git 凭据、登录态、工作目录、内网服务。

这篇最佳实践回答一个常见问题:「我的 Agent / 电脑可以给别人用吗?应该怎么设置?」

核心结论只有一句:日常使用的私人电脑及其上的 Agent 保持个人可见;确实要共享时,把 Agent 绑定到专门的虚拟机、Docker 容器或共享机上,再公开。

为什么可见性是安全问题

HiFox 里有两层可见性,它们叠加决定「谁能用到你的执行环境」:

三个常见的危险组合:

  1. 公开的 Agent 绑在私人电脑上。Agent 设为公开后,空间内任何成员都能给它指派任务,而任务实际跑在你那台电脑上,使用你的凭据和文件系统——等于把日常主机的使用权开放给了整个空间。
  2. 日常电脑设为组织 / 空间可见。同事可以把你的电脑选作执行环境;本地个人电脑的「允许的组织」设为「所有组织」时,这个范围还会自动扩展到你之后加入的每个组织。
  3. 共享环境里残留个人凭据。被共享的电脑上如果有个人 SSH key、浏览器登录态、.env 文件,使用它的每个成员都能通过 Agent 读取。

把电脑设为「组织」或「空间」可见并不会隔离凭据和目录,它只是放开「谁能用」。隔离要靠专门的执行环境(见下文原则三)。

三条原则

原则一:日常私人电脑保持「个人」可见

  • 电脑可见性保持 个人:只有所有者可以选用这台电脑;
  • 本地个人电脑的允许的组织按需选择选定的组织,不要长期停留在「所有组织」;
  • 绑定在这台电脑上的 Agent 保持私有,或只邀请确实需要的成员并按人设置「可使用」权限;
  • 不要为了「让同事试一下」临时调高可见性,事后忘记改回。

原则二:公开 Agent 之前,先看它绑定的是什么

Agent 公开后,空间内全部成员都能看到并指派任务。公开前逐项确认:

  • 它绑定的电脑和 Runtime 是不是你的日常主机?是的话,先把 Agent 改绑到共享执行环境(见原则三),否则保持私有;
  • 检查 Agent 的高级设置:谁可以克隆、谁可以创建分身、克隆时是否允许带走环境变量(默认不允许)、分身时是否允许继承环境变量(默认允许)。环境变量里存有 Token、API Key 时,按需收紧;
  • 需要在多个空间共享时,优先用 Agent 分身 在每个空间放一个绑定共享环境的副本,而不是把私人环境上的 Agent 直接公开。

原则三:共享执行放在专门环境——虚拟机、Docker 或共享机

需要让团队共同使用 Agent 时,为它准备专门的执行环境,而不是共享你的日常主机:

环境适合场景说明
虚拟机小团队、想复用现有硬件在闲置机器上开一台虚拟机专用于 Agent 执行,凭据与宿主机隔离
Docker 容器需要可复制、可回收的隔离环境在容器内安装 CLI / 本地服务并注册为电脑,用完可整体销毁重建
共享远程机团队长期共用、任务较重专门的远程服务器,持续在线、靠近内网资源,是团队共享的推荐选择

准备共享环境时:

  1. 专用系统账号:为本地服务建独立账号,不复用任何人的个人账号,避免继承个人 SSH key、浏览器登录态和 shell 配置;
  2. 最小凭据:只为共享环境配置它确实需要的凭据(专用 deploy key、短期 token),不拷贝个人凭据,能轮换的定期轮换;
  3. 目录隔离:Agent 工作目录选择「创建临时目录」,或指定目录后选 Worktree「隔离运行(并行)」,避免多个任务写同一个目录;
  4. 负载与并发:按共享机的定位设置并发,并开启系统负载保护,避免共享机被任务拖垮;
  5. 令牌卫生:安装令牌有有效期且只能使用一次,不要写进镜像、任务描述、评论或长期脚本;
  6. 敏感信息放对位置:密码、Token、API Key、私钥只放在产品要求的字段里(例如 Agent 的环境变量、密钥配置),不要写进任务描述、评论、执行程序路径或附加参数。

需要收回时

  • 电脑所有者可以在电脑详情的 Agents 区域解绑运行时(单个)或解绑全部,收回电脑而不删除 Agent;解绑会取消正在进行的运行;
  • 把电脑可见性改回个人,Agent 可见性改回私有;
  • 怀疑凭据泄露时,先到对应平台轮换 Token / Key,再排查使用记录。

快速自查清单

  • 日常电脑的可见性是「个人」,允许的组织是「选定的组织」或明确允许的少量组织;
  • 绑定在私人电脑上的 Agent 都是私有,或只邀请了明确需要的成员;
  • 公开的 Agent 全部绑定在虚拟机、Docker 或共享机上,而不是任何人的日常主机;
  • 共享环境使用专用账号和最小凭据,上面没有个人 SSH key 和浏览器登录态;
  • Agent 环境变量里没有日常工作的凭据,克隆 / 分身带走环境变量的开关已按需收紧;
  • 安装令牌没有出现在镜像、脚本、任务描述或评论里。

常见问题

同事想借用我的 Agent,怎么办?

优先把「共享版」Agent 放到共享环境再公开,私人环境的 Agent 保持私有。只是一次性协作的话,把同事加入私有 Agent 的可使用成员,比公开整个 Agent 更可控。

我已经把日常电脑设成了组织可见,怎么补救?

把可见性改回个人;在电脑详情检查有哪些 Agent 绑定了这台电脑,按需解绑运行时;检查凭据的使用记录,必要时轮换 Token 和 SSH key。

把电脑设为「组织」可见后,别人能访问我的文件吗?

能。可见性决定谁能选用这台电脑执行任务;被选用后,Agent 会以本地服务运行用户的身份访问这台电脑上该用户可用的资源,包括文件和凭据。所以共享的前提是:那个用户环境本身是干净的专用环境,而不是你的日常账户。

相关文档

  • Agent:职责、可见性和成员权限
  • 电脑:连接电脑、可见性、允许的组织与系统负载保护
  • 连接代码库:仓库凭据的配置规则