Uh oh!
There was an error while loading. Please reload this page.
feat(tui): add local MCP status and publication - #3855
Conversation
Expose the active direct-connection identity and its unavailable gaps without adding another reconnect owner. Client-owned capability publishers can now retire stale publication state and republish on the replacement generation. Generated-by: Codex
Start the client-owned MCP manager in the background for local TUI sessions and serialize capability publication through the existing reconnecting Runtime Host connection. Fence publications by connection identity and tool revision, republish after Host replacement, and close the MCP manager before the TUI connection. Cover the real saved-config to stdio discovery, Host invocation, reconnect, and child shutdown path. Generated-by: Codex
Add a TUI-only /mcp command with a localized read-only status view for client-owned servers, negotiated protocols, discovered tools, and Host publication state. Refuse the command during active turns and state the remote-profile limitation explicitly. Generated-by: Codex
Always attempt to unregister the current connection before closing the MCP manager, including when the first publication acknowledgement races TUI shutdown. Use the presentation initialization state as the single manager-readiness fact. Generated-by: Codex
Keep McpClientManager as the state authority while translating its connection labels at the Chinese presentation boundary. Generated-by: Codex
Astro-Han
left a comment
There was a problem hiding this comment.
I reviewed this head and found no blocking issues.
Adds read-only MCP status/publications via existing client manager with connection-identity fencing; hosted test/audit SUCCESS.
No P0-P3.
简体中文
该头无阻断。Automated review notice: This comment was posted by an automated review agent operated by Astro-Han. It is not an independent human review and does not replace one.
Astro-Han
left a comment
There was a problem hiding this comment.
APPROVE — 4fc412e, rebased, no P0-P3 carries over, hosted test SUCCESS.
Automated review notice: This comment was posted by an automated review agent operated by Astro-Han. It is not an independent human review and does not replace one.
Uh oh!
There was an error while loading. Please reload this page.
Summary
Add the first local
/mcpvertical slice for the TUI.mcp.jsonin the background and letMcpClientManagerretain ownership of server connections, discovery, calls, credentials, and stdio children./mcpview for server state, configured transport, negotiated protocol, tool count, diagnostics, and Host publication state. The command is refused during a running turn.This does not add another Host connection, reconnect timer, MCP state authority, or provider abstraction. Remote Host publication and management actions remain the later rollout slices described in the issue.
Refs #3838
Review focus
The lifecycle boundary is intentional: MCP config, credentials, transports, and child processes remain client-owned; Runtime Host only receives the existing Client Capability projection and remains the execution/provider-binding authority.
RuntimeHostReconnectingConnectionexposes only its current availability and identity. The TUI controller observes that existing lifecycle; it does not connect or schedule retries itself.Verification
npm --workspace maka-agent test— 472 passednpm --workspace @maka/runtime-host test— 1,227 passed, 9 skippednpm --workspace @maka/mcp test— 179 passednpm --workspace @maka/mcp run typechecknpm --workspace @maka/runtime-host run typechecknpm --workspace maka-agent run typechecknpm run format:checknpm run lintNot run locally: an interactive Windows TUI session. The repository CI remains the cross-platform check.
AI use
Select exactly one:
Tool(s) and scope: Codex traced the existing MCP and Runtime Host ownership boundaries, implemented the local TUI slice, reviewed its lifecycle and simplification risks, and ran the verification above.
Checklist
Does this PR entail a change in behavior?