Szr: A safer command output reduction for coding agents Szr, a Go-native CLI proxy developed by devr-tools, reduces noisy terminal output before it reaches an LLM context, preserving exit codes and saving tokens on logs, diffs, and test output. It wraps commands, summarizes output with a built-in retention verifier, and offers features like deduplication for re-runs and delta rendering for edit-test loops. The tool is available via Go, Homebrew, npm, and pip. szr is a Go-native CLI proxy that reduces noisy terminal output before it reaches an LLM context. It keeps the useful signal, preserves the wrapped command's exit code, and helps you spend fewer tokens on logs, diffs, and test output. - wraps the commands you already run - rewrites supported tools into more compact machine-friendly output when possible - summarizes noisy output without hiding the important anchors - records local history so you can inspect token savings over time Fidelity is a runtime guarantee, not a promise. A built-in retention verifier checks every render against the raw output — error lines, file:line anchors, diagnostic codes, failing test names — and repairs anything a filter dropped by appending the missing detail. Failing commands can never render content-free, explicit flags you pass are never overridden, and exit codes always match the wrapped command. Compression is never worse than raw. The finished display — retention repairs and artifact pointers included — never costs more tokens than relaying the raw output; when it would, szr emits the raw output instead. This holds for failure renders too: failure detail expansion stays within raw size. Ultra-compact mode opts out — there the reshaped display is the point. Profiles that read a single stream still surface the other stream's message when theirs is empty, so kubectl's No resources found on stderr renders as a compact line instead of a raw fallback. Re-runs cost almost nothing. Agents run git status , git diff , and test suites over and over. When output is byte-identical to a recent run, szr emits a two-line reference instead unchanged from previous run 39s ago, x3 identical ref: … — and szr expand