Skip to main content

Module ctx_shell

Module ctx_shell 

Source

Functions§

contains_auth_flow
Detects OAuth device code flow output that must not be compressed. Uses a two-tier approach: strong signals match alone (very specific to device code flows), weak signals require a URL/domain in the same output.
handle
Compresses shell command output using the unified compression pipeline. Delegates to the same exit-code-aware logic used by the CLI, so a failed command (exit_code != 0) is preserved verbatim and successful output is compressed consistently (excluded_commands, structural routing, terse). #810.
is_temp_redirect_target
Detects shell redirect operators (> or >>) that write to files. Ignores > inside quotes, after a backslash escape (\" must not toggle quote state, \> is a literal), 2> (stderr), /dev/null, and comparison operators. #848: temp directory targets are read-back, not persistent writes. #848/#989: targets that are NOT persistent project-file writes. Redirecting to temp dirs, /dev/* devices, or paths containing shell variables (which we cannot resolve at parse time) is output capture, not file authoring.
normalize_command_for_shell
On Windows cmd.exe, ; is not a valid command separator. Convert cmd1; cmd2 to cmd1 && cmd2 when running under cmd.exe.
validate_command
Validates a shell command before execution. Returns Some(error_message) if the command should be rejected, None if it’s safe to run.