mirror of
http://192.168.0.88:13333/lywsvip/openclaw-zero-token.git
synced 2026-05-08 08:08:33 +08:00
43 lines
3.5 KiB
Markdown
43 lines
3.5 KiB
Markdown
# Web 模型:浏览器与 CDP 模式说明
|
||
|
||
本文说明 Zero Token 通过 Playwright **CDP 连接 Chrome** 时的几种用法及硬约束,便于与 `docs/zero-token/zero-token-requirements.md` 对照。
|
||
|
||
## 模式 A:独立调试 Profile(当前默认)
|
||
|
||
- **做法**:运行 `start-chrome-debug.sh`,使用专用 `user-data-dir`(如 Linux 下 `~/.config/chrome-openclaw-debug`),并开启 `--remote-debugging-port=9222`。
|
||
- **配置**:`browser.attachOnly: true`,`browser.cdpUrl`(或 profile 中的 `cdpUrl`)指向 `http://127.0.0.1:9222`。
|
||
- **优点**:不与日常 Chrome 抢同一用户目录;行为稳定、文档与脚本一致。
|
||
- **缺点**:需在**该**浏览器实例中完成各站登录,与「日常已登录的 Chrome」不是同一套会话。
|
||
|
||
## 模式 B:用户自备「单实例」调试 Chrome
|
||
|
||
- **做法**:用户自行用固定 `user-data-dir` + `--remote-debugging-port` 启动 **唯一** Chrome 进程(例如桌面快捷方式),OpenClaw 仅 **attach** 到该端口。
|
||
- **约束**:**同一 `user-data-dir` 不能同时跑两个 Chrome**。若已打开普通 Chrome 占用该目录,再启动调试实例会失败或异常;需关闭其一或使用与日常不同的专用目录。
|
||
- **何时算「复用登录态」**:仅当用户**始终**用这一调试实例上网、完成登录,或该目录本就是用户接受的「专用 Zero Token 环境」时,才等价于长期复用会话。
|
||
|
||
## 模式 C:扩展 / 守护进程桥(参考)
|
||
|
||
- **参考项目**:[bb-browser](https://github.com/epiral/bb-browser)(扩展 + 本机服务)、[insidebar-ai](https://github.com/xiaolai/insidebar-ai)(侧栏复用站点会话的产品思路)。
|
||
- **现状**:本仓库主路径仍为 **CDP + Playwright**;是否引入 bb-browser 类集成以 **PoC 结论** 为准(见下方「bb-browser PoC 摘要」与 `docs/zero-token/zero-token-requirements.md` 变更记录)。
|
||
- **说明**:该模式不依赖「无调试端口的普通 Chrome 被 CDP 附加」——需单独实现或集成桥接层。
|
||
|
||
### bb-browser PoC 摘要(结论性)
|
||
|
||
| 维度 | 结论 |
|
||
|------|------|
|
||
| CLI 可用性 | `npx bb-browser --help` 可正常展示命令(`site`、`open`、`eval`、`fetch` 等),适合作为 **独立工具** 或 **MCP** 由 Agent 调用。 |
|
||
| 与 Zero Token Web 模型的关系 | bb-browser 以 **站点 adapter**(搜索/热榜/结构化拉数)为主;**不能**替代 `src/zero-token/streams/web-stream-factories.ts` 中 11 个 Web 聊天 Provider 的流式对话与工具协议实现。 |
|
||
| `--openclaw` | 文档说明可走 OpenClaw 内置浏览器;与 **本 fork 的 CDP 授权 + `*-web-stream`** 是 **并行能力**,非替换关系。 |
|
||
| 推荐用法 | 需要站外数据时,通过 **工具/MCP** 暴露 `bb-browser`;主对话模型仍走既有 Web Provider。 |
|
||
| 依赖 | **本仓库不默认添加** `bb-browser` 依赖;由用户在环境中 `npm i -g bb-browser` 或 `npx` 按需使用。 |
|
||
|
||
## 配置关系小结
|
||
|
||
| 模式 | 典型 `user-data-dir` | CDP 端口 | 与日常 Chrome 并行 |
|
||
| ---- | -------------------- | -------- | ------------------ |
|
||
| A | 脚本指定的独立目录 | 9222 | 可以(不同目录) |
|
||
| B | 用户自选(须单实例) | 用户指定 | 同目录则不可以 |
|
||
| C | 依具体方案 | 依方案 | 依方案 |
|
||
|
||
授权命令仍通过 `onboard-web-auth` / `auth-choice` 等将凭证写入本地 profile;CDP 只解决「浏览器由谁启动、连哪台 Chrome」。
|