Browser tools
Screenshots, styled PDFs, page-to-Markdown, recordings, and scripted flows, backed by a bundled Chromium.
Five browser_* tools run on a Chromium that bun install pulls once (~150MB). Outputs land in <HOME>/reports/captures/<timestamp>-<name>.<ext>. Activate the Browser pack in configure-skills to pre-grant the permissions; without it, the first call confirms.
| Tool | Output | Use it for |
|---|---|---|
browser_screenshot | PNG | Any URL or local HTML / Markdown file; fullPage for the whole scroll |
browser_pdf | PDF (A4) | Markdown (Mermaid rendered) or HTML to print-styled PDF |
browser_markdown | Markdown | Any URL, including client-rendered SPAs, to clean LLM-friendly Markdown via Readability |
browser_record | WebM | Drive a page through navigate / scroll / wait steps and capture the run |
browser_flows | varies | Run a named, repeatable flow in a visible browser: scrape, fill a form, click through a task |
All take the same input: a URL, a file:// URL, or a path. screenshot and pdf render local Markdown through a styled CSS so Mermaid comes through; markdown does the reverse. An explainer or pull-request page the engineer skill wrote is captured with its diagrams drawn, not their source.
you > screenshot https://acme.com and call it acme-landing
you > render ~/Documents/business-plan.md to PDF
you > convert https://example.com to markdown, make sure the JS-rendered sections come through
you > record a 15-second tour of acme.com: scroll halfway, wait 2s, scroll to the bottomWeb search
The Browser pack also carries web_search, a direct call to the Perplexity Search API with citations. Activate it in configure-skills, then put PERPLEXITY_API_KEY in .state/secrets/.env in your editor. Pay-as-you-go; a $5 credit lasts most personal users days to weeks. See Accounts.
Flows
browser-flows drives a visible browser through pluggable flows; hacker-news ships as the reference. Write your own for any repeatable multi-step task on a site you use.
Your flows live in your home, one folder each under scripts/browser/<flow>/, with an index.ts to run and an optional index.md of guidance. A flow that needs a password or a card reads it from a .env in its own folder: the tool hands that file to that flow alone, it's gitignored, and the agent's own reads are denied. A flow with a built-in's name runs in its place.
macOS sandbox
Browser launch can fail inside a host's sandboxed subprocesses. If it does, run playwright install chromium once from a normal terminal so the binary is cached.
Slack
Read-only Slack through your own account. A pulse across your channels, the replies you owe, threads where someone outside the workspace is waiting, and channels you joined that the agent doesn't know about yet. It never posts and never reads DMs.
SEO workflow
Search Console, PageSpeed, SerpAPI, and Open Page Rank behind one read-only seo skill, plus wordpress-rest for site content.