ultraworkers-claw-code/rust/crates/runtime/src
Yeachan-Heo 9b0c9b5739 Add real stdio MCP process wrapper
Add a minimal runtime stdio MCP launcher that spawns configured server processes with piped stdin/stdout, applies transport env, and exposes async write/read/terminate/wait helpers for future JSON-RPC integration.

The wrapper stays intentionally small: it does not yet implement protocol framing or connection lifecycle management, but it is real process orchestration rather than placeholder scaffolding. Tests use a temporary executable script to prove env propagation and bidirectional stdio round-tripping.

Constraint: Keep the slice minimal and testable while using the real tokio process surface
Constraint: Runtime verification must pass cleanly under fmt, clippy, and tests
Rejected: Add full JSON-RPC framing and session orchestration in the same commit | too much scope for a clean launcher slice
Rejected: Fake the process wrapper behind mocks only | would not validate spawning, env injection, or stdio wiring
Confidence: high
Scope-risk: narrow
Reversibility: clean
Directive: Layer future MCP protocol framing on top of McpStdioProcess rather than bypassing it with ad hoc process management
Tested: cargo fmt --all; cargo clippy -p runtime --all-targets -- -D warnings; cargo test -p runtime
Not-tested: live third-party MCP servers; long-running process supervision; stderr capture policy
2026-03-31 21:04:58 +00:00
..
bash.rs feat: Rust port of Claude Code CLI 2026-03-31 17:43:09 +00:00
bootstrap.rs feat: Rust port of Claude Code CLI 2026-03-31 17:43:09 +00:00
compact.rs feat: merge 2nd round from all rcc/* sessions 2026-03-31 17:43:25 +00:00
config.rs Unblock typed runtime integration config primitives 2026-03-31 19:17:16 +00:00
conversation.rs feat: merge 2nd round from all rcc/* sessions 2026-03-31 17:43:25 +00:00
file_ops.rs Unblock typed runtime integration config primitives 2026-03-31 19:17:16 +00:00
json.rs feat: Rust port of Claude Code CLI 2026-03-31 17:43:09 +00:00
lib.rs Add real stdio MCP process wrapper 2026-03-31 21:04:58 +00:00
mcp_client.rs Add first MCP client transport scaffolding 2026-03-31 20:42:49 +00:00
mcp_stdio.rs Add real stdio MCP process wrapper 2026-03-31 21:04:58 +00:00
mcp.rs Add MCP normalization and config identity helpers 2026-03-31 20:23:00 +00:00
oauth.rs Add reusable OAuth and auth-source foundations 2026-03-31 19:47:02 +00:00
permissions.rs feat: Rust port of Claude Code CLI 2026-03-31 17:43:09 +00:00
prompt.rs feat: merge 2nd round from all rcc/* sessions 2026-03-31 17:43:25 +00:00
remote.rs Add fail-open remote proxy runtime primitives 2026-03-31 19:54:38 +00:00
session.rs feat: merge 2nd round from all rcc/* sessions 2026-03-31 17:43:25 +00:00
sse.rs feat: Rust port of Claude Code CLI 2026-03-31 17:43:09 +00:00
usage.rs feat: merge 2nd round from all rcc/* sessions 2026-03-31 17:43:25 +00:00