本页内容
任务指南
与 EgoLite 协作
独立 Ego Provider 通过 Ego 原生通道管理 Space、页面操作、人工交接及设备/App 模拟,无需浏览器扩展。
安装独立 Provider
通过 Mearl setup 安装 @mearl/provider-ego 0.1.1+。需要 Node.js 22.23.4+、Mearl 3.0.7+,且 ego-browser 可执行。控制操作统一使用 mearl 命令,无需额外 CLI 或 Skill。安装包已内置原生页面 SDK;源码构建使用锁文件中固定的已发布 SDK。
npx @mearl/setup@latest provider install @mearl/provider-ego
mearl browser_launch --payload '{"provider":"ego","providerOptions":{"name":"My task"}}'扩展按需安装,Agent 默认关闭
Provider 无需扩展即可工作。在 macOS 上,其 EgoLite 声明会让该浏览器配置的扩展 Agent 接入默认关闭,人工调试面板仍可使用。需将扩展和 Native Host 都更新到支持协调协议的版本,再重新注册 Provider 后生效。
- 可在扩展设置中明确开启或关闭 Agent 接入。偏好仅保存在当前浏览器配置中,不同步到其他浏览器。
- Provider 离线或移除不会自动重新开启扩展 Agent。策略握手完成前保持关闭;旧版 Native Host 需要更新。
- 协调使用变更通知,不做定时轮询。Ego 控制权检查仅在有待完成的宿主请求时运行,每次原生页面操作仍校验控制权。其他平台暂不自动识别 EgoLite。
一个任务对应一个 Space
通过 providerOptions.name 创建任务,或用 providerOptions.spaceId 关联已有 Agent Space。复用 Provider 返回的 browserId 和 tabId;页面映射由 Provider 处理,无需手工匹配扩展标签页,不使用 Mearl --session。
由 Ego 统一控制权
使用 mearl browser_control 和完整 browserId 交接、恢复和完成任务,不传 --session,仅在用户明确交还后恢复。接管期间 Ego 阻断原生页面操作。finish 默认不保留 Agent 页面;keepTabIds 使用 tab_list 返回的数字 ID 保留结果页。browser_release 只解绑 Provider,不结束 Space,也不清除模拟。
mearl browser_control --browser '<browserId>' --payload '{"operation":"handoff"}'
mearl browser_control --browser '<browserId>' --payload '{"operation":"resume"}'
mearl browser_control --browser '<browserId>' --payload '{"operation":"finish","keepTabIds":[1,2]}'设备外壳、WebView 与 App 服务
通过 set_device_emulation 和 set_app_profile 分别配置设备与 App 模拟,启用 deviceShell 可使用设备外壳和根 WebView。共享原生页面宿主提供已安装 App 的协议和授权服务;真实授权仍需用户批准,接管会取消待授权会话。保留页面的模拟与宿主服务依赖 Provider 连接,需要普通页面时应在 finish 前清除模拟。不提供扩展专属请求/日志入口。
开源致谢
EgoLite 是 Citro Labs 的独立浏览器,其公开 ego-browser 运行时使用 MIT 许可证。Mearl Provider 使用其原生自动化通道。