For agents & LLMs
Clearcote is laid out so automated tooling can navigate, integrate and contribute as easily as a human.
Drop the whole project into your agent
One click copies the entire documentation — overview, architecture, every flag, install, verification, build and roadmap — as a single prompt-ready block. Paste it into Claude, Codex or Cursor for instant full context.
Machine-readable summary
A concise, plaintext project summary lives at /llms.txt, and the complete documentation flattened into one prompt-ready file is at /llms-full.txt. The repository also ships an AGENTS.md describing layout and conventions for contributors.
json
{
"name": "Clearcote",
"kind": "open-source anti-detect Chromium browser",
"base": "ungoogled-chromium 149",
"identity_model": "engine-level, coherent, per-site (farbling-style)",
"automation": "drop-in for Playwright & Puppeteer (executablePath)",
"platforms": ["windows-x64"],
"license": "BSD-3-Clause",
"repo": "https://github.com/clearcotelabs/clearcote-browser",
"verify": "GPG-signed + sha256, pinned key",
"control_via": "chromium command-line switches (args)"
}Minimal integration recipe
- Resolve the binary path (e.g.
C:\clearcote\chrome.exe). - Launch via your existing driver with
executablePath. - Pass a deterministic
--fingerprint=<seed>derived from the identity you're acting as. - Keep platform / timezone / locale coherent (see the flag reference).
python
from playwright.sync_api import sync_playwright
SEED = "agent:" + task_id # stable, reproducible identity per task
with sync_playwright() as p:
browser = p.chromium.launch(
executable_path=r"C:\clearcote\chrome.exe",
args=[f"--fingerprint={SEED}", "--fingerprint-platform=windows"],
)
page = browser.new_page()
page.goto("https://example.com")Where to look
- Fingerprint flags — the full switch reference (also machine-friendly).
- Playwright & Puppeteer — drop-in launch patterns.
- Verification — confirm the binary before running it.
- Source repository — patches, build pipeline, AGENTS.md.
Build deterministic identities: derive the seed from a stable id (tenant, account, task) so the same actor always gets the same browser fingerprint — reproducible and debuggable.