Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,14 @@ This changelog was generated from the repository Git history and release tags. V
- New tab page: WebBrain now provides a new tab with a clock, quick links, bundled backgrounds and a WebBrain box (Ask, Act or Search). Ask and Act both run in the side panel straight away (Act shows a warning that it starts working immediately; Plan before Act still applies). Based on Mue (BSD-3-Clause), with all of Mue's network calls and telemetry removed. Adds the `search` permission. See `docs/newtab.md`. The new tab is opt-in: the last onboarding step has a "Use WebBrain as my new tab page" checkbox (ticked by default, next to Help Improve WebBrain) and Settings → General has the same switch; when it is off, new tabs go to the browser's own new tab page. On Firefox the new tab stays on and has no switch in WebBrain, because Firefox cannot hand a tab to its own new tab page; change it in Firefox's settings.

### Changed
- Settings is reorganized. Its tabs are now General, Budgets, Memory, Skills, CAPTCHA, Bridge and Advanced. The providers and the assistive models moved to a new Providers page with LLM, Vision, Speech, Generative, Decision and SafeSocial tabs; open it from **More…** in the side panel's model menu or from the Providers link at the top of Settings. Site permissions moved to their own page, opened with **Manage site permissions** in the ⚠ menu next to the microphone. Advanced is now a tab instead of a drawer inside General, and the CAPTCHA solvers have a tab of their own. The new Budgets tab holds the cloud cost allowances, the question timeout and what happens when it runs out, Max Agent Steps, the LLM request timeout and the image budget. Screenshot redaction moved to Advanced. Language and UI zoom are chosen in the side panel only. The search box looks through General, Budgets, CAPTCHA and Advanced at once. Old links to the moved tabs open the new pages.
- Auto-screenshot now defaults to On navigation instead of On state change. A value already saved is kept, including one restored from an older configuration export, which records the old default.
- Record traces and Record full request details are now one switch: traces are recorded with their full request details, or not at all. An install that recorded traces without full details starts recording them after the update.
- The side panel layout is rearranged. The language, text size, Settings and pop-out buttons moved to the top left, and History and New chat to the top right, where History opens its list downward. The model picker moved into the message box, next to the attach button below your text, and its list opens upward.
- Selecting text on a page now shows a small bar, **Translate | Explain | Proofread | More…**, instead of the single `?` button. Translate, Explain and Proofread answer in a card next to the selection: Translate shows the detected source language, the original text and a target-language picker, and every card has an "Ask a follow-up" box that, once the answer is there, continues in the side panel with the card's answer as context. **More…** opens the same popup the `?` button opened (Summarize, Quiz me, Humanize, a question box and Hide this; Translate, Explain and Proofread are on the bar, so they are not repeated there). A card sends the selected text to your configured model provider, like any other selection action; selections over 4,000 characters go to the side panel instead of a card. A card answer that reaches the model's output limit says it was cut off and offers to continue in the side panel, which picks up from the unfinished text instead of starting over (a side-panel reply that is cut off again says so, including when an OpenAI Responses model reports the limit as an error, in which case the text it wrote is kept and the call still counts toward your cloud-cost allowance), and closing or redoing a card, or reloading or leaving the page, cancels the request it no longer needs. Chrome and Firefox.

