v0.42.0
feder-cr/invisible_dotsv0.42.0Sep 12, 2026by github-actions[bot]
Upgrading?
AI Summary
This release fixes a critical bug where the `support` browser helper was not being closed after use. The fix involved truncating tool descriptions to fit API limits, ensuring server instructions are sent, and modifying the end-of-turn sentence to prioritize closing the browser.
Key Highlights
- Fixed the `support` browser helper not closing after use, increasing success rate from 0% to 100%.
- Truncated `browser_open` and `browser_click_at` tool descriptions to comply with the 1024-character API limit.
- Modified the end-of-turn sentence to explicitly instruct the model to close the browser before answering.
- Ensured server instructions are properly passed to the helper browser loop.
Full Release Notes
The owner watched the helper browser get opened, used and never closed. Measured before touching anything, with the real model on a task that needs both browsers: six runs out of six left `support` open at the end, and in the owner's own sessions one conversation of 247 steps used it 29 times and never closed it. Three origins, none of them the model: - The server's instructions never reached it. They are the one place the two-browser contract is written - what `support` is for, and that whoever opens it closes it - and the loop sent the system prompt and the tool descriptions and nothing else. The link keeps what the server says at `initialize`, and one function builds the system message from this build's prompt plus those instructions, refreshed at the start of every run, so a restored transcript and a fresh one carry the same current text. It was assembled by hand in two places and had the instructions in neither. - The end-of-turn sentence forbade the very call that closes the helper: "reply with the answer and do NOT call any more tools", at the exact moment the close should happen. The order is in the sentence now - close `support` if you opened it and nothing more needs it, then answer, then no more tools - without exception vocabulary, because an exception is what a model reaches for. - The API cuts every tool description at 1024 characters, and `browser_open` was 1996: the model read it ending mid-word inside the paragraph about profiles, and the one sentence about closing was past the cut. `browser_click_at` was over too. Both fit now, the contract comes first, and what was cut moved into comments for a reader of the source. Measured after, same bench, same task, same model, six runs: `support` closed before the answer in six, left open at the end in none. Every sequence ends with browser_close support. Gates: every description under the limit and identical to what the loop sends, executed against the real server; `browser_open` names `browser_close` in its first half; the loop puts the instructions in the one system message and replaces them run to run; the brain hands the link's instructions to the loop; the end-of-turn sentence closes before it answers and carries no loophole.
Related Repositories
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
Interactive roadmaps, guides and other educational content to help developers grow in their careers.
Reverse engineer anything with agents, from app behavior down to native binaries.
The open source coding agent.
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.