Skip to content

Repository files navigation

@aitofy/browser-profiles

🔒 Self-hosted anti-detect browser profiles. The open-source alternative to AdsPower & Multilogin. Use it as a library, as a CLI, or as an MCP server your AI agent drives.

npm version CI License: MIT TypeScript Self-Hosted

🎯 Why browser-profiles?

Like n8n for automation or Affine for notes, this is AdsPower for developers — self-hosted, open-source, and privacy-first.

❌ AdsPower/Multilogin ✅ browser-profiles
$99+/month Free forever
Cloud storage (data not yours) Local storage (your data)
GUI only Code-first (Puppeteer/Playwright)
Vendor lock-in Open source (MIT)
No customization Full control
Site Score
browserleaks.com 100%
pixelscan.net 100%
browserscan.net 95%
creepjs 85%

95% is the Puppeteer ceiling; 100% needs a modified Chromium. What is protected, how it is injected, and the honest limits: docs/anti-detect.md.

Quick start

1. Library

npm install @aitofy/browser-profiles rebrowser-puppeteer-core
import { quickLaunch } from '@aitofy/browser-profiles';

const { page, close } = await quickLaunch({
  proxy: { type: 'http', host: 'your-proxy.com', port: 8080 },
});

await page.goto('https://browserscan.net');
await close({ terminate: true });

Full API: docs/library.md.

2. CLI

npm install -g @aitofy/browser-profiles

browser-profiles create "Acme Main" --id acme-main --proxy http://user:pass@proxy.com:8080
browser-profiles open acme-main

Every command, flag and the --json contract: docs/cli.md.

3. MCP, for AI agents

claude mcp add browser-profiles -- npx -y @aitofy/browser-profiles mcp

Then ask your agent:

Create a profile called Acme Main on my US proxy. Open it and give me the CDP endpoint. Drive it with Playwright MCP and log in to the account.

Other clients, the tool list and the lifecycle rules: docs/mcp.md.

📚 Documentation

Page What is in it
Library quickLaunch, BrowserProfiles, Puppeteer and Playwright, the command registry, Result
CLI Command tree, aliases, every flag, --json contract, --detached
MCP server Setup per client, the tools table, error shape, browser ownership
Playwright MCP Hand a wsEndpoint to Playwright MCP or any CDP client
Configuration Storage path, BROWSER_PROFILES_HOME, Chrome path, logging, disk layout
Anti-detect What is protected, per-tab injection, scores, limits
Browser lifecycle Who owns the browser, reuse, closing across processes, detached
Troubleshooting Every common error with its exact text and the fix
ADR 0001 Architecture: one registry generates the CLI, MCP and library API
Examples Runnable files: quick launch, proxy profile, Playwright, JSON pipeline, MCP

🤝 Contributing

Contributions are welcome — start with the Contributing Guide.

To report a vulnerability privately, see SECURITY.md.

📄 License

MIT © Aitofy

About

Self-hosted anti-detect browser profiles. Open-source AdsPower alternative for Puppeteer & Playwright.

Topics

Resources

Contributing

Security policy

Stars

32 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages