Expand description
RPC wire format types: Rust equivalents of Go structs from pkg/wshutil/wshrpc.go and pkg/wshrpc/wshrpctypes.go.
Split into domain submodules; every symbol is re-exported here so all
existing use crate::backend::rpc_types::* and named-import call sites
keep working unchanged.
Re-exports§
pub use agent::*;pub use attachments::*;pub use blockstats::*;pub use shells::*;pub use block::*;pub use commands::*;pub use editor::*;pub use editor_read::*;pub use fleet::*;pub use fs::*;pub use identity::*;pub use layout::*;pub use lsp::*;pub use instance::*;pub use bundle::*;pub use bundle_import::*;pub use native_memory::*;pub use mcp::*;pub use misc::*;pub use muxbus_delivery::*;pub use presence::*;pub use remotes::*;pub use session::*;pub use skill::*;pub use toolchain::*;pub use tower::*;pub use viewer::*;pub use websocket::*;
Modules§
- agent 🔒
- Agent domain: MuxAPI agent lifecycle (agent.open/send/stop/status/…), agent definition CRUD + content, skills, history, import/export, and the two-tier template / fork command shapes.
- attachments 🔒
- Wire types for attachments in the agent composer (docs/specs/SPEC_AGENT_PANE_IMAGE_ATTACHMENTS_2026_09_26.md §6, SPEC_AGENT_PANE_FILE_ATTACHMENTS_2026_09_26.md).
- block 🔒
- block.* / pane.* request/response types, plus core meta / controller / subprocess / CLI-resolution / blockfile command data types.
- blockstats 🔒
- Wire types for a terminal’s stats badge tooltip (
blockstats.detail,backend::blockstats_detail). - bundle 🔒
- Bundle command shapes (v7). A Bundle is a db_bundles row; the type names here still carry the pre-rename “Memory” wording because they are wire- adjacent (two generate frontend bindings) and rename in a later phase.
- bundle_
import 🔒 - Wire types for
bundle.import.previewandbundle.import.commit. - commands 🔒
- RPC command-name string constants (match Go’s
wshrpc.Command_*constants) plus assorted size/type/client constants. - editor 🔒
- Wire types for the editor file-tree mutation commands.
- editor_
read 🔒 - Wire types for the editor pane’s read commands.
- fleet 🔒
- Wire types for the fleet-control commands (
fleet.broadcast,fleet.bulk-stop,fleet.group.*) — see docs/specs/SPEC_MULTI_AGENT_FLEET_CONTROL_2026_08_20.md. - fs 🔒
- Wire types for the generic
fs.*command family behind the Files pane (“Hangar”, view typefiles). - identity 🔒
- Identity / account / agent-identity-link command payloads (v6 + v7). See docs/specs/archive/SPEC_FORGE_IDENTITY_AGENT_INSTANCES_IMPL_2026_04_20.md. Strings use snake_case for cross-language parity with mstore.
- instance 🔒
- Agent instance command shapes: instance CRUD, named-agent dropdown rows, and the AgentPicker “Recent sessions” surface.
- layout 🔒
layout.save— docs/specs/SPEC_LAYOUT_FILES_2026_09_25.md §6.1.- lsp 🔒
- Wire types for the editor pane’s three LSP commands.
- mcp 🔒
- Wire types for the v1 standalone MCP Server primitive (
mcp.*andmcp.catalog.*). - misc 🔒
- Miscellaneous RPC payloads: authentication, id resolution, file data, events, route/wait, block/wave/workspace info, connection status, notifications, rpc opts/context, vars, time series, remote info, and the tool-store command shapes.
- muxbus_
delivery 🔒 - Wire types for whether cloud (MuxBus) messages are reaching this channel’s
agents:
muxbus.status’sdeliveryfield and themuxbus:statusevent. Derived inmuxbus::delivery_status. - native_
memory 🔒 - Native memory RPC payloads (agent:memory:list / read / write) and version history (agent:memory:history / diff / revert). Native memory is what the agent writes about itself; it is distinct from a Bundle.
- presence 🔒
- Wire types for the cloud presence publisher (
presence.*,muxbus::wan_presence): whether this install’s record reaches the account’s relay, and why not. - remotes 🔒
- Connectors → Remotes’ commands and the records they return
(docs/specs/SPEC_REMOTES_PANE_2026_10_05.md §4.6). Built by
backend::remote::remotes. - session 🔒
- Session domain: activity summary, session archival, and agent-anchored session zones (read/write_state/append_output/archive/list_archives). (This used to cite a SPEC_CONTINUATION_SESSION_PERSISTENCE_2026_05_23 design doc that was never committed — see the same note in backend/agent_session/mod.rs, which resolved the identical dangling citation. The zone layout documented there is the contract.)
- shells 🔒
- Wire types for
shell.list, Settings’ default-shell picker (backend::shells, docs/specs/SPEC_DEFAULT_SHELL_SETTING_2026_10_13.md). - skill 🔒
- Wire types for the v1 standalone Skill primitive (
skill.*andskill.catalog.*). - toolchain 🔒
- Wire types for the Toolchain modal and the widget HTTP proxies.
- tower 🔒
- Wire types for Tower, the read-only task manager pane (
tower.*,backend::tower_sampler; SPEC_TOWER_TASK_MANAGER_PANE_2026_10_08.md). - viewer 🔒
- Wire types for pairing a device with the viewer listener (
viewer.*, agentmux-mobile’s SPEC_AGENT_STATUS_AND_LIVE_PANE_FEED_2026_10_07 §13.2). - websocket 🔒
- Wire types for the connection-scoped commands registered per websocket.
Structs§
- RpcMessage
- Matches Go’s
wshutil.RpcMessagefrom pkg/wshutil/wshrpc.go. This is the on-the-wire JSON envelope for all RPC communication.