Summary
Add a first-class handoff flow so a user can continue an existing local Codex session inside OpenClaw, then let OpenClaw keep driving it (including async follow-ups/pings) after the user disconnects.
Problem
Today we can spawn ACP sessions from OpenClaw, but we cannot cleanly "adopt" an already-running local Codex session and continue it through OpenClaw channels/threads.
This breaks the handoff loop:
- user starts work locally in Codex
- user needs to leave
- user wants OpenClaw to take over that same session, continue work, and notify/ping if needed
Desired UX
- "Continue my recent Codex session about X here"
- OpenClaw finds/selects the correct resumable Codex session
- OpenClaw binds that session to the current conversation/thread
- Future messages route to that same underlying session
- Agent can continue autonomously and post updates back in-channel
Scope
- ACP/acpx-backed session import/adoption for Codex (and extensible to other ACP harnesses)
- Session identity mapping so OpenClaw can reference the adopted session safely
- Clear lifecycle controls (adopt, focus/unfocus, detach, close)
- Safe behavior across restarts/crashes
Acceptance Criteria
- User can adopt an existing Codex session into OpenClaw without losing context
- Adopted session can be bound to a thread and used multi-turn
- Session survives OpenClaw restart and remains routable
- User can detach or close without corrupting source session state
- Failure modes are explicit (session not found, auth mismatch, busy session, etc.)
Notes
This would complete the local-to-agent handoff loop and unlock a practical "I have to leave, keep going and ping me" workflow.
Summary
Add a first-class handoff flow so a user can continue an existing local Codex session inside OpenClaw, then let OpenClaw keep driving it (including async follow-ups/pings) after the user disconnects.
Problem
Today we can spawn ACP sessions from OpenClaw, but we cannot cleanly "adopt" an already-running local Codex session and continue it through OpenClaw channels/threads.
This breaks the handoff loop:
Desired UX
Scope
Acceptance Criteria
Notes
This would complete the local-to-agent handoff loop and unlock a practical "I have to leave, keep going and ping me" workflow.