mirror of
https://github.com/hanzoai/cli.git
synced 2026-10-30 15:00:27 +00:00
A target is live only while something beats, and the beat was held only inside `hanzo code` and `hanzo link` — both of which end when the work they host ends. A lab box at an idle prompt read offline to the console and to whatever places the next session, while being the least loaded machine in the room: `agent targets list` showed every box offline, one 17 hours stale. `hanzo beat` holds that same guard on its own — same refreshed-credential loop, same Sampler, no shell, no session — and two unit files give it a lifetime a human does not have to remember. Verified live: the row flipped offline -> online with fresh load/mem inside one 30s period. Co-Authored-By: Claude Code <[email protected]>
19 lines
852 B
Plaintext
19 lines
852 B
Plaintext
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!-- Keep this Mac present in the fleet between sessions:
|
|
cp units/com.ai.hanzo.beat.plist ~/Library/LaunchAgents/
|
|
launchctl load ~/Library/LaunchAgents/com.ai.hanzo.beat.plist
|
|
The same beat `hanzo code` and `hanzo link` hold, with nothing else. -->
|
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
<plist version="1.0">
|
|
<dict>
|
|
<key>Label</key><string>com.ai.hanzo.beat</string>
|
|
<key>ProgramArguments</key>
|
|
<array><string>/Users/a/.local/bin/hanzo</string><string>beat</string></array>
|
|
<key>RunAtLoad</key><true/>
|
|
<key>KeepAlive</key><true/>
|
|
<key>Nice</key><integer>10</integer>
|
|
<key>StandardOutPath</key><string>/tmp/hanzo-beat.log</string>
|
|
<key>StandardErrorPath</key><string>/tmp/hanzo-beat.log</string>
|
|
</dict>
|
|
</plist>
|