Repository navigation
Conversation
lichdotdev#570 dropped system-browser discovery for the UI window; bring FindBrowser back for the agent sidecar only, and repair the merge damage so Browser tab is usable again from the session card. Co-authored-by: Cursor <cursoragent@cursor.com>
Type inserts text; Enter, Tab and Escape are UI keys and need a real key event. browser press / browser_press cover the named set so an agent can submit forms and dismiss dialogs the way a user would. Co-authored-by: Cursor <cursoragent@cursor.com>
Contributor
Author
|
Closing this one. It targeted the old web window, which is gone, and the session browser now lives in #941. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A session can open a real Chromium of its own — not a tab inside lich — that the agent drives while you watch.
Right-click a session card → Browser tab. That window is the same page
lich browserand thebrowser_*MCP tools inspect, click, type, press named keys and screenshot. It is a second process on the machine (chromium.FindBrowser: system Chrome/Edge/…, neverlich-shell), with its ownuser-data-dir. Closing it does not quit lich; closing the card kills the sidecar.Why a sidecar
lich's UI is already Chromium in
--appmode. Embedding another page (iframe / webview / CDP on the UI process) would expose the RPC token and the app chrome.docs/browser-tab.mdis the decision record.What the agent gets
browser_open/navigate/reload/back/forward/scroll/list/closebrowser_info— URL, title, visible text, interactive nodes (index + box). Form values never leave the page; agents seefilled/checkedbrowser_click/browser_type/browser_press— real mouse and key events, notelement.click(). Press is named keys only (Enter, Tab, Escape, arrows, …); text still goes through typebrowser_screenshot— writes a PNG path; bytes stay off the transcripthttp,https,about:blankonlyHuman entry: context menu after Pin. Agent-first
browser_openis headless until someone opens Browser tab, then the headed window is reused.Providers
Claude Code and Codex see the tools at spawn. Crush and oh-my-pi once the plugin registers the server. opencode does not get MCP registration for them —
lich browserstill works in that PTY. Documented indocs/ceilings.md.Out of v1
evaluate(arbitrary JS in the page)wait_for_*, persistent profiles, iframe / multi-tab follow-throughTest plan
gofmtclean on touched Go;go vet ./...;go buildgo testoninternal/browser,internal/cli,internal/chromium,internal/rpc,internal/terminaltools/listincludesbrowser_presswith requiredkeytask dev→ right-click a session card → Browser tab opens a headed Chrome/Edge atabout:blanklich browser open https://example.com,info,click/type/press Enter,screenshot