Repository navigation
Releases: ItsCetla/tada
Releases · ItsCetla/tada
Release list
v0.4.0
Added
- Claude Code engine. When the
claudeCLI is installed, a "Claude Code"
provider shows up in the model picker (default model, Opus, Sonnet or
Haiku). Ta-Da runs your ownclaudefor each turn and shows its output,
tool cards and diffs in the chat. Its tool requests go through Ta-Da's
permission prompts, and when Claude wants to ask you something it uses
Ta-Da's question dialog. Plan mode maps to Claude Code's plan mode. Login
and billing stay with the CLI; setuse_api_key: truein the provider's
provider_optionsto billANTHROPIC_API_KEYinstead, orbinaryto
point at a different CLI. - Magic Context, a Go port of
cortexkit/magic-context (MIT).
Off by default; turn it on withoptions.magic_context.enabled: true. It
replaces auto-summarize for the main agent: a background historian
compresses older turns, the agent can drop old tool output with
ctx_reduce, and project memories, notes and search (ctx_memory,
ctx_note,ctx_search,ctx_expand) carry over between sessions.
Commands:ctx-status,ctx-flush,ctx-recomp,ctx-wrapupand
ctx-dream. Data stays in the local database; embeddings are off unless
you set an endpoint.
Fixed
- A new tab can be opened while the current session is still working.
- OpenCode plugin entries written as
[name, options]pairs are read
correctly.
Notes
- Claude Code sessions run Claude Code's own loop, tools and compaction, so
Magic Context and Summarize don't apply to them, and Ta-Da's system prompt
isn't sent. Cost is only shown withuse_api_key.
v0.3.2
Added
- Three named permission modes: Manual (asks first), Plan (read-only
planner) and Auto (skips prompts; system level commands stay blocked).
Shift+Tab cycles Manual → Plan → Auto, and the status bar always shows the
current mode. Auto replaces the old YOLO name;--autojoins--yolo, and
the plan hand-off's "Code in Auto" button also answers toa.
Changed
- The tab bar now shows as soon as a session is open, so its
+button is
there to start a second session. - Auto turned on with Ctrl+Y no longer gets carried into plan mode; Shift+Tab
from Auto always goes back to Manual.
v0.3.1
Security
- Tables and charts no longer pass terminal control characters through.
Escape sequences in a chart's title, labels, series names or unit, or in a
table cell, are stripped before drawing, so a reply can't retitle the
window or clear the screen. - Charts with extreme values (beyond ±1e300) are refused with a
chart: value … out of rangenote, and very large or very tiny values can
no longer crash the chart renderer.
0.3.1 also includes everything new in 0.3.0:
Added
- Tables and charts in replies. Markdown tables in assistant replies are
drawn as styled tables: amber header, faint row stripes, numbers lined up
on the decimal point,:--:alignment, and bold, italic and code cells.
Tables that are too wide shrink their text columns with…(number
columns are never cut) and fall back to stacked rows when nothing fits.
A fenced```chartblock with JSON is drawn as a bar, horizontal
bar, braille line or sparkline chart, with a legend for several series.
A broken chart shows its code block and a dimchart: <error>line. It is
all drawn locally, follows the active theme andNO_COLOR, and copying a
message still copies the raw markdown. Turn it off with
options.tui.rich_blocks: falseorTADA_NO_RICH=1. - In the TUI, the agent's system prompt gets a short note on tables and
chartblocks (only whenrich_blocksis on).tada runand sub-agents
don't get it. - Session tabs. Sessions you open stay as tabs above the chat. Click a
tab or pressalt+1…alt+9to switch,ctrl+pgdown/ctrl+pgupfor the
next or previous tab,alt+wor the tab's×(or a middle click) to
close it, and+for a new session. The commands palette has Next Tab,
Previous Tab and Close Tab. The tab bar only shows with two or more tabs.
Changed
- Diffs in edit and write tool results wrap long lines instead of cutting
them off, in both unified and split views.
Fixed
- The header wordmark in wide (fullscreen) windows: the D is never stretched
into a box, and the dotted field beside it ends in a straight edge instead
of a ragged one.
v0.2.0
Changed
- Renamed to Ta-Da. The binary is now
tada, environment variables are
TADA_*, config lives in~/.config/tada/tada.json,tadarc,.tada/and
TADA.md. The repository moved to
ItsCetla/tada and the site to
tada.cetla.dev. - On first run, settings and data from
~/.config/crushand
~/.local/share/crushare copied into the new Ta-Da folders, andCRUSH_*
environment variables are still honoured. Project.crush/session history
is not moved;.crush/skillsand.crushignoreare still read. - New "cetla" default theme, Ta-Da wordmark and a short startup intro
(skip with any key; turn off withTADA_NO_INTRO=1or
options.tui.intro: false).
Added
tada update(--check,-y): downloads the latest release from GitHub,
checks it againstSHA256SUMS.txtand replaces the binary.- Background update check: at most every 6 hours, asks api.github.com for the
latest release and tells you once per new version. Never downloads on its
own. Turn it off withoptions.update_check: false,
option update-check falseorTADA_NO_UPDATE_CHECK=1. - Windows installer (
tada_<version>_Windows_<arch>_Setup.exe): per-user
install without admin rights, addstadatoPATH, Start menu entry,
uninstaller in Settings → Apps. Upgrading from the 0.1.0 Crush installer
removes the oldcrush.exeand shortcuts.
v0.1.0
First tagged release of the fork, based on upstream Crush as of 2026-10-15.
Added
crush trust,crush trust --listandcrush trust --revoke: a trust gate
that keeps a cloned project'scrush.json,crushrc,.crush/and
OpenCode config inert until you say so.CRUSH_TRUST_PROJECT=1and
options.trusted_pathsare the non-interactive equivalents.- OpenCode import: MCP servers, providers, model choices, the cached
models.dev catalog, rules, skills, custom commands (opencode:<name>),
tool toggles, deny permissions,edit: allowandcompaction.autoare
read from a local OpenCode install.crush opencodeprints exactly what
was imported and why anything was skipped. Toggle pieces in
options.opencode;CRUSH_DISABLE_OPENCODE=1turns it all off. permissions allow-in-project edit write …(permissions.project_allowed_tools)
lets file tools skip the prompt only inside the project directory.option web-tools true/options.enable_web_tools/CRUSH_ENABLE_WEB_TOOLS
to opt in to thefetch,agentic_fetch,downloadandsourcegraphtools.- The import report flags MCP servers that fetch packages on start (
npx,
bunx,pnpm dlx,yarn dlx,@latest). - Windows, macOS and Linux release archives with
SHA256SUMS.txt, built by
thereleaseworkflow as a draft GitHub release.
Changed
- The provider catalog is offline by default; refresh it only with
crush update-providers. - Bash auto-approval only applies to a single parsed read-only command.
Wrappers (env,timeout, …), redirections, pipes and multi-line commands
always ask.envdumps,ps eandlsoutside the working directory ask too. - Every web tool call and every
agentic_fetchsub-agent request asks for
permission first;sourcegraphasks before each search. duandgit blamecan no longer read files outside the project.- Banned shell commands are also caught when hidden behind wrappers or paths.
- Config and lock directories are created readable only by the user, and the
server's unix socket is private to its owner. - Panic logs go to the log directory instead of the working directory.
crush --versionprefers the version passed at build time over the Go
toolchain's VCS stamp.
Removed
- PostHog telemetry and machine-id tracking.
- The startup update check.
- The Charm Hyper provider and the Catwalk/Hyper catalog fetches at startup.
- Automatic
.envloading, the forced Termux DNS resolvers and the global
pprof mux. - Upstream release, CLA and labeler automation.
Security
- Provider API keys are scrubbed from the agent's shell environment.
- Credential headers and key-like query parameters are redacted from HTTP
debug logs; env values that fail to resolve are no longer logged. - The
downloadtool caps writes at 100 MiB and removes oversized files. - The lint workflow no longer persists checkout credentials.
Downloads
| Platform | File |
|---|---|
| Windows x64 installer (recommended) | crush_0.1.0_Windows_x86_64_Setup.exe |
| Windows ARM64 installer | crush_0.1.0_Windows_arm64_Setup.exe |
| Windows x64 (portable zip) | crush_0.1.0_Windows_x86_64.zip |
| Windows ARM64 (portable zip) | crush_0.1.0_Windows_arm64.zip |
| macOS Apple silicon | crush_0.1.0_Darwin_arm64.tar.gz |
| macOS Intel | crush_0.1.0_Darwin_x86_64.tar.gz |
| Linux x64 | crush_0.1.0_Linux_x86_64.tar.gz |
| Linux ARM64 | crush_0.1.0_Linux_arm64.tar.gz |
The Windows installer needs no admin rights: it installs to
%LOCALAPPDATA%\Programs\Crush, adds crush to your PATH, adds a
Start menu entry, and uninstalls from Settings > Apps.
Verify a download against SHA256SUMS.txt:
shasum -a 256 -c SHA256SUMS.txt --ignore-missing (macOS/Linux) or
Get-FileHash crush_0.1.0_Windows_x86_64_Setup.exe (PowerShell).