chrome-agent AGENTS.md

Repository instructions for chrome-agent, a command-line tool that controls a real Chrome or Chromium browser through its developer protocol.

In plain words
What is it for?
Use it when automating Chrome, reading live browser events, sending developer-protocol commands, or making and verifying real clicks.
Why use it?
They explain how to observe browser events and send browser commands without relying on a bundled protocol schema. This clarifies how browser actions should be performed and checked.

Instructions file for CodexOpenCode

Install

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.

agentmods
npx agentmods add instructions/captivus/chrome-agent/agents-md
Clone the repo
git clone --depth 1 https://github.com/captivus/chrome-agent

Made for: Codex, OpenCode.

Per session 5,645 This file is loaded in full into every session.
When invoked 5,645 The same file — it is already loaded in full.
Security scan A 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.05645 $0.05645
Opus 5 $0.02823 $0.02823
Sonnet 5 $0.01129 $0.01129
Haiku 4.5 $0.00564 $0.00564

Measured 2d ago against content hash 47696f5c82aa, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

chrome-agent AGENTS.md scanned grade A with 1 finding 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 2d 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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

- **Cookie handoff for bulk.** `Network.getCookies '{"urls":["https://host/"]}'` extracts the session into a `Cookie:` header so a faster external client (`curl`) can fan out a large transfer outside the CDP channel.
AGENTS.md · 255 lines

How it starts

The opening of the file, as written. The whole thing — 255 lines — stays where its author put it; the contents beside it link to each section on GitHub.

chrome-agent

Drive a real Chrome through the Chrome DevTools Protocol (CDP), from the terminal, for AI agents.

Install: uv tool install chrome-agent (or pip install chrome-agent). Requires Google Chrome or Chromium. One runtime dependency (websockets); no Playwright, no browser downloads.

What it is

Address a Chrome instance by name, and send it any CDP command or stream any CDP event. Two channels:

  • One-shot (chrome-agent <inst> Domain.method '{json}') — act: send one command, print the result, disconnect (~70 ms).
  • Attach (chrome-agent attach <inst> +Event …) — observe: hold a connection and stream events as JSON lines.

The full protocol, tracked live. chrome-agent forwards your Domain.method straight to Chrome — nothing is validated against a bundled schema. Any command, event, or domain your installed Chrome supports works, including protocol surface newer than this build (e.g. CrashReportContext isn't among the bundled bindings, yet chrome-agent <inst> CrashReportContext.getEntries returns a normal result over the CLI). So help <inst> [Domain[.method]], read live from the browser, is the authoritative, version-correct reference — prefer it over any static list. The typed Python classes are a point-in-time snapshot, not a gate.

experimental ≠ unstable. Most of the live protocol is flagged experimental (domains carry the flag and their members inherit it), and it's tempting to avoid it — don't. Experimental items break at roughly the same rate as the stable core; what predicts churn is how actively a domain is developed, and CDP's busiest domains (Network, Runtime, Page, DOM) are stable-status. The one real experimental signal is removal/rename, and even that is rare. Practical posture: use whatever capability you need regardless of flag; pin the Chrome version you test against; re-verify signatures via help on upgrade.

Operating a page: sense ⇄ act

An agent does two things in a loop: it senses the page and it acts on it. Sensing is the default, continuous mode; acting is the intermittent intervention. After you act you're sensing again — and that perception is both your confirmation of the act and your orientation for the next one. There is no separate "verify" step; the next sense is the verification.

Read the full file on GitHub · 255 lines

Changes

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.

  1. 2d ago First seen · 255 lines · 5,645 tokens per session scan A 47696f5c82aa

Subscribe to this mod's changes

chrome-agent AGENTS.md is an instructions file published in the GitHub repository captivus/chrome-agent (239 stars, last pushed 9d ago), licensed MIT. It adds 5,645 tokens to every session, about $0.0282 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.