shush
Claude Code plugin · skill + session-start hook
Turns down a model's verbosity without losing substance. It cuts which sentences exist, never the grammar they are written in, so responses get shorter while warnings, tradeoffs, and failing output always survive.
v0.1.0 · MIT · released, installable from the public marketplace
Why it exists
I made shush because I was tired of models like Opus 4.8 writing a paragraph to explain a one line edit and narrating every tool call along the way. I tried caveman-style modes that compress grammar by dropping articles and writing in fragments, but I came to the realization that they sometimes increased my token usage through rereads and follow-up questions, and they didn't always activate when they should have. Shush inverts the approach and selects rather than compresses: one test governs every sentence the model writes, which is whether removing it would change what the reader does or believes next, and if it wouldn't, it never gets written.
Quick start
# inside Claude Code
/plugin marketplace add SeanL128/shush
/plugin install shush@shush
A session-start hook keeps shush active in every session automatically, with no CLAUDE.md edits needed. Turn it off with stop shush.
Configuration
-
/shush liteCuts preamble, narration, and postamble only; explanations stay. -
/shush fullThe sentence test enforced on every line. Default. -
/shush ultraOne sentence if one suffices; detail on request. Quality floor still holds. -
stop shushReverts to normal output until re-enabled.
How it works
There are two pieces. A skill carries the full ruleset, covering what to delete on sight (preamble, tool-call narration, unrequested explanation, and option tours) alongside a hard quality floor of things that are never cut, which includes destructive-action warnings, failing test output, the key tradeoff at a decision point, and anything explicitly asked for. A SessionStart hook then injects a distilled version of that ruleset into every session's context, and that is what makes it reliably always on, as description-based skill matching alone fires inconsistently.
Status & roadmap
Shush is released and installable from the public marketplace. Ongoing work is tuning the quality floor against real sessions.
- Selection-over-compression skill with intensity levels
- Always-on SessionStart hook
- Plugin packaging and public marketplace install
- Tuning the quality floor against real sessions
What I learned / what broke
Compression and selection turned out to be different levers. Grammar compression reads as cheaper but isn't, because mangled prose forces clarifying turns that cost more than the articles it saved, while cutting whole sentences that carry no decision weight is the lever that actually reduces tokens.
The second lesson was about activation. A skill's description matching is too flaky to carry an always-on behavior, and in more instances than I could count a mode like this simply would not fire when it should have, so the reliable pattern is a SessionStart hook that injects the mode directly into context.