openai / openai/codex-plugin-cc
codex-rescue subagent cannot retrieve its own background task result, and status/result are user-invocation-only
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 33.3k
- Forks
- 2.3k
- PR merge metrics
- No merged PRs in 30d
Description
What happens
Delegating a review to codex:codex-rescue from an orchestrating agent produces a task id and nothing else. The result is unreachable to that agent: the wrapper cannot fetch it, and /codex:status / /codex:result are marked disable-model-invocation, so only the human can retrieve the output.
Plugin codex@openai-codex 1.0.6 (db52e28f4d9ded852ab3942cea316258ae4ef346), Claude Code, macOS.
Sequence
- The main agent spawns the
codex-rescuesubagent with a review prompt (background). - The subagent returns after ~34s with only:
Codex Task started in the background as task-msgiet54-w97mof. Check /codex:status task-msgiet54-w97mof for progress.— no findings. - The main agent messages the subagent to wait for that task and relay its output. It answers that it is "a thin forwarding wrapper restricted to a single
taskinvocation per rescue request" and is "not permitted to callstatus,result, or poll for background task completion". - The main agent tries the obvious fallback, invoking the
codex:statusskill/command itself, and is refused:Skill codex:status cannot be used with Skill tool due to disable-model-invocation. Ask the user to run /codex:status themselves. - The review output only appears after the human runs
/codex:result <id>and pastes it back.
commands/status.md, commands/result.md, commands/cancel.md, commands/review.md, commands/adversarial-review.md and commands/transfer.md all carry disable-model-invocation, so there is no model-reachable path to a finished task.
Why it matters
An agent that hands work to Codex cannot complete that work on its own — the loop always needs a human relay in the middle. In an unattended or scheduled run there is no relay, so the task completes and its result is simply never read. The delegation looks successful while producing nothing.
Suggestions
Either would close it:
- let the rescue wrapper await or poll the task it started, so it returns findings rather than an id;
- or expose a read-only, model-invocable way to fetch a finished task's result (a separate command without
disable-model-invocation, or a tool), keeping the interactive commands as they are.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the codex-rescue wrapper and the command definitions in commands/status.md, commands/result.md, commands/cancel.md, commands/review.md, commands/adversarial-review.md, and commands/transfer.md. Trace how a background task id is returned and whether the wrapper or another model-invocable path can retrieve its result. Done means an agent can complete a delegated review and receive its findings without a human running /codex:status or /codex:result.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- developer-experience, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100