Claude Code, tamed: terse answers, small diffs, verified work, guarded git.
One command turns a stock ~/.claude into a careful senior dev's setup.
curl -fsSL https://raw.githubusercontent.com/HT0710/claudzilla/main/install.sh | bashRequires: git, curl, tar, perl and Claude Code. Missing node or rtk is installed to ~/.local without sudo; keep ~/.local/bin on your PATH. Native Windows is not supported; use WSL.
On a fresh install it asks Full (recommended) or Custom; re-runs keep your saved choice. Full installs every part; Custom lets you untick parts. Run by Claude (no terminal), it stops and prints the questions for Claude to ask you. A fresh --add hud installs only hud plus the updater (no rules, no core settings).
| flag | does |
|---|---|
--full |
install every part |
--custom |
pick parts from the menu |
--add a,b |
add parts to your install |
--remove a,b |
remove parts from your install |
--uninstall |
remove claudzilla (asks first) |
--yes |
skip the --uninstall confirmation |
Flags go after bash -s --. For example, only the status line:
curl -fsSL https://raw.githubusercontent.com/HT0710/claudzilla/main/install.sh | bash -s -- --add hud| part | covers |
|---|---|
core |
rules, hooks, settings, pr and rule-review skills |
hud |
statusline, themes, MesloLGS NF font |
rtk |
token-saving command filter |
caveman |
terse replies |
ponytail |
smallest-change coding |
dividers |
response dividers |
panel |
side panel |
picks |
suggested next steps |
toast |
update and usage notices |
attribution |
commit credit |
core is not in the menu; --add and --remove accept it. The updater always ships; it also carries the guide, /claudzilla report and /claudzilla compact. Your choice is saved, see How install works.
Safe to re-run. Anything replaced is backed up to ~/.claude/.claudzilla-backup/.
New here? Read GUIDE.md, or type /claudzilla in Claude.
Answer first, evidence cited, one fix proposed, nothing edited until you say go, and "fixed" only after the test ran.
Every picture is a real capture of one small demo repo, shot with permission prompts off (--dangerously-skip-permissions, hence the red bypass permissions on line); only the account email is blanked out.
-
Terse replies: TL;DR first, tables over prose, every claim backed by a
file:lineor a command, or marked unverified.
-
Investigate, then ask: root cause and one recommendation before any multi-file edit.
-
Picks card: a reply that ends in a decision shows a card above the prompt; press a digit to answer (details).
Real speed. Press 1: the option's id and text go into the prompt box; Enter sends it. Needs the
pickspart. -
Dividers and file links: lines frame the TL;DR,
Next:and each---, fitted to the chat width. A file path in a reply is a link: click it to see those lines in the panel (details).
Real speed. Click
auth/token.js:3: the File tab shows the lines around it, line 3 marked▶. Needs the fullscreen layout and thedividersandpanelparts. Your terminal's own link click, such as ctrl+click, opens the file; Claude Code does not.
-
Lazy by default: the smallest change that fully works (ponytail).
-
Disciplined workflow: debugging, TDD, plans and reviews via superpowers.
-
Fewer tokens: short-form voice (caveman), and every Bash call is filtered through
rtk.
-
Guard hook: blocks force-pushes, discarding work and commits on
main.
-
Verify before push: push and PR wait until verification ran; "done" claims with no check run after the last edit get sent back.
-
Clean history: Conventional Commits enforced, Claude session links stripped from commits and PRs (details).
-
Statusline: cwd, branch, context / 5h / weekly meters, model, effort, active skill, claudzilla version.
3× speed. One real turn: the context meter climbs and the skill Claude loaded appears. The
5handwkmeters show only on a Claude subscription login, such as Pro, Max or Team. The symbols need the MesloLGS NF font; without it, basic symbols. -
Prompt panel:
/panelshows what Claude plans and does, lists this chat's prompts, previews files and shows git; click to jump, reuse or rewind (details).
2× speed. After
planning…, Claude's reading of the request (ASK, PLAN) fills in, and each step goes ○ → ● → ✓ until the header reads✓ done. Docks beside the chat in the fullscreen layout, from 110 columns. Costs: a short tool call per report (the panel'sintentoption in/configturns it off), and while the Overview tab shows, an Opus request at low effort after each prompt to sort topics. -
Toasts: updates install in the background and say so; a toast also shows when the 5-hour or weekly limit passes 50%, 75% and 90%, and when context is worth compacting (details).
-
Theme + settings: muted dark truecolor theme,
opus[1m], normal permission prompts. -
Local trace: a record of what claudzilla's parts did, kept in
~/.claude/claudzilla-trace/, never uploaded;{"rulesGuard":{"trace":false}}in~/.claude/claudzilla.jsonturns it off. See the guide topicbugs(/claudzilla bugs).
More screenshots
Panel Git tab: the branch, changed files and recent commits.
Panel History tab: this chat's prompts, newest first, with rewind and latest.
Guide pane: /claudzilla or alt+g, topics beside a section.
| command | does |
|---|---|
/claudzilla [topic] |
the guide, one topic at a time |
/claudzilla report [what happened] |
drafts a problem report from the local trace (nothing uploaded); files an issue only on your yes |
/claudzilla compact |
drafts a /compact line into the prompt box |
/panel |
side panel: Claude's plan and steps, this chat's prompts, files, git |
/rule-review |
how often each rule slipped; weekly summary at startup; on your yes, shares the counts (no text) as a claudzilla issue |
pr skill |
pre-PR checks + description template, runs before every PR |
| file | for |
|---|---|
~/.claude/CLAUDE.local.md |
instructions for this machine only |
~/.claude/settings.overrides.json |
settings for this machine only, merged last |
~/.claude/claudzilla.json |
turn guard checks on or off |
Full reference, install internals and keybindings: CONFIGURATION.md.
Each push to main with a feature, fix or refactor ships a release, once the tests pass. At most once a day, a new session or /clear installs the newest release in the background, unless the clone has local changes; then you get a notice. After an update, /claudzilla news lists what changed. To update by hand (latest main, may be ahead of the release):
cd ~/claudzilla && git pull && ./install.sh~/claudzilla/install.sh --uninstallRemoves claudzilla's links, settings entries, keys, plugins and record from ~/.claude, and undoes what the install recorded (node, fonts, shell lines). It lists what is still there (rtk, copies it did not install, the clone) with the commands to delete them. Claude runs it with --yes after you confirm.
Built on caveman, ponytail, superpowers and rtk.