Show HN: Terse, a Claude Code plugin that halves reply length by cutting filler
github.com/lowenbjer
When I ask a question, I get an essay back, and with so many weird constructs: slogans, metaphors, recaps, strange choice of nouns, "it's not X, it's Y".
Claude's own "concise" mode shortens it, somewhat, but keeps the the rest of the slop.
I tried system prompts, those got forgotten after a couple of turns. I tried looking for plugins but none consistently made Claude speak normally. Some where slash commands, other solved for token use, others solved for neurodivergence.
I just wanted to not read an essay and make Claude get to the point fast, every single time.
Is that so much to ask? Apparently; it took me weeks of trial and error to make something that worked for me, I have stories, but I'm sharing it as a claude code plugin with you, those of you who struggle with Claude, the same way I did.
[2 comments hidden]
"Are you thinking of doing this or are you just daydreaming?" and garbage like that. They got better at it with LLM options and instructions, but I couldn't make them stop completely to try to keep me "engaged".
TZubiri[6 comments hidden]
The model is essentially thinking out loud, when you ask it to be more concise, you make it think less, therefore producing more erroneous answers.
Some models have an internal chain of thought (claude being one of them), which sometimes isn't even published to avoid reverse engineering, but it seems that this might still be a problem.
What you'd want actually is a layer that summarizes the actual answer, but that's actually an internal prompt by claude that you are not seeing, the model just doesn't expose the necessary bits for you to hack this together.
Try another model that exposes the raw llm output instead of exposing a CoT result directly.
Of course the real hack is learning to read diagonally without reading every single word, this is a skill that is useful in general. It's also less effort in general, instead of making plugins and super customizing the thing, you just consume the default settings, which are hyperoptimized, and require no time spent in configuration.
cyanydeez[4 comments hidden]
The <think> blocks are an attempt to explore the gradient descent space to escape local minimums and find a better global minimum to continue the descent.
While verbosity _might_ do this better, you could easily consider things like "but wait am I forgetting ...." as just one token. So if you actually do it right, you could replace all that with a "hold on" or something of a terse variety.
lowenbjer[3 comments hidden]
TZubiri[2 comments hidden]
A simple example, if you have two models Short and Long, and ask "what is 1942848x41482982", the Long model might answer in 300 tokens by expanding the operation and producing intermediate factorizations and solutions. While the short answer will simply produce the output. However since the Long model actually developed its answer instead of hallucinating it, it will more often be correct.
It's not that more text holds more information, but that more compute can solve more problems correctly. Limiting output length in models is effectively reducing compute, which obviously will lead to less correct answers.
lowenbjer[hidden]
lowenbjer[hidden]