Fix Review Interactive Setup and Defaults · Entire
Interactive Configuration of Entire Review
Issue Summary
The interactive configuration for the Entire review command has been affected due to incorrect terminal detection, leading to failures in executing --configure interactively.
Available Review Agents
- claude-code: hooks installed
- codex: hooks installed
- gemini: not installed; run
entire configure --agent gemini - pi: not installed; run
entire configure --agent pi
Configured Profiles
- (none yet)
Configuration Command Examples
To configure non-interactively, you can use:
entire review --configure --profile general --set-agents claude-code,codex --set-judge <agent>
Debugging Terminal Detection
Output from Console:
When running the command inside Pi, the output was:
1
PI_CODING_AGENT=true
This indicates that the terminal is treated as non-interactive.
Recommendations:
For proper execution, run:
entire review --configure
If the shell has inherited Pi’s environment, use:
env -u PI_CODING_AGENT entire review --configure
Bug Explanation
The CLI incorrectly categorizes a console as non-interactive due to various environmental conditions:
- Not detecting
stdoutas a TTY - Presence of certain environment variables such as
CI,GIT_TERMINAL_PROMPT=0, and others.
Required Terminal Checks
Please verify your terminal with:
tty
test -t 1; echo "stdout_tty=$?"
env | grep -E '^(CI|GIT_TERMINAL_PROMPT|PI_CODING_AGENT|GEMINI_CLI|COPILOT_CLI|ENTIRE_TEST_TTY)='
Conclusion on Interactive Mode
Despite previous claims, the interactive mode has not been removed. The current implementation allows for three interactive paths:
entire review --configure→ opens interactive setup.- Bare
entire review→ opens an interactive profile picker. entire review --edit→ opens an advanced profile picker.
Recent Fixes and Changes
- Fixed routing of terminal detection to ensure that real terminals are prioritized.
- Added regression coverage in testing to ensure proper functionality of the fix.
- Adjusted interactive settings to require both stdin and stdout to be connected to terminal devices.
Example Commit Links
For detailed discussions, refer to the full set of debug and resolution comments provided within the repo.