BaseHalf
全部文章

把 Agent Skill 放在项目文件夹外面

BaseHalf 把一份 skill 装到 ~/.claude 和 ~/.agents。它不会进仓库,我们也不会替你改 CLAUDE.md 或 AGENTS.md。

我们见过的团队,最后几乎都会把 Agent 说明写进仓库。一份描述界面的 CLAUDE.md。一份写着布局存在哪的 AGENTS.md。下一次 PR 里这些行又出现一遍,从没打开过 BaseHalf 的同事也得跟着合。

我们希望 Claude Code 和 Codex 能读懂画布,又不要把每个项目都变成 BaseHalf 说明书。所以教 Agent 理解 .bh/ 的那份 skill,放在这台机器上,不放进你要提交的文件夹。

右侧 Agent Area 里开着 Claude Code 和 Codex,旁边是项目卡片画布。

装什么,装到哪里

第一次打开文件夹时,BaseHalf 会提议安装 skill。可选 Install、Not Now,或 Don't Ask Again。在你回应之前,提示会一直留着。

安装会把 BaseHalf 自带的那份 skill,链到这台 Mac 上 Agent 本来就会看的位置:

  • Claude Code:~/.claude/skills/basehalf/
  • Codex 以及其他读共享位置的 Agent:~/.agents/skills/basehalf/

它不会进项目文件夹。我们也不会写入 CLAUDE.md 或 AGENTS.md。之后可以在命令面板里跑 BaseHalf: Install Agent Skill 或 BaseHalf: Remove Agent Skill。每次更新 BaseHalf 都会刷新它自己的那份副本,不必为了跟上版本再手动重装一遍。

Skill 覆盖怎么读 .bh/、描述、连接、选中,以及用来生成的草稿。因为它是 skill,你在别处启动的 Agent 在任务需要时也能加载,不只限于 Agent Area 里的会话。

机器上的 skill,仓库里的工作

这道分界是故意的。

留在这台机器上留在仓库里
~/.claude 与 ~/.agents 下的 BaseHalf skill源码、笔记和普通项目文件
服务商密钥(加密存在这台 Mac)写进文件的 upstream 列表
.bh/ 里不进 git 的布局元数据该提交的 Markdown frontmatter 或 mirror 里的 upstream
这台 Mac 的 skill 安装状态同事不装 BaseHalf 也需要的东西

把工作区界面说明塞进每个仓库,会污染 diff,也把同事绑死在同一种工具上。机器本地的 skill,把「怎么读 BaseHalf」放在真正需要它的 Agent 旁边。项目文件留下工作本身:代码、笔记,以及下次 clone 仍该在的 upstream 列表。

Agent 仍然用自己的工具读普通项目文件。BaseHalf 从不把整个工作区塞进 prompt。Skill 是通往 .bh/ 和选中的地图,不是你已经提交的那些文件的替代品。

换一台机器时的代价

新 Mac 不会自动带上这份 skill。在 BaseHalf 里打开文件夹,再回应一次安装提示,或跑命令面板里的命令。在那之前,这台机器上的 Agent 拿不到 skill 里那些 BaseHalf 专用指引,状态栏也会说明它们看不到你的选中。

这就是把 skill 留在仓库外的代价。我们接受。从没安装 BaseHalf 的同事,不必在每个 PR 里审界面文档。装了的人,在自己机器上共用一份随应用更新的 skill。

该进 git 的仍是工作本身:说明文件依赖什么的 upstream 列表、你写的笔记、你改的代码。选中留在打开窗口期间的 .bh/cache/。布局不进 git。Skill 留在 home 目录下。

我们不再通过每个仓库分发 BaseHalf 的界面说明。机器上一份 skill。项目里普通文件。Claude Code 和 Codex 学会这张地图,文件夹却不必变成产品手册。