Browser pages your agent clicks and fills in
Your agent uses a browser. It opens pages in a real browser, reads them, clicks, types into forms and sees them as screenshots, on pages that need scripts, a sign-in or a button pressed, which Web's fetch can't do.
lnk agent tool add browser # it calls browser__open, browser__click, browser__screenshot...Add it
It installs link-browser if it's missing, defines the tool for this
agent alone, and restarts your agent with it; --agent <name> picks
another agent, and its first lnk agent start offers it too. lnk agent tool remove browser takes it away; its profile stays.
What it needs
You need the link-browser plugin, which lnk plugin add link-browser
installs, and Chromium, Google Chrome, Microsoft Edge or Brave on this
computer.
Ask it something
Ask "find me a table for two at Tasca do Chico on Friday" and it opens the site, reads it, clicks through, fills the form and shows you a screenshot before it books.
Its profile
Its profile, with its cookies and sign-ins, is
~/Link/Agents/<name>/Browser, in the agent's folder, which its
harness never reaches.
By hand
lnk agent tool add browser is the plugin, the tool shared by every
session of the agent with its calls allowed, and your agent allowed to
call it.
lnk plugin add link-browser
lnk sandbox tool add browser --shared \
--allow open --allow read --allow click --allow type --allow select \
--allow scroll --allow screenshot --allow close \
-- lnk-link-browser serve --profile ~/Link/Agents/main/Browser -- lnk sandbox run
lnk agent allow --tool browserWhat it does
Your agent calls it as browser__<call>, a page at a time.
open and read
open opens a page by its URL, waits for it to load, and reads it.
read gives the page's text, each part that can be clicked or typed
into numbered where it stands ([3]), 24 KB at a time.
click, type and select
click clicks a part, by its number. type types into a field,
replacing what it held, and with submit presses Enter. select
chooses an option of a drop-down, by its text or value.
scroll, screenshot and close
scroll scrolls the page down or up by most of a window, or a part
into view. screenshot is an image of what the window shows, 1280
by 800 pixels. close closes the browser; its profile stays.
What a page does meanwhile
The numbers are those of the last read, so after a page changes, read it again. A dialog the page opens is answered OK and its words said. A link that opens a new tab makes that tab the page.
Its sandbox
The browser starts at the first call, headless, in a sandbox of its own
(lnk sandbox run). It reads its own program, writes only its profile,
and reaches the internet through the sandbox's proxy, so it reaches
nothing on this computer or your network, however a page asks: a link,
a redirect or a script.
Browser resources on macOS
On macOS, read access covers the selected browser's .app bundle so
its frameworks and helper programs can load. It does not grant the
Applications folder or your personal browser profile.
Its profile across sessions
Its profile keeps its cookies, so a sign-in
lasts from one session to the next, and every session of the agent
shares the one browser (--shared). It is never your own browser's
profile, which the tool refuses.
Downloads and uploads
It downloads nothing and uploads no file: each is refused, and the answer says so.
Open a page on your network
Name a host to let it through. A host of your network is given as a
name, an address or a range; a port of this computer as
localhost:<port>.
lnk sandbox tool add browser --shared --allow open --allow read --allow click --allow type \
--allow select --allow scroll --allow screenshot --allow close \
-- lnk-link-browser serve --profile ~/Link/Agents/main/Browser \
--private-host nas.local --private-host localhost:3000 -- lnk sandbox runMore about it
To work on its code, see Developing Link Browser, and when the browser doesn't start or a page isn't reached, Troubleshooting.
Docs
- Developing:
lnk-link-browseris Link Browser: an MCP server over stdio whose calls drive a headless Chromium, for any harness to reach as a tool - Troubleshooting: What to do when your agent's browser doesn't start, reach a page or keep a sign-in (Link Browser)
- Decisions: Why Link Browser drives a browser of its own, in a sandbox, and leaves the network rule to the sandbox's proxy