rayobrowse: Instructions file for Codex

AGENTS.md

rayobrowse AGENTS.md is an instructions file for Codex, OpenCode from rayobyte-data/rayobrowse. It costs 1,011 tokens per session, scanned A, original, MIT.

Project instructions for rayobrowse, a Chromium-based browser that runs in Docker and exposes a connection endpoint for automation tools such as Playwright or Puppeteer.

In plain words
What is it for?
Use them when setting up, testing, or automating rayobrowse locally or in the cloud, including Docker startup, health checks, and browser connections.
Why use it?
They explain the required setup and the correct connection flow, avoiding common mistakes such as treating the HTTP endpoint as a direct WebSocket connection.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions AGENTS.md.

This is rayobyte-data/rayobrowse's own configuration. It tells Codex and OpenCode how to work on rayobrowse itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything rayobrowse configures →

Reuse

Borrowing it

Nothing to install: this file belongs to rayobyte-data/rayobrowse. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/rayobyte-data/rayobrowse/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/rayobyte-data/rayobrowse

Made for: Codex, OpenCode.

Wrote 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.

agentmods badge for rayobrowse AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/rayobyte-data/rayobrowse/agents-md/github.svg)](https://agentmods.dev/instructions/rayobyte-data/rayobrowse/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/rayobyte-data/rayobrowse/agents-md"><img src="https://agentmods.dev/badge/instructions/rayobyte-data/rayobrowse/agents-md/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.

agentmods 80×15 button for rayobrowse AGENTS.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/rayobyte-data/rayobrowse/agents-md"><img src="https://agentmods.dev/badge/instructions/rayobyte-data/rayobrowse/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 1,011 This file is loaded in full into every session.
When invoked 1,011 The same file — it is already loaded in full.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.01011 $0.01011
Opus 5.5 $0.00404 $0.00404
Sonnet 5.5 $0.00202 $0.00202
Haiku 4.5 $0.00101 $0.00101

Measured 2mo ago against content hash 13f200860ff7, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

rayobrowse 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 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.

Makes network callslowCapability

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

curl http://localhost:9222/health
AGENTS.md · 130 lines

How it starts

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

AGENTS.md

Setup, verification, and usage notes for AI agents and automated pipelines working with the public rayobrowse repository.

What This Project Is

rayobrowse is a Chromium-based stealth browser that runs inside Docker. It exposes an HTTP daemon on port 9222. Your automation code calls GET /connect, receives a CDP WebSocket URL as plain text, and passes that URL to Playwright, Puppeteer, Selenium, or any other CDP client.

The local and cloud usage model is intentionally the same. For local work, use http://localhost:9222. For rayobrowse Cloud, use https://cloud.rayobrowse.com with an API key.

Prerequisites

  • Docker with Compose v2 (docker compose)
  • Python 3.10+ for Python examples
  • Node.js 18+ for Node examples
  • About 2 GB free RAM for a basic local run

Local Setup

cp .env.example .env
docker compose up -d
curl http://localhost:9222/health

By using rayobrowse, you agree to the licenses in LICENSE and BROWSER_BINARY_LICENSE.md.

Primary Usage Pattern

Do not connect Playwright or Puppeteer directly to /connect. /connect is an HTTP endpoint, not a CDP WebSocket endpoint.

Correct flow:

  1. Call GET http://localhost:9222/connect.
  2. Read the CDP WebSocket URL from the response body.
  3. Connect your CDP client to that returned URL.
  4. Let the browser close when the CDP session closes, unless the task requires explicit lifecycle control.

Python example:

import httpx
from playwright.sync_api import sync_playwright

resp = httpx.get(
    "http://localhost:9222/connect",
    params={"os": "windows", "headless": "false", "vnc": "true"},
    timeout=120,
)
resp.raise_for_status()

cdp_url = resp.text.strip()
vnc_url = resp.headers.get("x-vnc-url") or "http://localhost:6080/vnc.html"

with sync_playwright() as p:
    browser = p.chromium.connect_over_cdp(cdp_url)
    context = browser.contexts[0] if browser.contexts else browser.new_context()
    page = context.pages[0] if context.pages else context.new_page()
    page.goto("https://example.com")
    print(page.title())
    print(f"To view your browser in VNC go to: {vnc_url}")
    browser.close()

Read the full file on GitHub · 130 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. 2mo ago First seen · 130 lines · 1,011 tokens per session scan A 13f200860ff7

Subscribe to this mod's changes

rayobrowse AGENTS.md is an instructions file published in the GitHub repository rayobyte-data/rayobrowse (213 stars, last pushed 4mo ago), licensed MIT. It adds 1,011 tokens to every session, about $0.0040 per session on Opus 5.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.

Related

rayobrowse AGENTS.md compared with instructions from other repositories

rayobrowse AGENTS.md next to 6 instructions from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
rayobrowse AGENTS.mdrayobyte-data/rayobrowseInstructions file2134mo agoMITA1,011Codex, OpenCode
vscode buildNext.instructions.mdmicrosoft/vscodeInstructions file195kyesterdayMITA9,719GitHub Copilot
next.js AGENTS.mdvercel/next.jsInstructions file143ktodayMITA7,461Codex, OpenCode
langchain AGENTS.mdlangchain-ai/langchainInstructions file149kyesterdayMITA4,680Codex, OpenCode
vscode oss-third-party-notices.instructions.mdmicrosoft/vscodeInstructions file195kyesterdayMITA5,516GitHub Copilot
vscode copilot-instructions.mdmicrosoft/vscodeInstructions file195kyesterdayMITA3,093GitHub Copilot
deepseek-harness AGENTS.mddeepseek-ai/deepseek-harnessInstructions file274k2d agoMITA4,313Codex, OpenCode