Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add TideSurf/core --skill tidesurf-browsergit clone --depth 1 https://github.com/TideSurf/coreWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/tidesurf/core/tidesurf-browser)<a href="https://agentmods.dev/skills/tidesurf/core/tidesurf-browser"><img src="https://agentmods.dev/badge/skills/tidesurf/core/tidesurf-browser/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/tidesurf/core/tidesurf-browser"><img src="https://agentmods.dev/badge/skills/tidesurf/core/tidesurf-browser.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00097 | $0.01235 |
| Opus 5.5 | $0.00039 | $0.00494 |
| Sonnet 5.5 | $0.00019 | $0.00247 |
| Haiku 4.5 | $0.00010 | $0.00123 |
Grade A, and why
tidesurf-browser scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 86 lines — stays where its author put it; the contents beside it link to each section on GitHub.
TideSurf Browser
TideSurf gives you a real Chromium browser. It launches a browser or attaches to a running one over CDP, then compresses the live DOM into token-efficient text annotated with action IDs. You read the page as text, act on elements by ID, and re-read to see the result.
The full input table for every tool is in references/tool-reference.md.
The core loop
Every browser task follows the same loop:
get_stateto read the current page as compact text. Interactive elements are tagged with IDs likeL1(link),B2(button),I3(input).- Pick the element ID that matches your intent.
- Act on it:
click,type,select, orscroll. - Re-read with
get_stateto observe the result.
Element IDs are snapshot-scoped. An ID is valid only for the snapshot that produced it. Navigation, DOM mutations, and most actions invalidate prior IDs. Never reuse an ID from an earlier snapshot; call get_state again and use the fresh IDs. This applies even when the page "looks the same" — re-rendered nodes get new IDs.
Token discipline
Page state is the main context cost. Control it:
- Pass
maxTokenstoget_stateto cap the snapshot size. Start small and raise it only if the element you need is missing. - Pass
viewport: trueto restrict the snapshot to what is on screen. - Use
modeto shape the output:fullfor the complete annotated DOM,minimalfor structure only,interactivefor actionable elements only. Preferinteractivewhen you only need to act. - On huge pages, run
searchwith a query first to locate the relevant region instead of dumping full state. - Use
includeHiddenonly when the element you need is not visible (e.g. collapsed menus).
Forms
typeenters text into an input by ID. Passclear: trueto replace existing content instead of appending.selectsets a<select>element by ID to a given optionvalue.uploadattaches a local file to a file input by ID.filePathmust be a path on the local filesystem.- After submitting a form, treat the page as changed: re-read state before doing anything else.
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 86 lines · 97 tokens per session scan A 1c51a070d5b4
tidesurf-browser is a skill published in the GitHub repository TideSurf/core (23 stars, last pushed 9d ago), licensed Apache-2.0. It adds 97 tokens to every session and 1,235 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
tidesurf-browser compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| tidesurf-browserTideSurf/core | Skill | 23 | 9d ago | Apache-2.0 | A | 97 | Claude Code, Codex |
| ChromeiFurySt/open-browser-use | Skill | 414 | 3d ago | MIT | A | 34 | Claude Code, Codex |
| open-browser-useiFurySt/open-browser-use | Skill | 414 | 3d ago | MIT | A | 97 | Codex |
| browser_harnessbrowser-use/browser-harness | Skill | 19k | yesterday | MIT | A | 0 | Claude Code |
| browser-use-terminalbrowser-use/terminal | Skill | 660 | 6d ago | MIT | A | 41 | Claude Code, Codex |
| browser-harnessbrowser-use/browser-harness | Skill | 19k | yesterday | MIT | A | 46 | Claude Code |
| x402browser-use/browser-use | Skill | 120k | yesterday | MIT | A | 175 | Claude Code |