Changelog
Every banish release and what it changed, newest first. banish compacts shell output before it reaches Claude Code, Cursor, or any MCP agent, so each release is about cutting more tokens from more commands. Install or upgrade with:
New here? Start with the quickstart, see the benchmarks and the methodology behind them, browse every command, or read the guides on reducing MCP token usage and Claude Code usage limits.
v0.5.0 - 2026-07-11
Self-update and a smoother install. banish can now update and remove itself, and a fresh install no longer needs a password on a typical machine.
- New
banish upgrade: download the latest release, verify its checksum, and replace the running binary in place.banish upgrade --checkreports whether a newer release exists without installing it. - New
banish uninstall: remove the binary, with--purgeto also delete~/.banish(extensions, cache, and savings data). - A one-line update notice when a newer release is out. It only appears on an
interactive terminal, never in agent, hook, or CI output; silence it with
BANISH_NO_UPDATE_CHECK=1. - The install script now installs to a
user-writable directory when
/usr/local/binis not writable, socurl -fsSL https://banish.sh/install.sh | bashno longer prompts for a password on a typical macOS setup.
v0.4.0 - 2026-07-10
Cloud CLIs join the party. banish now compacts the verbose output of the three major cloud CLIs before it reaches Claude Code, Cursor, or any MCP agent.
- Comprehensive AWS pack: 186 rewrites plus a generic JSON renderer, with
measured savings of 53 to 95 percent across common
awscommands. - Comprehensive Azure pack: 106
azrewrites plus the JSON renderer, 61 to 91 percent saved. - Comprehensive Google Cloud pack: 96
gcloudrewrites plus the JSON renderer, 63 to 89 percent saved. - New AWS, Azure, and Google Cloud benchmark fixtures so every cloud savings figure is reproducible.
- CI hardening: Go bumped to 1.26.5 to pick up an upstream security fix.
See the full list in the built-in filters reference.
v0.3.1 - 2026-07-07
Security patch for the MCP server. Recommended for
anyone running banish serve.
- Extension verb arguments are shell-escaped before they run, closing a command-injection vector where a crafted MCP argument could execute arbitrary shell commands.
- Tool arguments (positional and modifier) are encoded with the interpreter's exact escape set, so a URL or a value with control bytes survives intact.
- Command detection is quote-aware: a quoted target containing a dash is no longer mistaken for a shell flag.
echoand other builtins return the raw argument value instead of a re-quoted form.
v0.3.0 - 2026-07-07
Smarter renderers and broader coverage - more of the output an agent reads every day now shrinks before it enters the context window.
- JSON-preferring renderers for
kubectlandgh: banish requests structured output and returns a compact form, so MCP tool output stops eating your context window. - Lockfile-aware
git diffrenderer: package-lock.json, yarn.lock, Cargo.lock, and go.sum collapse to the dependencies that actually changed. - New
banish benchsubcommand and a fixture corpus, so every savings figure on this site is reproducible. - New filter packs: dotnet, JavaScript
test/lint runners, make/cmake/ninja, and the GitHub
ghCLI. banish --versionand-vwork as flags, not just theversionsubcommand.- Manifest discovery skips a directory named BANISH instead of erroring on every command.
v0.2.0 - 2026-07-04
The compaction rewrite - the core of how banish reduces Claude Code token usage.
- New rewrite/render/cap compaction pipeline, with the built-in defaults shipped as embedded .bsh.
- Shell commands run verbatim; the
.bshgrammar applies only to registered verbs, so your commands are never reinterpreted. - OS-aware shell selection so banish works on Windows.
- Honest token-savings accounting in
banish gain.
v0.1.0 - 2026-06-16
First public release - three tools in one binary for LLM coding agents.
- The bash proxy: run a command through banish and get compact output back.
- The MCP server (
banish serve), exposing verbs as tools over stdio. - The .bsh language for defining verbs and output filters without a recompile.
- Token-savings tracking and core filters for git, docker, kubectl, npm, cargo, and more.