feat(fleet): manage remote Muxa hosts over SSH - #77
Merged
Conversation
jiunbae
marked this pull request as ready for review
August 20, 2026 11:07
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a production-oriented physical-host Fleet layer to Muxa:
localhostmuxa watchThis branch contains six logical commits because the local main branch was already one commit ahead of
origin/main:5ea744eadds natural@peerMCP collaboration routing9c24f8eadds the physical-host Fleet implementation38f1fbaupdates h2 for RUSTSEC-2026-02587bd8c1bexposes the controller as the always-present local Fleet hostb85d426integrates native watch, compact tables, rich multi-host UI, and push invalidation964a348hardens selector subscriptions, navigation, parent messaging, and rendering safetyLocal controller node
fleet.enabled = falselocalthrough an in-process adaptermuxa host label localandmuxa host annotate localStatus and watch UX
HOST/STATE/MODE/AGENTS/PANES/ATTN/AGEdefault status table-L,--show-labels,-o wide, and-o jsonprogressively expose richer inventoryj/kjumps directly between actionable panesmworks from a session, window, or pane; parents choose the lowest-index live agent pane/message-skill palette works in the multi-host composer--include-panelessexposes detached agents, including search and attention filtering, while pane-only actions remain disabledArchitecture, performance, and safety
fleet_subscribeinstalls its receiver before ACK; the client fetches a fresh snapshot after ACKUser surfaces
muxa host add|list|show|remove|label|tag|annotate|enable|disable|doctormuxa fleet status|watch|connect|disconnect|refresh|panes|capture|send|attachmuxa watch --fleet --selector ...muxa_fleet_status,muxa_fleet_capture, andmuxa_fleet_send_promptMCP toolsdocs/FLEET.mdanddocs/FLEET.ko.mdValidation
cargo fmt --all -- --checkcargo clippy --workspace --all-targets --locked -- -D warningscargo test --workspace --lockedgit diff --checkRelationship to #65
PR #65 manages agent work inside a local Muxa environment. This PR manages physical nodes and their multiplexer hierarchy. They are complementary; ordinary README/CLI conflict resolution may be needed if #65 lands first.
Rollout
The controller works immediately as
local. Controller and remotes should run the same Fleet-capable Muxa version. Start remotes in observe mode, verifymuxa host doctor, then grant control only where remote prompt dispatch is needed. Cut a release after review and merge.