Open source API reverse engineering for OpenClaw.
Unbrowse is an OpenClaw extension that captures API traffic from any website and turns it into monetizable skills for AI agents. Browse a site, capture the API calls, generate skills, and publish them to the marketplace to earn USDC on every download.
π Security Note: Unbrowse runs locally and accesses browser sessions to automate logins. All data stays on your machine β nothing is transmitted externally unless you explicitly publish to the marketplace. See SECURITY.md for full details on what’s accessed and why.
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β UNBROWSE β
β Open Source API Reverse Engineering β
β β
β Capture βββΊ Generate βββΊ Publish βββΊ Earn β
β β β β β β
β βΌ βΌ βΌ βΌ β
β API traffic skills marketplace USDC β
β auth headers schemas x402 payments 70% revenue β
β payloads docs Solana per download β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
openclaw plugins install @getfoundry/unbrowse-openclaw
That’s it. Downloads, extracts, enables, and loads automatically.
Add to ~/.openclaw/openclaw.json (or ~/.clawdbot/clawdbot.json):
{
"plugins": {
"entries": {
"unbrowse-openclaw": { "enabled": true }
}
}
}
Then restart:
{
"plugins": {
"entries": {
"unbrowse-openclaw": {
"enabled": true,
"source": "github:lekt9/unbrowse-openclaw"
}
}
}
}
git clone https://github.com/lekt9/unbrowse-openclaw ~/.openclaw/extensions/unbrowse-openclaw
cd ~/.openclaw/extensions/unbrowse && npm install
openclaw gateway restart
Unbrowse works immediately after installation. No API key required for core features:
# Install and start using right away
openclaw plugins install @getfoundry/unbrowse-openclaw
# Start capturing immediately - no config needed
"Capture the API from airbnb.com"
| Feature | Requirements |
|---|---|
| Capture APIs | β Nothing β works out of box |
| Generate skills | β Nothing β works out of box |
| Replay captured APIs | β Nothing β uses your captured auth |
| Browse & login | β Nothing β uses your Chrome profile |
| Search marketplace | β Nothing β free to search |
| Download from marketplace | π° Solana wallet + USDC ($0.01/skill) |
| Publish to marketplace | π° Solana wallet (earn 70% revenue) |
Only needed if you want to download/publish skills to the marketplace:
# Create a Solana wallet for marketplace transactions
unbrowse_wallet action="create"
# Or use your existing wallet
unbrowse_wallet action="set_creator" wallet=""
Note: The
SOLANA_PRIVATE_KEYandUNBROWSE_API_KEYenvironment variables are only for advanced marketplace features. Basic capture, generation, and replay work without any configuration.
Browse any website normally. Unbrowse intercepts all API traffic:
- Endpoint URLs and methods
- Request/response payloads
- Authentication headers
- Cookies and tokens
# Using the agent
"Browse twitter.com and capture the API"
# Or directly
unbrowse_capture url="twitter.com"
AI analyzes captured traffic and generates production-ready skills:
- OpenAPI-style schemas
- Auth handling (Bearer, cookies, etc.)
- Documentation and examples
- TypeScript wrapper code
# Auto-generated from captured traffic
unbrowse_generate_skill domain="twitter.com"
Push skills to the marketplace with optional pricing:
# Free skill (default)
unbrowse_publish name="twitter-timeline"
# Paid skill ($2.50 USDC)
unbrowse_publish name="twitter-timeline" price="2.50"
When other agents download your skill:
- 70% goes to you (the creator)
- 30% goes to the platform
Payments are instant via x402 protocol on Solana (USDC).
| Tool | Description |
|---|---|
unbrowse_browse |
Open URL in browser with traffic capture |
unbrowse_capture |
Capture API traffic from a domain |
unbrowse_profile |
Record a browsing session with login |
unbrowse_act |
Execute browser actions (click, type, scroll) |
| Tool | Description |
|---|---|
unbrowse_generate_skill |
Generate skill from captured endpoints |
unbrowse_install |
Install a skill from the marketplace |
unbrowse_replay |
Execute API calls using installed skills |
| Tool | Description |
|---|---|
unbrowse_search |
Search the skill marketplace |
unbrowse_publish |
Publish a skill (free or paid) |
unbrowse_wallet |
Manage your Solana wallet for payments |
| Tool | Description |
|---|---|
unbrowse_login |
Login to a service and save session |
unbrowse_session |
List/manage saved sessions |
unbrowse_cookies |
Export cookies for a domain |
| Tool | Description |
|---|---|
unbrowse_workflow_record |
Record multi-site browsing sessions for workflow learning |
unbrowse_workflow_learn |
Analyze recordings to generate api-package or workflow skills |
unbrowse_workflow_execute |
Execute workflow or api-package skills with success tracking |
unbrowse_workflow_stats |
View success rates, earnings, and leaderboards |
Unbrowse generates two types of skills:
Single-site API collections. Simple endpoint capture with authentication.
# Capture and generate
unbrowse_capture url="api.twitter.com"
# Generates: twitter-api skill with endpoints
Multi-site orchestration with decision points and data flow.
# Record a cross-site session
unbrowse_workflow_record action="start" intent="Compare prices across sites"
# Browse multiple sites, add annotations at key points
unbrowse_workflow_record action="annotate" note="Price comparison" noteType="decision"
unbrowse_workflow_record action="stop"
# Learn the workflow
unbrowse_workflow_learn sessionId="session-123..."
Pay per sale. Buyers own the skill forever.
When an agent purchases a skill:
- 70% goes to the creator
- 30% goes to the platform
Payments are instant via x402 protocol on Solana (USDC).
βββββββββββββββββββββββββββββββββββββββββββββββββββ
β EARNINGS BREAKDOWN β
βββββββββββββββββββββββββββββββββββββββββββββββββββ€
β Creator: 70% β Instant payout on sale β
β Platform: 30% β Infrastructure & marketplace β
βββββββββββββββββββββββββββββββββββββββββββββββββββ
Success rate affects marketplace visibility. Higher quality = more sales.
| Tier | Success Rate | Visibility |
|---|---|---|
| Gold | 95%+ | Featured, top ranking |
| Silver | 85%+ | High visibility |
| Bronze | 70%+ | Standard listing |
| Unranked | 50%+ | Lower ranking |
| Poor | Hidden from search |
Full config example:
{
"plugins": {
"entries": {
"unbrowse-openclaw": {
"enabled": true,
"config": {
"skillsOutputDir": "~/.openclaw/skills",
"autoDiscover": true,
"skillIndexUrl": "https://index.unbrowse.ai",
"marketplace": {
"creatorWallet": "YOUR_SOLANA_WALLET_ADDRESS",
"solanaPrivateKey": "YOUR_BASE58_PRIVATE_KEY",
"defaultPrice": "0"
},
"browser": {
"useApiKey": "bu_...",
"proxyCountry": "us"
},
"credentialSource": "none"
}
}
}
}
}
| Option | Default | Description |
|---|---|---|
skillsOutputDir |
~/.openclaw/skills |
Where generated skills are saved |
autoDiscover |
true |
Auto-generate skills when browsing APIs |
skillIndexUrl |
https://index.unbrowse.ai |
Marketplace API URL |
marketplace.creatorWallet |
– | Solana address to receive USDC |
marketplace.solanaPrivateKey |
– | Private key for x402 payments |
marketplace.defaultPrice |
"0" |
Default price for new skills |
browser.useApiKey |
– | Browser Use API key for stealth |
browser.proxyCountry |
"us" |
Proxy location for stealth browser |
credentialSource |
"none" |
Password lookup: none/keychain/1password |
| Option | Default | Description |
|---|---|---|
enableChromeCookies |
false |
Read cookies from Chrome’s database |
enableOtpAutoFill |
false |
Auto-fill OTP codes from SMS/clipboard |
enableDesktopAutomation |
false |
Allow AppleScript desktop control |
See SECURITY.md for detailed explanations of each feature.
Unbrowse uses the x402 protocol for machine-to-machine payments:
1. Agent requests skill download
2. Server returns HTTP 402 with payment requirements
3. Agent signs USDC transaction on Solana
4. Agent retries with signed transaction in X-Payment header
5. Server verifies on-chain, returns skill content
No intermediaries. Direct creator payment. Instant settlement.
| Type | Price | Description |
|---|---|---|
| Free | $0.00 | Default β maximum adoption |
| Paid | $0.10 – $100 | Creator sets price, earns 70% |
Unbrowse works on all OpenClaw-compatible platforms:
| Platform | Config File | Install Command |
|---|---|---|
| OpenClaw | ~/.openclaw/openclaw.json |
openclaw plugins install @getfoundry/unbrowse-openclaw |
| Clawdbot | ~/.clawdbot/clawdbot.json |
clawdbot plugins install @getfoundry/unbrowse-openclaw |
| Moltbot | ~/.moltbot/moltbot.json |
moltbot plugins install @getfoundry/unbrowse-openclaw |
For self-hosting the marketplace server, see server/ directory:
cd server
docker compose up -d
Default port: 4111
# Type check
npx tsc --noEmit
# Test locally
openclaw gateway restart
tail -f ~/.openclaw/logs/gateway.log | grep unbrowse
~/.openclaw/skills/ β Generated skills
~/.openclaw/extensions/ β Extension code
~/.openclaw/logs/ β Gateway logs
Generated skills follow the Agent Skills open standard:
my-skill/
βββ SKILL.md # Skill definition and metadata
βββ scripts/ # Executable scripts
β βββ run.ts # Main execution script
βββ references/ # Supporting documentation
βββ api.md # API reference
This error occurs on Node.js v24+ due to N-API compatibility issues with the @solana/web3.js native bindings.
Solution: Use Node.js v22 LTS (Long Term Support)
# If using nvm
nvm install 22
nvm use 22
# Then restart the gateway
openclaw gateway restart
Fixed in v0.4.0+. Update to the latest version:
openclaw plugins update @getfoundry/unbrowse-openclaw
Usually a Node version issue. See the Node.js v24+ fix above.
Wallet/marketplace features require:
- Node.js v22 or earlier (not v24+)
- A funded Solana wallet (for downloads)
Basic capture, generation, and replay work without a wallet.
Make sure Chrome is running with remote debugging enabled, or let Unbrowse launch it:
# Kill existing Chrome instances
pkill -f "Google Chrome"
# Try capture again (Unbrowse will launch Chrome)
unbrowse_capture urls=["https://example.com"]
Security: All sensitive features now disabled by default
The following capabilities now require explicit opt-in via config:
| Feature | Config to Enable |
|---|---|
| Chrome cookie reading | enableChromeCookies: true |
| OTP auto-fill (SMS/clipboard) | enableOtpAutoFill: true |
| Desktop automation (AppleScript) | enableDesktopAutomation: true |
| Keychain/1Password credentials | credentialSource: "keychain" |
Why: These features access sensitive local data. While necessary for full automation, they should be opt-in so users understand what they’re enabling.
Migration: Add to your config if you need these features:
{
"plugins": {
"entries": {
"unbrowse": {
"config": {
"enableChromeCookies": true,
"enableOtpAutoFill": true,
"enableDesktopAutomation": true
}
}
}
}
}
Core capture/replay functionality is unaffected β basic API capture and replay work without any config changes.
See SECURITY.md for full details on what each feature does.
MIT
Built for OpenClaw. Powered by x402.