-
-
Notifications
You must be signed in to change notification settings - Fork 80.7k
[Feature]: Stabilize remote Codex app-server connections with a command-backed transport #101416
Copy link
Copy link
Open
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:needs-security-reviewClawSweeper marked this issue as needing security-sensitive review.ClawSweeper marked this issue as needing security-sensitive review.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:securitySecurity boundary, credential, authz, sandbox, or sensitive-data risk.Security boundary, credential, authz, sandbox, or sensitive-data risk.issue-rating: 🌊 off-meta tidepoolIssue quality rating does not apply to this item.Issue quality rating does not apply to this item.maturity:stableIssue affects a taxonomy feature currently scored M4/M5.Issue affects a taxonomy feature currently scored M4/M5.
Description
Metadata
Metadata
Assignees
Labels
P2Normal backlog priority with limited blast radius.Normal backlog priority with limited blast radius.clawsweeper:fix-shape-clearClawSweeper found a clear likely implementation shape for this issue.ClawSweeper found a clear likely implementation shape for this issue.clawsweeper:needs-maintainer-reviewClawSweeper marked this issue as needing maintainer review before automation.ClawSweeper marked this issue as needing maintainer review before automation.clawsweeper:needs-product-decisionClawSweeper marked this issue as needing a product or behavior decision.ClawSweeper marked this issue as needing a product or behavior decision.clawsweeper:needs-security-reviewClawSweeper marked this issue as needing security-sensitive review.ClawSweeper marked this issue as needing security-sensitive review.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.impact:securitySecurity boundary, credential, authz, sandbox, or sensitive-data risk.Security boundary, credential, authz, sandbox, or sensitive-data risk.issue-rating: 🌊 off-meta tidepoolIssue quality rating does not apply to this item.Issue quality rating does not apply to this item.maturity:stableIssue affects a taxonomy feature currently scored M4/M5.Issue affects a taxonomy feature currently scored M4/M5.
Type
Fields
Priority
None yet
Summary
Stabilize remote Codex app-server connections by adding a command-backed transport that OpenClaw can recreate after a disconnect.
Problem to solve
OpenClaw currently reaches a remote Codex app-server through a configured WebSocket URL. That topology requires operators to manage a network listener, routing or ingress, and WebSocket credentials separately from the host access they already use to operate the remote machine.
Each extra component becomes part of the connection's failure boundary. Listener restarts, routing changes, and stale ingress state can leave the Gateway unable to reconnect even when the remote host and app-server are otherwise healthy. OpenClaw also has no way to recreate the underlying connection from a durable command configuration.
Proposed solution
Add
appServer.transport: "ssh"as a command-backed remote transport:remoteWorkspaceRoot.The intended first command is SSH to a protocol-clean remote wrapper. Upstream Codex already provides
codex app-server proxy --sock PATH, which connects one byte stream to a Unix-socket app-server and keeps diagnostics on stderr.Alternatives considered
Impact
Evidence/examples
Additional information
This proposal is additive. Existing stdio and URL-based WebSocket configurations keep their current behavior. The implementation and issue text are AI-assisted; the proposed protocol path was checked against the current upstream Codex source.