GhostGet runs agent-browser internally, where your agent can’t steer it
agent-browser is Vercel Labs' Rust CLI for agent-driven browsing: open, click, type, fill, snapshot, screenshot, and eval, with sessions and profiles your agent composes as shell commands. GhostGet itself pins agent-browser 0.32.3 as an internal dependency for page captures that need rendering, and no GhostGet command lets the caller choose a selector, keystroke, or script.
Who controls the browser
Used directly, agent-browser is a steering surface: the agent decides which URL to open, which selector to click, what to type, and what JavaScript to evaluate. Disk-first snapshots keep the token cost lower than streamed MCP state, but the permission model is unchanged. Every reachable page is a place the agent can act, and every action is one the caller chose.
GhostGet uses the same class of engine inside a capture path with fixed limits. When an HTTP fetch cannot produce the requested result, an internal browser acquisition may render the page under a limit of two browsers at once across all GhostGet processes sharing a state home. The caller supplies a URL and a result contract; it cannot supply a selector, a coordinate, a keystroke, or a script. The agent can’t reach the engine.
Side by side
| Decision | agent-browser, used directly | GhostGet |
|---|---|---|
| Interface | Shell commands the agent composes itself | Named operations plus page reads and archives; no browser commands |
| Who chooses the steps | The agent: selectors, coordinates, JavaScript, session state | The reviewed contract; the agent picks only the outcome |
| Browser exposure | Full steering, including eval on live pages |
Internal capture only, behind a limit of two browsers at once; no command, selector, or script reaches it |
| Credentials | Whatever the agent's browser profile or keyboard input contains | Opaque auth locators bound to one account realm and transport |
| Result shape | Snapshots, screenshots, and command output on disk or stdout | Markdown, archive records, structured results, or structured errors |
When to pick which
Pick agent-browser directly when your agent needs to compose its own browsing: exploratory sessions, form experiments, or flows where the steps are the deliverable. It is a well-shaped tool for that job, which is part of why GhostGet builds on it rather than reinventing the engine.
Pick GhostGet when the deliverable is the result, not the session. A page read returns Markdown; an account action returns a structured result; and the agent cannot turn the capture engine into a navigation surface because no command, selector, or script channel reaches it. If your threat model is "the agent must not click around the web," that closure is the product.