对 Agent 说「这个」时,它到底指什么
选中卡片或一段文字,BaseHalf 会记给 Claude Code 和 Codex。Git 看不到那个文件。状态栏显示此刻「这个」是什么。
我们以前常说「改一下这个」,然后把路径再贴一遍。有时贴错文件。有时改名之后路径已经失效。Agent 理解的「这个」,和我们眼睛看着的不是一回事。
在 BaseHalf 画布上,选中就是指代。点一张卡片、在笔记里划一句话,或者什么都不选。窗口开着的时候,BaseHalf 会把这次选择记给 Claude Code 和 Codex。状态栏显示:你说「这个」时,Agent 此刻看到的是什么。

选中是怎么记下来的
BaseHalf 把当前选中写到工作区里的 .bh/cache/selection.yaml。只有 BaseHalf 开着、并且已经装了 BaseHalf skill 时才会写。窗口关掉,这个文件就消失。Git 看不到它。Agent 只读它。
记进去的内容,取决于你选了什么:
| 你选中了 | Agent 会看到 |
|---|---|
| 画布上什么都没选 | 这张画布所在的文件夹 |
| 一张卡片 | 那张卡片 |
| 两张或更多卡片 | 每一张被选中的卡片 |
| 在 Card Detail 里打开了卡片,或正在编辑笔记但没划文字 | 那张卡片 |
| 笔记里的一段文字 | 这段文字、所属笔记,以及所在行 |
| PDF 或书籍里的文字 | 这段文字、所属文档,以及页码或章节 |
点进 Agent Area 去打字,不会清掉选中。只有再次选择才会改 Agent 看到的内容。在你回应 skill 安装提示之前,状态栏会说明 Agent 还看不到你的选中。
如果你在请求里直接点名了别的东西,点名的优先。「改一下 summary」指的就是 summary,跟此刻选中什么无关。
Skill 期望 Agent 怎么读
第一次打开文件夹时,BaseHalf 会提议把 skill 装到 ~/.claude/skills/basehalf/ 和 ~/.agents/skills/basehalf/。这份 skill 教 Agent 怎么读 .bh/、描述、连接、选中,以及用来生成的草稿。
我们从不把整个工作区塞进 prompt。Agent 自己打开需要的文件。选中是指针,不是粘贴。Agent Area 在右侧;Claude Code、Codex 和终端坐在同一张画布旁边。
Skill 装好之后,状态栏右端就是现场核对。开口说「这个」之前看一眼,就知道 Agent 会把什么当成指代。
选中跟着会话;upstream 进仓库
选中回答的是:「我现在指着什么?」Upstream 回答的是:「这个文件以后默认依赖什么?」两件事混在一起,上下文就会在会话之间丢。
| 选中 | Upstream 连接 | |
|---|---|---|
| 存在哪里 | .bh/cache/selection.yaml | 文件里(Markdown frontmatter)或 .bh/mirror/.../upstream.yaml |
| Git | 看不到 | 能看见这次改动 |
| 寿命 | 这个窗口开着的期间 | 直到你改掉或删掉列表 |
| 适合 | 「改这段」「解释这张卡」 | 规格、笔记、下一次会话仍该在的输入 |
| 怎么清掉 | 关窗口,或另选别的 | Relink、Relink Everywhere、Remove,或直接改列表 |
指代是临时的、眼前的,就用选中。关系明天还该在,就画一条 upstream。那条线会留给你自己、留给同事,也留给下一次 Claude Code 或 Codex。
我们不再靠粘贴路径解释「这个」。画布上握着指针。状态栏把它亮出来。Skill 告诉 Agent 去哪里读。需要留下来的关系,仍然画进文件里。