- Adds --listen <URL> to codex app-server with two listen modes:
- stdio:// (default, existing behavior)
- ws://IP:PORT (new websocket transport)
- Refactors message routing to be connection-aware:
- Tracks per-connection session state (initialize/experimental
capability)
- Routes responses/errors to the originating connection
- Broadcasts server notifications/requests to initialized connections
- Updates initialization semantics to be per connection (not
process-global), and updates app-server docs accordingly.
- Adds websocket accept/read/write handling (JSON-RPC per text frame,
ping/pong handling, connection lifecycle events).
Testing
- Unit tests for transport URL parsing and targeted response/error
routing.
- New websocket integration test validating:
- per-connection initialization requirements
- no cross-connection response leakage
- same request IDs on different connections route independently.
|
||
|---|---|---|
| .. | ||
| debug_sandbox | ||
| desktop_app | ||
| app_cmd.rs | ||
| debug_sandbox.rs | ||
| exit_status.rs | ||
| lib.rs | ||
| login.rs | ||
| main.rs | ||
| mcp_cmd.rs | ||
| wsl_paths.rs | ||