Conversation
Codex CLI 0.154.0 (as launched via a custom codex-nono agent) renders its idle input prompt as "> Ask Codex to do anything" instead of the "> Type your message" text the readiness detector already handled. AGENT_READY_TAIL_PATTERNS only matched "Type your message" or a bare ">", so the coordinator never saw the agent as ready and automatic prompt delivery stayed stuck at "Waiting to send prompt...". Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159pgngC1aN4DEVBQoiCGNc
… fix coordinator-test-harness.ts vi.mock's ../shared/prompt-detect.js with a hand-duplicated copy of AGENT_READY_TAIL_PATTERNS instead of importing the real module, so the previous commit's regex fix wasn't reflected here and the new "Ask Codex to do anything" fixture failed only in coordinator.test.ts's it.each suites. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0159pgngC1aN4DEVBQoiCGNc
The original bug report described the Codex 0.154.0 idle prompt as
literal "> Ask Codex to do anything", so the first pass extended only
the ">" branch of AGENT_READY_TAIL_PATTERNS. A screenshot of the real
app confirms Codex still renders its usual "›" prompt character, just
with the new placeholder text trailing it ("› Ask Codex to do
anything") instead of standing alone the way the readiness detector
expected. The bare "›" pattern required end-of-line right after the
character, so it never matched either.
Merges the bare-"›" and ">"-with-placeholder patterns into one that
accepts either prompt character followed by either known placeholder
(or nothing, preserving the old bare-prompt behavior), and fixes the
fixture/tests to use the real "›" character instead of the
transcribed ">".
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159pgngC1aN4DEVBQoiCGNc
Author
|
Update: my first pass matched the wrong prompt character. The bug report transcribed the prompt as literal |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Parallel Code 2.0.0 cannot deliver automatic sub-task prompts to Codex CLI v0.154.0 when launched through a custom
codex-nonoagent. The child process reaches:but the task stays stuck at "Waiting to send prompt..." — the initial prompt and any queued follow-up never send.
AGENT_READY_TAIL_PATTERNSinelectron/shared/prompt-detect.tsonly recognized> Type your message(Gemini) or a bare>as a ready main-input prompt for the>-style agents. Codex CLI 0.154.0's placeholder text (Ask Codex to do anything) fell through, sogetAgentPromptReadiness/chunkContainsAgentPromptnever reported the agent as ready and the coordinator never wrote the queued prompt.>-prompt pattern to also matchAsk Codex to do anythingcoordinator-test-harness.ts's hand-duplicated copy of the same regex (used to mock../shared/prompt-detect.jsincoordinator.test.ts), which was out of sync with the real pattern and caused the new fixture'sit.eachcoordinator tests to fail even after the real fixTest plan
npx vitest run electron/mcp/prompt-detect.test.ts— 58/58 pass (new tests fail without the fix, confirmed via reverting locally)npx vitest run electron/mcp/coordinator.test.ts— 285/285 passnpm run typecheck— cleannpm run lint— cleannpm run test:unitfull suite — no new failures introduced (compared against a clean checkout ofmainviagit stash); 8 pre-existing failures unrelated to this change remain (local git identity requirements indocuments/setup.test.ts, a keychain-fallback token leak inclaude-usage.test.ts, and arecoveredflag regression inplans.test.ts— none touched by this diff)🤖 Generated with Claude Code
https://claude.ai/code/session_0159pgngC1aN4DEVBQoiCGNc