I don't think having a tool that rewrites tool descriptions is a good idea.
You should put effort into getting them in a good place and accept the token levels (which is part of that design space).
aSidorenkoCode•1h ago
Every API call sends the full tool schema for all available tools. In a 10-20 step session, you're paying for the same verbose descriptions over and over. Models don't need a paragraph-long explanation of read on the 15th call.
This plugin slims descriptions to one-liners like "Read file content." while cutting 21-45% of token usage. No schema changes, no custom tools. Just trimmed boilerplate as an opt-in plugin.
verdverm•1h ago
> Every API call sends the full tool schema for all available tools.
Only if you are doing it wrong, search >>> summarization
Then the other question, is it deterministic between runs or am I going to get a different summary each session, turn, or toolcall? And depending on that frequency, am I using more token than I save by doing summarization for N tools?
Minimizing token usage is not the goal in of itself, re: the ageless tradeoff of quantity vs quality
For some context, my system prompt is around 5k tokens at the start. I put file contents there read/write/agents.md, which save millions of tokens and seems to work better than making them message parts.
> Just trimmed boilerplate
This is not what I see this tool doing. It's automatically manipulating words in the background that you should put far more care and attention towards. Referring to those words as "boilerplate" you can just throw into a slop machines is revealing
aSidorenkoCode•58m ago
the benchmarks show no degradation in task completion with the shorter descriptions. We're in the age where frontier LLMs don't need instructions on how to read or edit a file.
The descriptions aren't dynamically summarized either. They're static in the plugin, same every call, every session. Zero overhead, fully deterministic.
This has been validated in over 3000 benchmark runs in OpenCode and I ran the entire Exercism Python practice suite (https://github.com/exercism/python/tree/main/exercises/pract...) with and without the plugin with identical results. An initial dataset is shared in the repo.
verdverm•50m ago
Have you made that benchmarking process open so others could reproduce it?
> with identical results
If your results are identical, you should be very sus, something is wrong if this is true. Nothing in agentic is reliable of fully deterministic
aSidorenkoCode•43m ago
Good benchmark results don't mean identical outputs. The task completion rate is the same: both pass the same exercises. The paths the model takes differ, but the end result is the same -> pass the tests
The full benchmarking methodology and tooling will be published alongside the paper.
verdverm•41m ago
you used the word "identical" to describe it, not me
words matter
which is why I still think this is a terrible idea, I don't think it holds up in the general case and would, as a peer reviewer, be inclined to believe there is benchmark filtering that makes for good results.
You should use the same benchmarks everyone else is when you write your paper
verdverm•1h ago
You should put effort into getting them in a good place and accept the token levels (which is part of that design space).
aSidorenkoCode•1h ago
This plugin slims descriptions to one-liners like "Read file content." while cutting 21-45% of token usage. No schema changes, no custom tools. Just trimmed boilerplate as an opt-in plugin.
verdverm•1h ago
Only if you are doing it wrong, search >>> summarization
Then the other question, is it deterministic between runs or am I going to get a different summary each session, turn, or toolcall? And depending on that frequency, am I using more token than I save by doing summarization for N tools?
Minimizing token usage is not the goal in of itself, re: the ageless tradeoff of quantity vs quality
For some context, my system prompt is around 5k tokens at the start. I put file contents there read/write/agents.md, which save millions of tokens and seems to work better than making them message parts.
> Just trimmed boilerplate
This is not what I see this tool doing. It's automatically manipulating words in the background that you should put far more care and attention towards. Referring to those words as "boilerplate" you can just throw into a slop machines is revealing
aSidorenkoCode•58m ago
The descriptions aren't dynamically summarized either. They're static in the plugin, same every call, every session. Zero overhead, fully deterministic.
This has been validated in over 3000 benchmark runs in OpenCode and I ran the entire Exercism Python practice suite (https://github.com/exercism/python/tree/main/exercises/pract...) with and without the plugin with identical results. An initial dataset is shared in the repo.
verdverm•50m ago
> with identical results
If your results are identical, you should be very sus, something is wrong if this is true. Nothing in agentic is reliable of fully deterministic
aSidorenkoCode•43m ago
The full benchmarking methodology and tooling will be published alongside the paper.
verdverm•41m ago
words matter
which is why I still think this is a terrible idea, I don't think it holds up in the general case and would, as a peer reviewer, be inclined to believe there is benchmark filtering that makes for good results.
You should use the same benchmarks everyone else is when you write your paper