cmux-next: list acpmux sessions with terminal agents (#16417)
Fixes #16417
Next-issue: #16417
The bare cmux agent list roster now includes both terminal agents and sessions from the running acpmux daemon. Every joined row exposes the address accepted by cmux agent message, its kind, and queued message count; acpmux statuses map to the existing roster states. --state, sorting, counts, JSON, and human output continue to work across both sources. --terminal keeps its existing daemon-only behavior.
The acpmux session read never starts a daemon. If acpmux or the message store is unavailable, the terminal roster still prints.
Validation:
- Rust unit coverage for joined rows, queued counts, and acpmux state filtering.
cargo fmt --manifest-path cmux-tui/Cargo.toml --all -- --check
agent-identity footer --repo manaflow-ai/cmux
Agent session: agent session
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
The bare cmux agent list roster now includes both terminal agents and sessions from the running acpmux daemon, so users can see everything cmux agent message can reach in one listing.
- Joined rows expose the address accepted by
cmux agent message, the row kind, and the queued message count; acpmux statuses map to the existing roster states. --statefiltering, sorting, counts, JSON, and human output work across both sources, while--terminalkeeps its existing daemon-only behavior.- The acpmux session read never starts the daemon; if acpmux or the message store is unavailable, the terminal roster still prints.