Skip to content

v0.1.2 — session handoff + multi-account macOS

Choose a tag to compare

@domanski-ai domanski-ai released this 13 Jul 10:57

v0.1.2 — hand off a capped session; multiple Claude accounts on one Mac

Two headline features. Update: git pull — no other steps.

🖐️ Session handoff (EXPERIMENTAL)

Hit your 5-hour cap mid-conversation? /exit, then:

headroom handoff

Your conversation continues on your fullest other account, from the same directory, with full history — the capped account cools until its window resets. Under the hood: the transcript is verified line-by-line, copied hash-checked into the target account's home, and resumed with claude --resume <id> --fork-session (a fresh session id, so histories never collide). Every handoff prints a baton — what moved, what doesn't carry (background tasks, MCP connections, per-session permission approvals), and the exact resume command — and is recorded in a ledger that refuses accidental double-handoffs. The source transcript is never modified. Use --print to stage without launching, --to <slot> to pick the target. The status line tells you when: capped -> /exit, then: headroom handoff.

Nine fail-closed guards (still-writing detection, mid-tool-call refusal, router-validated target, atomic hash-verified copy, no overwrites, symlink rejection, cross-domain data-boundary warning, and more). Proven end-to-end on real accounts before release. Same machine, Claude, file-isolated accounts for v1.

🍎 Multiple Claude accounts on one Mac

Current Claude Code builds keep a separate macOS Keychain item per config directory (verified against the official 2.1.207 binary) — so multiple isolated Claude accounts on one Mac work natively. headroom now reads the per-account namespaced item, and headroom connect probes for the capability: with a current CLI, extra Claude accounts connect normally; on older builds that still share one Keychain item, the connect is refused up front (that shared item is how a second login used to silently break the first). If you were told "one Claude account per Mac" in v0.1.1 — update Claude Code, pull this, and connect away. Real-world confirmations welcome.

Also

  • Routing now honours reserve_percent on the model-scoped weekly caps as well.
  • Statusline persists a small session journal (id, transcript path, cwd — throttled, local, 0600) so handoff can identify your session without guessing.

81 tests green. Feedback on the handoff experiment very welcome — it's the feature the rest of this project existed to make possible.