docs(shell): align CONFIGURATION/TOOL_SURFACE/error message with shell default (#3756 follow-up)#3787
Conversation
…l default #3756 flipped interactive Agent shell to on-by-default (approval-gated) and updated MODES.md, but CONFIGURATION.md, TOOL_SURFACE.md, and the exec_shell "unavailable" reason / allow_shell hint in tool_catalog.rs still described the old opt-in model. Post-merge `main` therefore had docs that contradicted both the runtime and MODES.md. Align all three with the shipped behavior: interactive TUI Agent exposes shell by default with approval prompts unless `allow_shell = false`; headless/durable/ noninteractive profiles keep the conservative omitted-field default and require `allow_shell = true`; Plan mode hides shell; YOLO enables shell + auto-approval. Behavior unchanged (docs + user-facing message only). Existing shell-message tests still pass (the improved message keeps the asserted substrings). Completes the documentation for #3756.
|
Claude finished @Hmbown's task in 1m 42s —— View job PR Review
Summary: Clean, focused documentation fix. No behavior changes. All three surfaces now consistently describe the new shell-on-by-default model, matching
|
Why
#3756 (merged) flipped interactive Agent shell to on-by-default (approval-gated) and updated
MODES.md, but left three surfaces describing the old opt-in model. Post-mergemainnow has self-contradictory docs:docs/CONFIGURATION.md— still said shell must be explicitly enabled.docs/TOOL_SURFACE.md— still said Agent mode "usually meansallow_shell = true".crates/tui/src/core/engine/tool_catalog.rs— theexec_shellunavailable-reason andallow_shellhint still said shell "requiresallow_shell = true".Change
Docs + user-facing error message only — no behavior change. All three now state: interactive TUI Agent exposes shell by default with approval prompts unless
allow_shell = false; headless/durable/noninteractive profiles keep the conservative default and requireallow_shell = true; Plan hides shell; YOLO enables shell + auto-approval. Consistent withMODES.md.Validation
cargo test -p codewhale-tui --bin codewhale-tui—missing_shell_tool_error_message_*(2) andtool_search_reports_known_core_action_tool...(1) pass; the improved message keeps every asserted substring. (Deliberately did not touch the #3756-entangled approval tests.)Completes the documentation for #3756.