Files
skill-lib/docs/L0-产品白皮书与能力全景层.md
2026-03-26 19:28:25 +08:00

130 lines
5.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# L0 — 产品白皮书与能力全景层
**文档版本**: 2.0
**适用项目**: sgClawZeroClaw 重构版)
**编制日期**: 2026-03-26
---
## 1. 产品定义
sgClaw 是一个嵌入企业浏览器运行环境中的浏览器智能体执行内核。它的职责不是替代整个平台,也不是承诺“全自动数字员工”,而是把自然语言任务转换成受控的浏览器操作,并通过既有浏览器宿主完成页面执行。
ZeroClaw 重构之后sgClaw 的产品形态可以概括为三件事:
1. 把用户任务接入统一的 Agent 执行入口。
2. 通过固定的 `browser_action` 工具把意图翻译为浏览器命令。
3. 在协议、域名和动作白名单的约束下完成可审计的页面操作。
当前仓库中的 sgClaw 不是一个完整前端产品,也不是浏览器发行版本身,而是“浏览器 Agent Runtime + Pipe 协议 + ZeroClaw 兼容层”的产品核心。
---
## 2. 重构后的产品边界
### 2.1 当前已经落地的能力
- 浏览器侧通过 STDIO JSON Line 协议与 Rust 进程通信。
- 启动时执行 `init -> init_ack` 握手,并建立会话级 HMAC 密钥。
- 任务输入统一走 `submit_task` 消息。
- Rust 侧支持两条执行路径:
- 未配置大模型时,使用仓库内置 planner/fallback 逻辑。
- 配置 `DEEPSEEK_*` 环境变量时,切换到 ZeroClaw compatibility runtime。
- 当前有效工具面收敛为一个工具:`browser_action`
- 当前真正开放给模型的动作仅 4 个:`click``type``navigate``getText`
- 所有浏览器动作都受 `resources/rules.json` 中的域名和动作白名单约束。
- 执行过程中会向宿主发送结构化日志和最终任务结果。
### 2.2 当前明确不宣称的能力
以下内容在旧文档中存在较多规划性描述,但并非当前仓库中的已实现事实:
- 独立的 Skill 仓库与 Skill 脚本执行引擎。
- 完整 MCP 工具接入和多工具编排。
- 独立 Critic/Circuit Breaker 子系统。
- 完整的浏览器 Side Panel 产品界面。
- 40+ 页面动作在 Agent 侧全部开放。
- 真实生产级多租户、审计后台、任务编排中心。
这些能力可以保留为后续扩展方向,但不应继续写入 L0-L4 作为现状描述。
---
## 3. 产品价值主张
ZeroClaw 重构后的 sgClaw核心价值不在“功能堆叠”而在于把原本分散的浏览器自动化能力收敛成一个可控、可替换、可验证的智能体执行底座。
### 3.1 对业务侧
- 用自然语言触发浏览器任务,不再直接暴露底层页面命令。
- 统一任务入口,降低页面自动化能力的使用门槛。
- 执行链路具备日志、结果回传和协议约束,便于纳入业务流程。
### 3.2 对集成侧
- 浏览器宿主只需实现固定协议,不必理解模型内部细节。
- Agent Runtime 可以在保留宿主协议的前提下切换实现策略。
- ZeroClaw 兼容层把未来模型、记忆、工具调度的升级入口预留在 Rust 侧。
### 3.3 对安全侧
- 不是“模型可任意操作浏览器”,而是“模型只能调用被允许的动作”。
- 安全边界前置到协议和 MAC Policy而不是把约束留给提示词。
- 域名、动作、HMAC 三类控制共同组成最小可信执行面。
---
## 4. 能力全景
| 能力域 | 当前状态 | 产品含义 |
|---|---|---|
| 任务接入 | 已实现 | 接收浏览器宿主发来的 `submit_task` 指令 |
| 协议握手 | 已实现 | 统一版本、会话标识、HMAC 种子交换 |
| Agent 执行 | 已实现 | planner fallback 与 ZeroClaw compat 共存 |
| 浏览器工具 | 已实现 | 单一 `browser_action` 工具 |
| 核心动作 | 已实现 | `click/type/navigate/getText` |
| 域名白名单 | 已实现 | 仅允许规则文件中的域名 |
| 动作白名单 | 已实现 | 仅允许规则文件中的动作 |
| 结构化日志 | 已实现 | `log_entry``task_complete` 回传 |
| 扩展动作枚举 | 已预留 | 协议枚举已定义,但默认未开放 |
| Skill 引擎 | 未独立实现 | 当前仅保留“可被工具和提示词扩展”的语义入口 |
| MCP 生态 | 未在主链路启用 | ZeroClaw 兼容层为后续保留位置 |
---
## 5. 典型产品场景
### 5.1 页面导航与信息读取
用户输入“进入 ERP 首页并读取当前待办数量”,系统可以拆解为:
1. `navigate` 到目标地址。
2. `getText` 读取页面目标区域。
3. 返回结构化结果摘要。
这是当前仓库最稳定、最符合实现面的任务类型。
### 5.2 表单录入与提交流程中的局部自动化
当页面元素定位规则明确时,系统可用 `click``type` 组合完成表单录入、按钮点击、简单提交等动作。
是否能覆盖完整业务流程,取决于浏览器宿主是否提供对应页面、选择器和回包信息,而不是文档层面预设“所有流程都能端到端执行”。
### 5.3 作为更大产品中的 Agent 执行核
sgClaw 更适合被理解为产品底座中的一个执行核:
- 上层可以接入任务输入框、审批入口或业务编排器。
- 下层通过既有浏览器控制面执行。
- 中间由 sgClaw 把自然语言与浏览器动作连接起来。
---
## 6. 成功标准
重构后的产品文档,以“真实能力清晰可交付”为标准,而不是以“愿景尽可能大”为标准。当前版本应满足:
- 任何架构描述都能在 `src/``resources/``tests/` 中找到对应实现。
- 任何对外宣称的动作能力都与 `rules.json` 和工具 schema 一致。
- 任何“未来可扩展”内容都与“当前已实现”明确区分。
- L0 到 L4 能从产品、架构、接口、数据流、工程五层连续闭环。