Browser Login
Drive an authentication flow once, sanitize cookies through AIDefence, and vault a reusable cooki…
by ruvnet · MIT
The skill
Drive an authentication flow once, sanitize cookies through AIDefence, and vault a reusable cookie handle in browser-cookies for future sessions
Browser Login
Authenticate against a target site once, then vault the resulting session credentials so subsequent skills (browser-extract, browser-form-fill, browser-test) can reuse them without re-driving the auth flow. Borrows the pattern from Browserbase's cookie-sync/SKILL.md but stores the resulting context in AgentDB rather than on a hosted backend.
When to use
- Establishing reusable auth for a host the agent will visit repeatedly.
- Refreshing a vaulted cookie set whose expiry has passed.
- Capturing an MFA-protected session that requires interactive completion.
Steps
- Open a recorded session via
browser-record. - Drive the auth flow — fill credentials with
browser_fill/browser_type. Credentials come from the user or environment; do not read them from.envor paste them into the trajectory args. - Handle MFA (when
--mfa): pause for user input or invoke the user's TOTP helper; capture only the resulting redirect, not the code itself. - Capture cookie metadata, not values. Run
browser_evalwith an expression that returns only each cookie's name, value length and a Shannon-entropy estimate, for exampledocument.cookie.split('; ').map(c => { const [n, ...v] = c.split('='); return { name: n, length: v.join('=').length } }). Never returndocument.cookieitself: tool output goes straight into the model's context, so the raw values would be exposed before any gate runs.document.cookiealso cannot seeHttpOnlycookies, which are usually the session cookie; if the session isHttpOnly, record that fact and rely on the browser profile staying alive rather than on a captured value. - Classify each cookie from the metadata in step 4 (name pattern, length, entropy). Anything that looks like a session or auth token is vault-wrapped (an opaque handle) before AgentDB store; raw values never enter the namespace or the model's context.
- Store in
browser-cookies:npx -y @claude-flow/cli@latest memory store --namespace browser-cookies \ --key "<host>" \ --value "{vault_handle:<opaque>, expiry:<iso>, aidefence_verdict:safe}" - Return the vault handle. Downstream skills look it up with
browser_cookie_use(host in, handle record out).
Caveats
- Never log raw cookie values, tokens, or passwords. The trajectory step for the auth POST records only the form field names and a
<redacted>placeholder for values. browser_cookie_useis implemented, but it only returns the handle record (handle, expiry, AIDefence verdict) for a host. No tool injects a vaulted cookie into a live page, so a re-used login still needs a browser profile that already holds the session, or a freshbrowser-login.- Some sites bind cookies to a UA fingerprint; if a vaulted cookie fails on reuse, re-run
browser-login. Do not attempt to fingerprint-match yourself. - This skill is not a credential storage solution. The vault-handle pattern protects against AgentDB leaks, not against compromise of the agent's environment.
Use this skill
Connect your agent to the Skill Store MCP server and ask for it by ref: ruvnet/browser-login-23116987761.
Details
- Publisher
- ruvnet
- Category
- Security › Application security
- License
- MIT
- Updated
- 2026-10-18
References
More from ruvnet
- Agent Adaptive Coordinator Coordinates swarm topology switching between hierarchical, mesh, ring and hybrid patterns using clau
- Agent Agent Goal-oriented action planning (GOAP) for multi-step objectives: models world state as preconditions
- Agent Agentic Payments Manages autonomous AI agent payments through the agentic-payments MCP server: creates and revokes Ac
- Agent Analyze Code Quality This skill analyzes source code in JavaScript, TypeScript, Python, Java, and Go files for quality is