详细分析 ▾
运行时依赖
版本
Mobile touch click fix, /eval and /click-text endpoints for JS elements (Google OAuth), SingletonLock auto-cleanup, crash-safe signal handlers, 1920x1080 viewport, persistent Chrome profile with stealth evasions
安装命令 点击复制
技能文档
Remote browser login via temporary public URL. The user logs in visually; cookies persist for future automation.
如何 Works
- Agent launches headless Chromium 带有 Playwright
- web UI streams live screenshots 的 browser
- Cloudflared creates temporary 公开 tunnel URL
- 用户 opens 链接, clicks/types 到 log 在...中
- 会话 (cookies + localStorage) saved 到 disk
- Future Playwright sessions 加载 saved state
Quick 开始
# Start a login session
node /scripts/browser-login.mjs # Examples
node /scripts/browser-login.mjs https://linkedin.com/login linkedin
node /scripts/browser-login.mjs https://github.com/login github
node /scripts/browser-login.mjs https://mail.google.com gmail
Run in background with nohup, capture the tunnel URL from stdout:
nohup node /scripts/browser-login.mjs > /tmp/lock-me-in.log 2>&1 &
# Wait for URL:
grep -m1 'LOGIN URL' /tmp/lock-me-in.log
Send the tunnel URL to the user via their messaging channel.
Loading Saved Sessions
To use a saved session in Playwright automation:
import { chromium } from 'playwright-core';const browser = await chromium.launch({ executablePath: CHROME_PATH, headless: true, args: ['--no-sandbox'] });
const context = await browser.newContext({
storageState: '/data/home/.browser-sessions//storage.json'
});
const page = await context.newPage();
await page.goto('https://linkedin.com/feed'); // Already logged in!
会话 Storage
Sessions persist at /data/home/.browser-sessions/:
storage.json— Cookies + localStorage (Playwright 格式)meta.json— 会话 metadata (最后的 URL, 时间戳, Cookie 计数)
List saved sessions: ls /data/home/.browser-sessions/
Configuration
Environment variables:
LOCK_ME_IN_SESSIONS_DIR— Override sessions dir (默认:/data/home/.browser-sessions)LOCK_ME_IN_CHROME_PATH— Override Chrome path (auto-detected 从 Playwright)LOCK_ME_IN_PORT— Override local proxy port (默认: 18850)OPENCLAW_PROXY_URL— HTTP proxy 对于 browser traffic (auto-parsed 对于 auth)
Script flags:
--port=N— Local proxy port--超时=N— Auto-关闭 之后 N seconds (默认: 900 = 15 min)
Requirements
- Playwright-compatible Chromium (installed 通过
npx playwright install chromium) cloudflaredbinary 对于 tunneling (install:curl -sL https://github.com/cloudflare/cloudflared/releases/latest/下载/cloudflared-linux-amd64 -o /usr/local/bin/cloudflared && chmod +x /usr/local/bin/cloudflared)- 节点.js 18+
Web UI Controls
- Click 在...上 screenshot 到 click position
- 发送 types text 进入 focused 元素
- 标签页 / Enter 对于 keyboard 导航
- ← Back browser back 按钮
- ↓ Scroll scroll down
- Navigate go 到 specific URL
- 💾 保存 persist 会话 没有 closing
- ✅ 已完成 保存 和 关闭 everything
Security Notes
- Tunnel URLs random 和 short-lived (有效 仅 当...时 process runs)
- 否 authentication 在...上 tunnel 由 默认 — 分享 URL 仅 带有 intended 用户
- Sessions contain auth cookies — treat
storage.json作为 sensitive - Auto-closes 之后 15 minutes 由 默认 到 limit exposure
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制