docs: redefine sgclaw as hardened zeroclaw runtime
This commit is contained in:
@@ -24,14 +24,15 @@ src/
|
||||
└── security/
|
||||
```
|
||||
|
||||
模块边界按职责划分为四层:
|
||||
模块边界按职责划分为五层:
|
||||
|
||||
| 层级 | 模块 | 责任 |
|
||||
|---|---|---|
|
||||
| 传输层 | `pipe` | 定义消息、握手、序列号、收发与命令等待 |
|
||||
| 控制层 | `lib.rs`、`agent` | 接收任务、选择执行路径、回传日志与结果 |
|
||||
| 兼容层 | `compat` | 对接 vendored ZeroClaw,暴露单一 `browser_action` |
|
||||
| 安全层 | `security`、`resources/rules.json` | 域名与动作白名单控制 |
|
||||
| 安全层 | `security`、`resources/rules.json` | 域名、动作与 pipe 命令边界控制 |
|
||||
| 运行时入口层 | `lib.rs`、`agent` | 接收任务、选择执行路径、回传日志与结果 |
|
||||
| 适配层 | `compat`、`config` | 把 sgClaw 宿主环境映射到 zeroclaw 运行时;当前仍带有过渡性限制 |
|
||||
| 核心能力层 | `third_party/zeroclaw` | prompt、skills、memory、tool loop、provider 抽象 |
|
||||
|
||||
---
|
||||
|
||||
@@ -51,13 +52,13 @@ src/
|
||||
|
||||
### 2.2 `src/agent/mod.rs`
|
||||
|
||||
[`src/agent/mod.rs`](/home/zyl/projects/sgClaw/claw/src/agent/mod.rs) 决定执行路径:
|
||||
[`src/agent/mod.rs`](/home/zyl/projects/sgClaw/claw/src/agent/mod.rs) 当前决定执行路径:
|
||||
|
||||
- 收到 `BrowserMessage::SubmitTask` 时优先尝试读取 `DeepSeekSettings`。
|
||||
- 环境配置存在,则走 `compat::runtime::execute_task`。
|
||||
- 环境配置不存在,则走内置 planner fallback。
|
||||
|
||||
这就是当前系统的“路由器”。
|
||||
这就是当前系统的“路由器”。但文档上应把它理解为过渡性 runtime selector,而不是最终产品架构中心。
|
||||
|
||||
### 2.3 `src/agent/runtime.rs`
|
||||
|
||||
@@ -70,7 +71,7 @@ src/
|
||||
|
||||
### 2.4 `src/compat/runtime.rs`
|
||||
|
||||
[`src/compat/runtime.rs`](/home/zyl/projects/sgClaw/claw/src/compat/runtime.rs) 是 ZeroClaw 重构的关键模块:
|
||||
[`src/compat/runtime.rs`](/home/zyl/projects/sgClaw/claw/src/compat/runtime.rs) 是当前 ZeroClaw 接入的关键模块:
|
||||
|
||||
- 负责构造 ZeroClaw config。
|
||||
- 负责创建 provider。
|
||||
@@ -81,11 +82,12 @@ src/
|
||||
|
||||
- 当前 compat 层只向 ZeroClaw 注册一个工具。
|
||||
- `allowed_tools` 被收敛到 `browser_action`。
|
||||
- 这意味着 ZeroClaw 在本项目中是“兼容执行器”,不是“多工具平台”。
|
||||
- 这意味着当前代码还没有把 sgClaw 做成 zeroclaw-first runtime。
|
||||
- 这是一种实现限制,不应被文档提升为产品原则。
|
||||
|
||||
### 2.5 `src/pipe/browser_tool.rs`
|
||||
|
||||
该模块承担真实浏览器命令发送职责:
|
||||
该模块承担真实浏览器命令发送职责,也是当前系统中最重要的特权工具面桥接层:
|
||||
|
||||
- 为每个命令分配 `seq`。
|
||||
- 计算 HMAC。
|
||||
@@ -93,11 +95,11 @@ src/
|
||||
- 阻塞等待对应 `BrowserMessage::Response`。
|
||||
- 在超时、响应错配、校验失败时返回错误。
|
||||
|
||||
它是 Rust 侧最重要的协议执行点。
|
||||
它是 Rust 侧最重要的协议执行点。架构上应把它理解为“privileged browser surface adapter”,而不是“整个 runtime 本体”。
|
||||
|
||||
### 2.6 `src/security/mac_policy.rs`
|
||||
|
||||
安全策略只认规则文件,不认模型意图。
|
||||
安全策略只认规则文件与 pipe contract,不认模型意图。
|
||||
规则来源为 [`resources/rules.json`](/home/zyl/projects/sgClaw/claw/resources/rules.json),当前默认约束是:
|
||||
|
||||
- 允许域名:`oa.example.com`、`erp.example.com`、`hr.example.com` 及 demo 域名。
|
||||
@@ -235,6 +237,8 @@ L2 是产品内核视角的契约说明。两者关系如下:
|
||||
2. `src/agent/runtime.rs` 的 tool definition
|
||||
3. `src/compat/browser_tool_adapter.rs` 的 `parameters_schema` 与 `parse_action`
|
||||
|
||||
这三者表达的是“当前特权浏览器工具面”的开放范围,而不是 sgClaw 整体 runtime 的长期能力上限。
|
||||
|
||||
---
|
||||
|
||||
## 5. `browser_action` 工具契约
|
||||
|
||||
Reference in New Issue
Block a user