BaseHalf
All posts

Connect what should stick; select what is for this ask

Upstream connections stay in the files for git and the next session. Selection lives in `.bh/cache/selection.yaml` only while BaseHalf is open, so “this” stays for one ask.

You have a note open and Claude Code waiting. Two moves look similar on the canvas: draw a line to another card, or click the card and say “improve this.” They do different jobs. Mixing them up either leaves stale context in every future read, or leaves the agent guessing what you meant.

BaseHalf keeps durable structure in upstream lists and temporary focus in a selection cache. The Agent Area and the BaseHalf skill both rely on that split.

Selection on a BaseHalf canvas feeding what agents see as “this.”

Two places context can live

MoveWhere it is storedWho sees it laterGood for
Connect (A → B)Plain text in B’s upstream: list, or .bh/mirror/.../upstream.yamlGit, other editors, every later agent that opens BBackground that should keep feeding B
Select a card or a passage.bh/cache/selection.yaml while BaseHalf is open and the skill is installedAgents that read “this” / “here” right nowOne ask about what you are pointing at

Upstream is saved inside the downstream item, the way a source file declares its imports. Selection is written only while the window is open; BaseHalf removes it when the window closes. Git never sees the selection file.

The status bar’s right end shows what agents can see from the last selection. Clicking into the Agent Area to type does not change it. Only selecting does.

A small workflow that uses both

Say you are tightening an API note that already builds on a schema file.

  1. Connect notes/schema.md → notes/api.md once, if that dependency is real for every future edit.
  2. Open notes/api.md, select the paragraph that is wrong (or the whole card if the whole note is in play).
  3. In the Agent Area, ask Claude Code or Codex to rewrite “this.”
  4. Leave the upstream link alone unless the rewrite changes what the note should build on.

The connection keeps compounding across sessions. The selection tells the agent which slice you mean this turn. You do not paste the schema into the prompt, and you do not connect every temporary highlight into the permanent graph.

When connect is the wrong tool

Do not draw a line for a one-off “look at this passage.” That writes a path into the file. The next clone, the next teammate, and the next agent session all treat that path as lasting input. Use select instead.

Do not select when the point is that B always builds on A. Selection disappears when you close the window. Upstream is what survives a reboot, a pull, and an agent started outside the Agent Area with the skill installed.

Limits worth knowing

BaseHalf never dumps the folder into an agent’s prompt. Agents read files with their own tools. A request that names something else still wins over selection: “improve the summary” means the summary, whatever is selected.

Connecting across folders is allowed; there is often no line on the current canvas, but the badge still lists the entry. Selecting two or more cards passes every selected card. Selecting text in a PDF or book passes the text, the document, and the pages or chapter.

Use connect when the graph should remember. Use select when you are pointing for this ask.