### Fixed
- WhatsApp: sending something to a contact no longer stalls at the chat. Asked to download a video from X and send it to a contact on WhatsApp, WebBrain clicked the contact's chat in the list and nothing happened: WhatsApp's chat rows are grid cells that ignore a click sent by a script, and Chrome's automatic real-mouse retry left grid cells out. A row like that now gets the retry, like any other list row. Once the chat was open, WebBrain blocked every message action until it had confirmed who the chat is with, but it only told the model to read the page again and retry, so the model clicked Attach and the chat row over and over, then gave up. The block now names the exact control to click: the contact name in the chat header, then the Close button of the Contact info panel it opens. Clicking another chat in the list was blocked too, which left no way to reach the right chat. A chat-list row now always opens its chat, and in a request that names the person, the contact check follows the chat WebBrain opens until the check starts, so it confirms that person rather than whichever chat was open; a request for the open chat itself keeps its check on that chat, and one run still confirms one chat. With Lean mode on, WhatsApp Web and Telegram Web also offer `chat_observe` and `chat_send`, which these checks and the plan rely on. Chrome and Firefox; the real-mouse retry is Chrome's.
- Automatic mode: correcting or adding to a request while WebBrain is still reading no longer keeps the task stuck in Ask. When you wrote “download this” and then “and then send it to Defne on WhatsApp!”, WebBrain asked for Act quoting both messages, and the check accepted only words from the latest message, and refused any hand-off after a correction anyway. It answered that you should switch to Act, which the side panel no longer offers. Your corrections now count as your own words, and they carry into the Act run, which applies them before it does anything.
- Chrome: sending a follow-up or a selection action to WebBrain while the side panel is already open no longer closes it. Each side panel now tells the background whether it is on screen, and the background skips re-opening a panel that is already showing and hands it the prompt directly A panel that was open while the background restarted tells the new worker about itself at once instead of after a delay, so a request in that moment does not close it. The same holds for actions chosen on a selection in WebBrain's PDF viewer, where a panel that was closed is opened once rather than twice. A side panel that the browser moves to another window (its tab dragged out) now reports its new window, so an action in that window no longer closes it and an action in the old window opens a panel again. The PDF viewer keeps its own window up to date the same way, so a viewer tab dragged to another window reports where it is now, taking the new window from the tab-attached event rather than from a lookup a quick click could outrun. A card answer whose request is the one to reach the cloud cost allowance now says so under the answer instead of showing it as an ordinary success. The room a card leaves for the prompt in a small context window is now estimated as a worst case (a token per ASCII character, four for anything else), so dense text such as minified code or hashes on a 4k local model is reported as too long for the model instead of being sent a request the backend rejects. Continuing a cut-off Proofread in the side panel no longer asks for the whole corrected version again alongside the request for only the remainder. Continuing a cut-off card answer, or asking a follow-up, in the side panel now sizes the reply to what the model's context window leaves, so a small local model is not sent a request it rejects; when nothing fits it says the selection is too long for the model instead of failing. A card answer is now held to a fixed 64,000-character limit that is enforced when it is produced and when the card receives it, so a follow-up or a continuation carries exactly what the card shows instead of an answer silently shortened by a token-ratio estimate; a longer one is cut and offered to the side panel. A selection too long for the model's context window is reported as an error in the card instead of being offered as a continuation the side panel would refuse as well. Continuing a long cut-off answer on a small-context model now sends the side panel only the end of it, and a follow-up question about a long card answer only the start of it, trimmed to what the model's window leaves beside the selection and the question, instead of the whole text, which left no room to reply and was refused as too long. WebBrain's own system prompt is now counted at the pace of prose rather than the worst case when this is estimated, so a 4k local model can continue or ask a follow-up about a moderately long answer from a short selection. A side-panel reply that reaches the cloud cost allowance (including a cut-off OpenAI Responses reply that is recovered) now says so under the reply instead of leaving the next continuation to fail unexplained.
- Stopping a task while WebBrain was waiting for page navigation to settle now stops it immediately. The pending settle step previously kept waiting and could let the run continue after you chose Stop.
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,10 +143,10 @@ the Pull Requests link).
1. Load the unpacked extension (Chrome → `chrome://extensions/` → Developer
mode → Load unpacked → pick `src/chrome/`).
2. Open the WebBrain side panel on the target site.
3. **Settings → Display → Site adapters** must be on (it is by default).
3. **Settings → Advanced → Site adapters** must be on (it is by default).
4. Run a representative task in Act mode — for sahibinden, something like
_"find me 5 listings under 35,000 TL for X"_. Watch what the agent does.
5. Toggle **Settings → Display → Record traces** before the run. After
5. Toggle **Settings → Advanced → Record traces** before the run. After
the run, open the Traces page and inspect the timeline. Did the agent
hit any of the dead-ends your adapter is meant to prevent? Did it follow
the patterns you described?
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ exact tokenizer; see the [context guidance](docs/providers-and-models.md#local-p
WebBrain auto-detects the real window for llama.cpp, Ollama, and LM
Studio, and auto-compacts the conversation as it fills up. For Ollama,
llama.cpp, LM Studio, and LocalAI, it also reads native server metadata before
adding screenshots; Settings provides Auto, Force on, and Off overrides. When
adding screenshots; the Providers page provides Auto, Force on, and Off overrides. When
the optional Model field is blank, the loaded-model capability is rechecked on
every user turn so a server-side hot swap takes effect. There is also a
preview `ollama launch webbrain --model <model>` handoff. Details:
Expand All @@ -120,7 +120,7 @@ preview `ollama launch webbrain --model <model>` handoff. Details:
**Cloud APIs** — OpenAI, Anthropic Claude, Google Gemini, Azure OpenAI, AWS
Bedrock, Mistral, DeepSeek, xAI Grok, MiniMax, Kimi, Qwen, z.ai GLM, Groq,
Together, Cloudflare, Nvidia NIM, Hugging Face, Fireworks, OpenRouter, and more.
Settings ships **112 built-in provider cards on Chromium** (111 on Firefox),
The Providers page ships **112 built-in provider cards on Chromium** (111 on Firefox),
including an endpoint-free local WebGPU option with the tested LFM2.5 2.6B
preset and an experimental custom Hugging Face ONNX repository option —
see the [full catalog](docs/providers-and-models.md#extended-provider-catalog).
Expand Down
7 changes: 4 additions & 3 deletions docs/agent-tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,10 @@ WebBrain separates **model tier** from **conversation mode**.
Tier defaults and resolution rules are documented in
[providers and models](providers-and-models.md#prompttool-tiers-and-modes).

In **lean mode** (Settings → General → Lean mode), an Act run gets 17 of these
In **lean mode** (Settings → Advanced → Lean mode), an Act run gets 17 of these
tools instead of its tier's set, with the same schemas, and a short prompt; see
[lean mode](lean-mode.md).
[lean mode](lean-mode.md). On WhatsApp Web and Telegram Web it also gets
`chat_observe` and `chat_send`, which the recipient guard there relies on.

## Accessibility read budgets

Expand Down Expand Up @@ -198,7 +199,7 @@ loaded. See [skills](skills.md).

**WebMCP (experimental, on by default).** The `list_webmcp_tools` /
`execute_webmcp_tool` rows apply when **Experimental WebMCP** is enabled
under Settings → General → Advanced. The setting is on by default; while off,
under Settings → Bridge. The setting is on by default; while off,
the tools and their prompt guidance are omitted from model requests. WebMCP
annotations such as `readOnly` are page-authored hints, not a security boundary.
Every invocation requires Act or Dev, fresh per-call confirmation, and the
Expand Down
10 changes: 5 additions & 5 deletions docs/apocalypse-mode.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,15 @@ opt in.

On supported Chromium browsers, local vision is optional and has two
in-browser models: WebBrain VL 2 450M and Ternary Bonsai 2 2B Vision. The
**Vision Model** card here and **Settings → Assistive Models → Vision** share
**Vision Model** card here and **Providers → Vision** share
one choice: **Auto** (the default), either model, or **Off**. Auto uses Ternary
Bonsai 2 2B Vision once it is downloaded and is off until then. When the
selected Text Model is Ternary Bonsai 2 2B Vision, the card says so: that model
already reads images, so there is nothing more to download. Apocalypse Mode
never enables or downloads a vision model. A Bonsai download is the chat
preset's own transfer and starts only from a click on **Download** (here or in
Settings). WebBrain VL 2 450M first needs the explicit consent step in Settings
→ Assistive Models → Vision, which checks WebGPU support, records consent and
preset's own transfer and starts only from a click on **Download** (here or on
the Providers page). WebBrain VL 2 450M first needs the explicit consent step in
Providers → Vision, which checks WebGPU support, records consent and
starts caching the approximately 810 MB model from Hugging Face. Downloads
continue in the background, but screenshot operations report their status and
never wait for them. Wikipedia archives still require their own confirmation.
Expand All @@ -32,7 +32,7 @@ context window); the picker also offers Ternary Bonsai 2 2B Vision. The other
Bonsai 2 presets ship but are hidden from the pickers for now. The selected model's download starts automatically when Apocalypse
Mode is enabled. Once downloaded,
Compass works without Apocalypse Mode enabled: it is selectable as a chat
provider under Settings → Providers and through the standalone chat control.
provider on the Providers page and through the standalone chat control.
Turning local vision off (or leaving WebBrain VL 2 450M for another choice)
preserves its cache and any configured remote vision provider.

Expand Down
Loading
Loading