
The next layerof browsing.
A real browser your agents can read — pages become compact text maps, so they browse, click, and extract at roughly 10–100× lower token cost than screenshots.
The app
A workspace of parallel agents — each with its own browser.
A grid of decks, each running its own Claude agent with its own real browser. An agent can launch a second agent into another project and talk to it. Queue commands and they run in order. Turn on Auto-Yes and routine prompts approve themselves, so long jobs run unattended. Every project’s notes open as a linked Vault. The daemon lives on your Mac and outlives the window — drive any deck from your phone.
Below is the app itself, running in your browser. Press things.
This is the app’s own code — the same files the Mac build ships. What’s simulated is the Mac underneath it: the terminals play a scripted Claude session, the browser pane is a rendered page, the notes are a sample project.
End of the appMulti-deck view
Many agents at once, side by side — each in its own browser.
Agents that launch agents
From the fork on any deck, or from the shell: spawn, send, read, wait, close. Each new deck is its own.
Auto-Yes
Routine prompts approve themselves — scripts & questions never do.
Command queue
Stack commands 1·2·3·4; the next runs when a deck frees up.
Vault
Every project’s notes as linked pages, with a map of what connects — and an MCP server for agents.
Phone control
Pair once by QR; steer any deck over Tailscale from the iPhone app.
Why it exists
Screenshots are how agents go broke.
Every time an agent reads a page as an image, you pay for tens of thousands of vision tokens — for one glance. KOALINT reads the DOM instead and hands the model a numbered map of every link, field, and button. Same understanding. A fraction of the cost.
What the agent actually reads
A page, as text.
Paste any HTML and watch it collapse into the numbered element map an agent works from — and what that saves against a screenshot.
This runs the actual KOALINT perception step in your browser — parse the DOM, emit a numbered content-addressed map, count the tokens. Nothing is pre-baked.
Running the transform…
What's inside
A full browser runtime — headless when you want, visible when you need.
Element maps, not pixels
Every page becomes a numbered, content-addressed map. References survive re-renders — [18] means the same button after the page shifts.
Scrape · map · crawl · extract
Firecrawl-style extraction that runs locally and works behind your logins — clean Markdown, whole-site URL maps, structured JSON.
Multi-agent decks
Each agent gets its own real browser session in its own deck. They run in parallel and outlive the window.
Human-in-the-loop safety
KOALINT never solves CAPTCHAs or types passwords, 2FA, or payment — it pauses and hands control to you.
Drive it from your phone
A mobile gateway over Tailscale lets you steer a deck from anywhere, with its own token.
Local & fast
The daemon runs on your Mac. Your cookies, your Chromium, your data — nothing leaves the machine.
Questions
The short answers.
How is this different from Playwright?+
KOALINT uses a browser under the hood, but the product is the perception layer: it hands your agent a compact, content-addressed text map instead of raw DOM or a screenshot. It's built around token cost and agent ergonomics, not test automation.
Do my logins and data leave my Mac?+
No. The daemon and Chromium run locally. Cookies live in KOALINT's own profile on your machine; nothing is sent anywhere except the compact text your agent reads.
Which models does it work with?+
Any agent that can run a shell command. It's designed for Claude via Claude Code, but the CLI returns plain JSON, so anything that can call it works.
What does it cost?+
Running KOALINT locally is free. You only pay your own model bill — which is the whole point: a fraction of the tokens.
Let your agents read the web for pennies.
Download KOALINT, point your agents at it, and watch the token bill fall.