Skip to content

Crush 0.99.0 moves to Catwalk v3 and adds lifecycle hooks

Updated Crush

Summary

Crush v0.99.0 (October 29, 2026) switches provider config to Catwalk v3 API types, adds session, turn and permission hooks, and expands client/server mode.

Tool
Crush
Date
Open source
No
License
FSL-1.1-MIT
MCP
Yes
Pricing
Not stated in the sources we cited.

Charm released Crush v0.99.0 on October 29, 2026, six days after 0.98.2. The @charmland/crush npm package was published eight minutes later. It is the largest Crush release this month: a new provider format, hooks that follow a whole run, and a set of server features for apps that embed Crush.

Release facts

FactDetail
ProductCrush (terminal coding agent)
Version0.99.0
Release dateOctober 29, 2026 (GitHub release and npm)
Previous release0.98.2, October 23, 2026
LicenseFSL-1.1-MIT (Functional Source License, MIT future license)
Installnpm i -g @charmland/crush, or a release binary verified with cosign

Check before upgrading

  • Provider types now describe the API format, not the vendor. Catwalk v3 uses completions (OpenAI-compatible), responses (OpenAI Responses) and messages (Anthropic-compatible). Old openai, openai-compat and anthropic values are migrated when the config loads, so existing files keep working.
  • CLI flags changed. In crush model add, --can-reason is replaced by --thinking always|never|toggleable, and --max-attachments N is new. Update scripts that call the old flag.
  • Hooks are validated. Hook configs are checked against the declared event list, so a misspelled event name now fails early instead of silently never firing.

What changed

  • Lifecycle hooks: besides tool hooks, there are now session, turn, permission and compaction events, plus PostToolUse and PostToolUseFailure. The hooks docs map each event to its Claude Code equivalent.
  • Client/server mode: a host app can theme the TUI over the server API, send host context such as open files (which then appear in completions), append text to the next prompt without starting a run, and see which session other clients are viewing. With CRUSH_PERMISSIONS_PIPED=1 the host answers permission prompts. http:// works as an alias for tcp://.
  • Steadier server: SIGHUP reloads the config instead of stopping the server, and quitting through a terminal close or a service manager saves work in progress.
  • Fixes: a failed tool call no longer ends the agent turn, the first prompt in a new session is no longer duplicated, forked child processes no longer draw over the TUI, and llama.cpp model fetching no longer doubles /v1.

Questions

Do I need to edit my config? No for provider types, which are migrated on load. Yes if a script passes --can-reason to crush model add.

Can I reuse Claude Code hooks? The release notes say the hooks docs describe how each event lines up with Claude Code. Check the event names against Crush's list, since unknown names are now rejected.

Is Crush open source? It is source-available under FSL-1.1-MIT, which converts to MIT two years after each release. It is not an OSI-approved license today.

More: the Crush hub, the coding agents category, and alternatives such as OpenCode and Aider.

Alternatives

Crush compared with its alternatives
ToolLicensePricing note
CrushThis launchCharm's terminal coding agent, source-available under FSL-1.1-MIT, with multi-provider models, MCP, hooks and a client/server mode for embedding.
FSL-1.1-MITFree to install; you bring your own model provider and API keys.
OpenCodeOpen-source coding agent from the anomalyco/opencode repository, MIT-licensed, with a terminal client and a site at opencode.ai.
MITThe client is MIT-licensed. Model access is separate; this page does not quote a hosted plan.
AiderApache-2.0 terminal pair programmer. The project describes Aider as AI pair programming in your terminal.
Apache-2.0Apache-2.0 software. Model access is separate.
GooseApache-2.0 agent from Block. The repository describes Goose as an open-source, extensible AI agent that goes beyond code suggestions.
Apache-2.0Apache-2.0 client. Provider access is separate.

More from Crush

View all

Questions

What is Crush?

A terminal-based coding agent from Charm, published as charmbracelet/crush. The repository describes it as "Glamourous agentic coding for all". It talks to OpenAI-compatible, OpenAI Responses and Anthropic-compatible APIs, which Crush configures through Catwalk provider types.

Is Crush open source?

It is source-available. LICENSE.md is the Functional Source License 1.1 with an MIT future license (FSL-1.1-MIT), the license npm lists for @charmland/crush. Each release becomes MIT after two years; FSL itself is not OSI-approved.

Does Crush support MCP and hooks?

Yes. Earlier releases fixed MCP server toggling, and v0.99.0 (October 29, 2026) extended hooks beyond tools to session, turn, permission and compaction events, documented against Claude Code's hook events.

How do I install Crush?

npm i -g @charmland/crush, or download a release binary from GitHub and verify checksums.txt with cosign as described in the release notes.

Filed on Agent Radar. Claims in this note are limited to the sources above.