Request
Codex calls should default to run_in_background, not foreground.
Why
SKILL.md currently frames it as a duration judgment call:
Short calls: foreground with the Bash tool's timeout parameter. Anything that could pass 10 minutes: run_in_background.
In practice the duration is not the deciding factor. A foreground Codex call blocks the orchestrating session and its progress output clogs the main conversation. Even a "quick question" that takes 90 seconds is 90 seconds the parent agent cannot do anything else, and the stderr progress stream is noise in the transcript.
The right mental model is that a Codex run is a subagent. Nobody runs a subagent in the foreground and watches it. You dispatch it, keep working, and handle the completion notification.
Suggested change
Flip the default in SKILL.md:
run_in_background for Codex calls generally, with -o <file> so the result is retrievable
- foreground reserved for the explicit exception: a genuine smoke test, or a call whose answer blocks the very next step and is known to be seconds long
Hard rule 2 ("Own the clock") stays correct either way. It just changes which branch is the default and which is the exception.
Worth considering whether the same default should apply to claude -p, for the same reason.
Request
Codex calls should default to
run_in_background, not foreground.Why
SKILL.mdcurrently frames it as a duration judgment call:In practice the duration is not the deciding factor. A foreground Codex call blocks the orchestrating session and its progress output clogs the main conversation. Even a "quick question" that takes 90 seconds is 90 seconds the parent agent cannot do anything else, and the stderr progress stream is noise in the transcript.
The right mental model is that a Codex run is a subagent. Nobody runs a subagent in the foreground and watches it. You dispatch it, keep working, and handle the completion notification.
Suggested change
Flip the default in
SKILL.md:run_in_backgroundfor Codex calls generally, with-o <file>so the result is retrievableHard rule 2 ("Own the clock") stays correct either way. It just changes which branch is the default and which is the exception.
Worth considering whether the same default should apply to
claude -p, for the same reason.