OpenClaw 是一个强大的人工智能代理框架。通过将 MoreLogin 技能安装到您的 OpenClaw 工作区中,您的代理将能够完全自主管理浏览器和云手机。
npm install -g openclaw
openclaw init # Creates ~/.openclaw/workspace/初始化后,工作区结构如下所示:
~/.openclaw/
├── workspace/
│ ├── skills/ ← Skill plugins live here
│ │ └── morelogin/ ← MoreLogin skill (you will create this)
│ ├── TOOLS.md ← Tool configuration file
│ └── ...
└── config.yaml ← OpenClaw global config将官方技能库克隆到 OpenClaw 技能目录中:
# Clone the skill into the correct location
git clone https://github.com/MoreLoginBrowser/morelogin-local-api-skill.git \
~/.openclaw/workspace/skills/morelogin
# Install dependencies
cd ~/.openclaw/workspace/skills/morelogin
npm install技能从哪里来?
技能源代码托管在 GitHub 上:MoreLoginBrowser/morelogin-local-api-skill。该存储库包含 OpenClaw 用于与 MoreLogin 交互的 CLI 包装器和 API 绑定。
将 MoreLogin 工具定义添加到您的 ~/.openclaw/workspace/TOOLS.md 文件中:
### Morelogin
- Install Path: /Applications/Morelogin.app (macOS) or C:\Program Files\MoreLogin (Windows)
- Default CDP Port: 9222
- Local API: http://localhost:40000运行快速测试以确认技能已正确安装:
openclaw morelogin browser list --page 1 --page-size 5如果 MoreLogin 应用程序正在运行,您应该会看到带有浏览器的 JSON 响应(或空列表)。
要更新到最新版本:
cd ~/.openclaw/workspace/skills/morelogin
git pull origin main
npm install升级前请检查发行说明 中的重大更改。
MoreLogin 技能将 CLI 命令直接公开给 OpenClaw 环境。代理在推理过程中自动调用这些,但您也可以手动运行它们进行测试。
# List profiles
openclaw morelogin browser list --page 1 --page-size 20
# Start a profile (Returns debugPort for CDP connection)
openclaw morelogin browser start --env-id abc123def
# View running status
openclaw morelogin browser status --env-id abc123def
# Close profile
openclaw morelogin browser close --env-id abc123def# List cloud phones
openclaw morelogin cloudphone list --page 1 --page-size 20
# Start/Stop
openclaw morelogin cloudphone start --id <cloudPhoneId>
openclaw morelogin cloudphone stop --id <cloudPhoneId>
# Get details (Includes ADB connection info)
openclaw morelogin cloudphone info --id <cloudPhoneId>
# Execute cloud phone command via ADB
openclaw morelogin cloudphone exec --id <cloudPhoneId> --command "ls /sdcard"# Proxy
openclaw morelogin proxy list
openclaw morelogin proxy add --payload '{"proxyIp":"1.2.3.4","proxyPort":8000,"proxyType":0}'
# Group
openclaw morelogin group list
openclaw morelogin group create --name "US-Group"下面是一个完整的示例,它创建浏览器、启动它、通过 CDP 访问 URL,然后关闭浏览器 — 所有这些都由 OpenClaw 代理精心安排。
“创建一个新的 MoreLogin 浏览器,打开 google.com,截取屏幕截图,然后将其关闭。”
# 1. Create a browser profile
openclaw morelogin browser create --name "demo-profile"
# → Returns: {"envId": "abc123def"}
# 2. Start the profile
openclaw morelogin browser start --env-id abc123def
# → Returns: {"debugPort": "9222", "webdriver": "/path/to/chromedriver"}
# 3. Connect via CDP (agent uses Puppeteer internally)
# The agent connects to ws://127.0.0.1:9222 and runs:
# - page.goto("https://www.google.com")
# - page.screenshot({path: "screenshot.png"})
# 4. Close the profile
openclaw morelogin browser close --env-id abc123defconst { execSync } = require('child_process');
const puppeteer = require('puppeteer-core');
async function main() {
// 1. Create profile
const createResult = JSON.parse(
execSync('openclaw morelogin browser create --name "demo-profile"').toString()
);
const envId = createResult.data.envId;
// 2. Start profile
const startResult = JSON.parse(
execSync(`openclaw morelogin browser start --env-id ${envId}`).toString()
);
const debugPort = startResult.data.debugPort;
// 3. Connect via CDP and automate
const browser = await puppeteer.connect({
browserURL: `http://127.0.0.1:${debugPort}`,
defaultViewport: null
});
const page = (await browser.pages())[0];
await page.goto('https://www.google.com');
await page.screenshot({ path: 'screenshot.png' });
console.log('Screenshot saved.');
// 4. Cleanup
await browser.disconnect();
execSync(`openclaw morelogin browser close --env-id ${envId}`);
console.log('Profile closed.');
}
main().catch(console.error);当您要求 OpenClaw 代理*“创建浏览器并登录 example.com”*时,代理将:
- 调用
openclaw morelogin browser create(或等效 API)以获取envId。 - 调用
openclaw morelogin browser start以获取debugPort。 - 使用 CDP 工具(如 Puppeteer/Playwright)连接到
debugPort并执行登录步骤。 - 通过
openclaw morelogin browser status验证是否成功。
| 症状 | 解决方案 |
|---|---|
command not found: openclaw | 确保 OpenClaw 已全局安装:npm install -g openclaw |
Error: connect ECONNREFUSED 127.0.0.1:40000 | 在运行命令之前启动 MoreLogin 桌面应用程序 |
| 技能目录缺失 | 运行 openclaw init 创建工作区,然后克隆技能 |
| 更新后数据过时 | 在 git pull 之后再次在技能目录中运行 npm install |