Browser auth state capture for AI agents — Playwright, Claude Code & more.
Keyring captures your browser auth state — cookies, localStorage, all of it — and stores it locally so your AI agents can log in as you. No scripts. No credentials in code.
Every time your AI opens a browser, it starts cold — no cookies, no sessions, no auth. You end up writing brittle login scripts, storing passwords in env files, or supervising every session manually.
Browse normally in Chrome. Keyring silently captures your auth state in the background. Your agent loads it with one line — and it's authenticated on every site you've visited.
Install the Chrome extension and native host. Log into your sites as you normally would. Keyring watches silently — you don't change how you work.
Cookies and localStorage are saved to ~/.keyring/storage-state.json on your machine. Standard Playwright format. Nothing leaves your computer.
Your AI loads the state file before launching. It inherits all your sessions instantly — authenticated everywhere you are, with no credentials in code.
Standard Playwright storage state format — compatible with any browser automation framework or AI agent.
storageState in any browser context. It just works.AGENTS.md — Claude automatically loads your auth state before every browser task.Everything stays on your machine at ~/.keyring/storage-state.json. No servers, no cloud sync, no telemetry of any kind.
Captures both HTTP cookies and localStorage — the two places websites actually store your sessions. Nothing slips through.
Choose which sites to capture. Whitelist specific domains, or capture everywhere with per-site exclusions — you're in control.
Output is the standard Playwright storage state format — readable JSON, compatible with every major browser automation framework.
The extension generates a setup prompt you can paste to your AI agent. It configures everything automatically — you don't need to read docs.
No analytics, no telemetry, no external requests of any kind. Your auth data is yours — it never leaves your machine.
No. keyring is 100% local. Your cookies and localStorage data never leave your machine. There are no servers, no cloud sync, and no telemetry of any kind. Data is saved only to ~/.keyring/storage-state.json on your own computer.
The state file uses the standard Playwright storageState JSON format. Pass it to browser.newContext({ storageState: '~/.keyring/storage-state.json' }) — or use agent-browser state load, or reference it in your AGENTS.md for Claude Code.
No. Install the extension and native host, then browse normally. keyring captures your sessions silently in the background — you don't change how you work.
Playwright, Puppeteer, agent-browser, Claude Code, and any tool that accepts standard cookie or localStorage JSON data. If it supports Playwright's storageState format, it works with keyring.
Yes. You can whitelist specific domains (only those sites are captured), or enable global capture with per-site exclusions. You stay in full control of what gets saved.
Privacy-first. Works with Playwright, agent-browser, Claude Code, and any browser automation tool.