codex - 💡(How to fix) Fix /goal + superpowers:brainstorming: assistant self-loops, generating ~150 duplicate clarifying questions without user input

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Different: no error is surfaced; the loop runs cleanly from

Root Cause

This appears to be a turn-yield bug specific to the "ask one question first" flow of superpowers:brainstorming under an active /goal. The goal-continuation runtime seems to treat the absence of a user reply as "still working" and keeps the model generating, instead of yielding and waiting. Because each generated turn is itself an assistant message, the loop never observes the user reply that would break it.

RAW_BUFFERClick to expand / collapse

What version of Codex CLI is running?

codex-cli 0.129.0

What subscription do you have?

Plus

Which model were you using?

gpt-5.5 (reasoning effort: medium)

What platform is your computer?

Microsoft Windows NT 10.0.26200.0 x64

What terminal emulator and version are you using (if applicable)?

Warp

What issue are you seeing?

Under an active /goal, after the assistant uses the superpowers:brainstorming skill and asks a single clarifying question, it fails to yield the turn to the user. Instead, it generates ~150+ additional assistant turns by itself, each one a slightly rephrased version of the same confirmation question, with no user message in between any of them. Tokens are consumed continuously. The goal-mode timer reached 840 seconds before I manually interrupted by sending a user message.

Concrete pattern observed:

  • The assistant asks a normal clarifying question once (e.g., "Should I name it <name>?").
  • Without any user reply, it then produces another assistant turn rephrasing the same question ("Shall I proceed?", "Confirm please?", "Awaiting reply", ...).
  • This continues indefinitely. Wording varies every turn; semantics are identical. The model is genuinely re-generating each turn (not buffer replay).
  • Tokens are consumed on every turn.
  • The loop terminates instantly upon any user message. At that point the assistant correctly recognizes the bug and apologizes: "I sent the same confirmation question repeatedly. My turn control got tangled."

This appears to be a turn-yield bug specific to the "ask one question first" flow of superpowers:brainstorming under an active /goal. The goal-continuation runtime seems to treat the absence of a user reply as "still working" and keeps the model generating, instead of yielding and waiting. Because each generated turn is itself an assistant message, the loop never observes the user reply that would break it.

What steps can reproduce the bug?

  1. Enable goals: [features] goals = true in config (or via /experimental).
  2. Start a /goal for a brainstorming-style task that requires the assistant to scaffold something new (e.g., "create a mini side-project under <some path> that demonstrates X").
  3. The assistant invokes the superpowers:brainstorming skill and asks one normal clarifying question (e.g., "Should I name it <name>?").
  4. Do not reply. Wait silently.
  5. Observe: the assistant generates a new turn on its own, asking essentially the same question with slightly different wording.
  6. The self-generated turns continue indefinitely. In my session, ~150+ turns accumulated over ~14 minutes before I broke the loop by sending any user message.

Uploaded thread: 019e084e-399c-79a1-af82-d9657d78787c

What is the expected behavior?

After asking a clarifying question, the assistant should yield the turn and wait silently for the user. No further assistant turns should be generated until the user replies.

Concretely:

  • One clarifying question = one assistant turn, then stop.
  • Goal-mode continuation should not re-trigger the model when the previous turn ended with an unanswered user-facing question.
  • If a continuation watchdog must run, it should detect "last turn was a user-facing question awaiting reply" and skip the continuation, rather than generating another turn.

Additional information

Related but distinct issues:

  • #21176 — /goal marks objective as done prematurely. Different: in my case the goal never starts working at all; it stays in the clarifying-question phase.
  • #20656 — Plan mode silently suppresses goal continuation with 0 tokens consumed. Different: tokens are actively consumed here, and Plan mode was off.
  • #20591 / #20598 — explicit thread/goal/set errors. Different: no error is surfaced; the loop runs cleanly from the user's perspective.

Debugging hints from the session:

  • The repeated questions are semantically identical but lexically varied (~150 unique rephrasings). This rules out a stuck output buffer being replayed and points to the model being re-invoked each turn with a context that signals "still need confirmation."
  • The instant recovery on user input suggests the bug is isolated to the "no user reply yet → keep generating" path; once a user message arrives, normal turn-taking resumes immediately and the assistant explicitly acknowledges the loop was a malfunction.
  • Skills active during the loop: superpowers:brainstorming, superpowers:using-superpowers. The loop began immediately after superpowers:brainstorming was invoked for the first clarifying question.
  • Goal-mode timer at the point of interruption: ~840 seconds.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING