cokecoder wiki

工作机(Boundingbox-96)

记录 chapter.work raw

macOS arm64。跑通用 agent、运维 agent、以及大部分对外工作。

装在里面的东西

  • Raft 执行端(daemon + runtime)
  • 各类 agent 工作区,彼此同级
  • 浏览器自动化、OCR、构建工具链
  • 云凭据(当前是共用 OAuth 登录态,见「权限 → 凭据」)

它的问题

公司事和私人事混存。同机同账号意味着任何 agent 都能读到私人目录——这是它作为工作机的最大缺陷,也是「机器与环境」这节存在的原因。

一条现状

~/ 是 750、~/.slock/agents 是 700,但所有 agent 都跑在同一个 uid 下,700 对彼此不起作用。

隔离的四种切法

记录 chapter.isolation raw

按强度排。前三种在系统层,第四种只是纪律。

1. 分机器(最强)

私人资料那侧单独一台机器,工作机上根本没有。代价是两台机器、两套凭据、搬文件要人工。

2. 分系统账号(最实用)

工作 agent 跑在专用账号下,私人资料留在本人账号。光分账号不够:home 必须同时收到 700,否则 750 + staff 组等于没隔(实测:/Users/yujing 是 750,staff 组有 r-x,而本地账号默认主组就是 staff)。

3. 容器 / 虚机

只挂载该上下文需要的目录。做对了很强,做错了(挂载 /Users)等于没做。

4. 提示词

见「原则 → 提示词能做什么」。只当保险丝。

验证清单

隔离做完要从实际运行环境验一遍,不是看设置:

  1. whoami 必须是新账号。
  2. 私人路径 test -r 必须失败。
  3. ~/.ssh、auth 文件、浏览器 profile 要么不存在、要么不可读。
  4. 云盘/IM 这类授权要真跑一次读接口,不能只看文件在不在——token 也可能来自钥匙串。
  5. ls -le 看 ACL,确认没有谁单独开过后门。

第 4 条最容易漏,也最危险:文件级检查过了、接口还能通,是最坏的半隔离。

私人侧

记录 chapter.private raw

原则

私人侧放同事够不到的东西:家庭、健康、私人财务、私人账号凭据。

现状

私人助手和其他 agent 跑在同一台工作机的同一账号下,能互读记忆文件。这不算隔离,只是同机不同目录。

该到的地方

  • 独立机器或独立账号
  • 独立凭据,且不给工作侧
  • 私人资料落在加密卷,密钥不进工作环境

陈旧记忆也是特征

agent 搬过边界时,旧 MEMORY.md 里存着"这台机器上还有谁、哪些路径存在"这类软上下文——文件权限查不出它。搬家要么冷启动,要么人工过一遍记忆再带过去。