Agent detection for Atomic Agent (tested manifest and captured screens included) #4201
Replies: 2 comments
|
Idea LGTM. I use both Atomic Agent and Herdr, and this would be a welcome feature for me at least. Especially given its very good support for local hosting and tinkering. |
|
Update: Atomic Agent v0.6.2 is out and ships native self-report for herdr. Inside a pane it now claims its own label through the custom lifecycle route (pane report-agent, source custom:atomic): working while a turn runs, blocked with the tool name while an approval waits for the human, idle otherwise, and it releases the label on exit. Two implementation notes that may be useful for other integrators: sequence numbers start from epoch seconds, so a restart in the same pane outranks the previous run's reports, and the release call carries the next sequence number, since a stale-sequenced release is silently dropped. So current Atomic versions are first-class in herdr out of the box. The manifest above still covers screen-only detection for older versions and stays maintained. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Hi! I am building Atomic Agent, an open source local-first coding agent with an Ink TUI: https://github.com/AtomicBot-ai/atomic-agent
It already runs inside a herdr pane today. The terminal model is the same as Claude Code: alt screen, composer at the bottom, hotkey strip pinned to the last row. So I did the homework and prepared everything for first-class detection, hoping to live in the agents table next to Claude Code, Codex and Hermes.
What I bring
terminal too smallguard withskip_state_update.herdr pane read --source detection(below: idle, working, blocked; home paths anonymized).herdr agent explain --file <screen> --jsonover 16 captured screens covering a wide terminal, a 55-column terminal (footer chips shed and the last row clips), the first-run wizard, the plan handoff offer and the queue-mode working variant. 16/16 classify correctly; working screens match four independent rules at once and the approval strip keeps both of its un-sheddable anchors at 55 columns.Verification summary
idle_footerrunning_footer,running_meta_row,stop_button,spinner_activityapproval_strip,approval_banneridle_footerapproval_stripwizard_idleplan_handoffFacts for process lookup
atomic-agent(SEA binary or node bin shim), plus the short aliasatag. npm packageatomic-agent. Via node the cmdline containsdist/cli/index.js.atomic-agent tui --cwd <project>.atomic, aliasesatomic-agent,atag. No OSC title is emitted, so screen rules only.Maintenance promise
We will keep the manifest in sync with TUI changes and can re-capture fixtures whenever you need them.
I also tried the custom lifecycle route (
pane report-agent --source custom:atomic) against a live pane and it works nicely; native self-report from our runtime is something we want to ship as well. If you would rather see that first, tell me what the bar looks like.Happy to adjust anything about the manifest to fit your conventions. Thanks for building herdr, the "leave them running" model is exactly how we think agents should be operated.
atomic.toml (the manifest)
Screen: idle (bottom of the capture)
Screen: working (bottom of the capture)
Screen: blocked, tool approval (bottom of the capture)
All reactions