Repository navigation
mini: auto-handoff watcher for idle T3 Claude threads - #52
Conversation
|
Claude review: no issues found Checked the full diff (auto_handoff.py, the nix module, flake/mini wiring, relay prompt, FLEET.md) for bugs and CLAUDE.md compliance (no CLAUDE.md in repo). No earlier reviews or comments existed. Approved: all approval conditions held. |
|
Claude review: no issues found Read the full diff (auto_handoff.py, nix module, flake/mini wiring, relay prompt, FLEET.md) for bugs and CLAUDE.md compliance (no CLAUDE.md in repo); the earlier Claude review had no open findings and nothing else has been raised. Approved: all approval conditions held. |
fleet.autoHandoff runs org.jgoon.auto-handoff (LaunchAgent, every 5 min). T3 Claude threads idle 40-50 min with >= 60k tokens of context get a signed POST to a T3 webhook task, whose Haiku agent asks the thread to write a handoff while its prompt cache is still warm. Enabled on mini; one-time Keychain + webhook setup in FLEET.md "Auto-handoff". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
be82b55 to
6a98848
Compare
|
Claude review: no issues found Read the full diff (auto_handoff.py, nix module, flake/mini wiring, relay prompt, FLEET.md) for bugs and CLAUDE.md compliance (no CLAUDE.md in repo). The change since the last review is the added User-Agent header in the webhook request, which is correct. The earlier Claude reviews had no open findings. Approved: all approval conditions held. |
What
Adds
fleet.autoHandoff(modules/darwin/auto-handoff) and enables it on mini.Reopening a T3 thread after its 1-hour prompt cache expires re-bills its whole context. Every 5 minutes, the LaunchAgent
org.jgoon.auto-handoffreads Claude Code's session logs. When a T3 Claude thread has been idle 40–50 minutes with at least 60k tokens of context, it POSTs a signed request to a T3 webhook task. That task's Haiku agent asks the thread to write a handoff doc to~/.handoffs/<project>/while the cache is still cheap to read. The watcher itself makes no model calls./catch-up(thecatch-upskill in Jish2/skills, already synced) reads these docs, and also covers machines without the watcher.Before merging / switching
Do the one-time setup in FLEET.md "Auto-handoff" first: a signing secret in the Keychain, a Haiku relay thread with the webhook task, and the webhook URL in the Keychain. Without it, the agent logs
missing webhook url/secretevery 5 minutes and sends nothing.Notes
handoffs.pyfrom~/.claude/skills/catch-up/scripts(the synced skill).~/github/session-handoff, which can be deleted after merge.Checked
nix evalof the mini agent's serviceConfig, andnix build --dry-run .#darwinConfigurations.mini.system.🤖 Generated with Claude Code