Remove browser chat action button

Delete the Browser plugin's injected bottom-action button so it no longer appears under the chat input while preserving the rest of the Browser surface entry points. Update the browser regression coverage to assert the chat action stays absent.

Alessandro committed May 8, 2026 at 00:36 UTC 06a83030c00bb5e267e2b598ea95a5daf92c4227
2 files changed +3 -23
plugins/_browser/extensions/webui/chat-input-bottom-actions-start/browser-button.html deleted
-17
@@ -1,17 +0,0 @@
1 -<button
2 - type="button"
3 - class="text-button browser-chat-action"
4 - title="Open Browser"
5 - aria-label="Open Browser"
6 - data-bs-placement="top"
7 - data-bs-trigger="hover"
8 - @click="import('/js/surfaces.js').then(({ open }) => open('browser'))"
9 ->
10 - <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" width="14" height="14" aria-hidden="true">
11 - <rect x="3" y="4" width="18" height="16" rx="2"></rect>
12 - <path d="M3 8h18"></path>
13 - <path d="M7 6h.01"></path>
14 - <path d="M10 6h.01"></path>
15 - </svg>
16 - <p>Browser</p>
17 -</button>
tests/test_browser_agent_regressions.py
+3 -6
@@ -656,7 +656,7 @@ def test_browser_canvas_restarts_stream_after_page_navigation():
656
657
658 def test_browser_entry_points_prefer_canvas_and_modal_dock_handoff():
659 - button_html = (
659 + browser_button_path = (
660 PROJECT_ROOT
661 / "plugins"
662 / "_browser"
@@ -664,7 +664,7 @@ def test_browser_entry_points_prefer_canvas_and_modal_dock_handoff():
664 / "webui"
665 / "chat-input-bottom-actions-start"
666 / "browser-button.html"
667 - ).read_text(encoding="utf-8")
667 + )
668 tool_handler = (
669 PROJECT_ROOT
670 / "plugins"
@@ -701,10 +701,7 @@ def test_browser_entry_points_prefer_canvas_and_modal_dock_handoff():
701 modals_js = (PROJECT_ROOT / "webui" / "js" / "modals.js").read_text(encoding="utf-8")
702 surfaces_js = (PROJECT_ROOT / "webui" / "js" / "surfaces.js").read_text(encoding="utf-8")
703
704 - assert "Open Browser" in button_html
705 - assert "import('/js/surfaces.js')" in button_html
706 - assert "open('browser')" in button_html
707 - assert "$store.rightCanvas.toggle('browser')" not in button_html
704 + assert not browser_button_path.exists()
705 assert 'defaultOpenMode: "modal"' not in register_js
706 assert "beginDockHandoff()" in register_js
707 assert "beginSurfaceHandoff" in register_js