docs: complete Chinese proofreading and generated reference pairing

This commit is contained in:
xjt
2026-08-09 11:02:16 +08:00
parent 0543a6f79d
commit 7ff0cbcb7e
565 changed files with 10606 additions and 2171 deletions
+1 -1
View File
@@ -3,4 +3,4 @@
# after editing either side, bring the other along and re-record with:
# pnpm run verify-translation-pairing --write packages/client/ui-tool/README.md
README.md: d6bc0f248cffaf4c65ecf6d97c7a4afb17fc8941
README.zh.md: f4e8044fe6e10e1fbdfb70987efe07c884fa9ac8
README.zh.md: 2e6674480fda93a8e3f83fdbddb798880a546335
+16 -16
View File
@@ -2,23 +2,23 @@
[English](README.md) | 中文
Client Tool 展示插件。`ui-conversation` 通过 `conversation.chat.tool` 交付一个已经排好位置的 root call;本包渲染该 root 及其 Code Dispatch 子调用,并把每个原子调用通过 keyed slot `tool.call.toolview` 分发。没有注册的 Tool 名称使用通用卡片。
客户端工具展示插件。`ui-conversation` 通过 `conversation.chat.tool` 交付一个已经排好位置的根调用;本包渲染该根调用及其 Code Dispatch 子调用,并通过键控 slot `tool.call.toolview` 分发每个原子调用。未注册的工具名称使用通用卡片。
业务 UI 包只注册 wire Tool 名称和原子视图,不配对 Session Event、不重建 transcript,也不拥有 root/subcall 拓扑。Runtime 继续负责 call/result 配对、生命周期和递归 `subCalls` 投影;conversation view 继续负责 ChatFlow 位置。
业务 UI 包只注册协议中的工具名称和原子视图,不配对会话事件、不重建 transcript,也不负责根调用与子调用的拓扑。运行时继续负责调用与结果的配对、生命周期和递归 `subCalls` 投影;对话视图继续负责在 ChatFlow 中的位置。
## 渲染契约
## 渲染约定
`ToolCallTree` 接收一个已经包含递归 `subCalls` 的 root `ToolCallBlock`、selection 状态、会话 `cwd`,以及用于打开文件和检查调用的 Host 回调。它递归遍历标准 call block,让 root 与任意深度的 child 经过同一条原子分发路径,不再订阅独立的 parent-to-children map。
`ToolCallTree` 接收一个已经包含递归 `subCalls` 的根 `ToolCallBlock`、选中状态、会话 `cwd`,以及用于打开文件和检查调用的 Host 回调。它递归遍历标准调用块,让根调用与任意深度的子调用经过同一条原子分发路径,不再订阅独立的父子映射。
每个 root 和 child wrapper 都保留 `conversation.chat.tool` 的 call-anchor DOM 契约,供分页和 selection 使用。
每个根调用和子调用的包装层都保留 `conversation.chat.tool` 的调用锚点 DOM 约定,供分页和 selection 使用。
本包还通过 `ToolDetails` 填充 `conversation.details.tool`。行 renderer 与详情 renderer 为 `terminal`、`read`、`diff`、`search` 和 `web` render intent 共用同一组纯 card model。本版本不认识的 intent 标签和格式错误的 wire card 数据都会回退为压平的 Tool result 文本。
本包还通过 `ToolDetails` 填充 `conversation.details.tool`。行渲染器与详情渲染器为 `terminal`、`read`、`diff`、`search` 和 `web` 渲染意图共用同一组纯卡片模型。未知的意图标签和格式错误的协议卡片数据都会回退为展平的工具结果文本。
通用行把已知 Tool 名称归类为 search、read、shell、write、edit、code 或 generic 变体。运行中、成功、失败和中断状态只来自冻结的 call/result slice。只有用户调用 Host 打开文件回调时,文件路径才相对会话 `cwd` 解析;展示代码不读取 Session service。
通用行把已知工具名称归类为搜索、读取、shell、写入、编辑、代码或通用变体。运行中、成功、失败和中断状态只来自冻结的调用/结果切片。只有用户调用 Host 打开文件回调时,文件路径才相对会话 `cwd` 解析;展示代码不读取会话服务。
## 原子 Tool 视图
## 原子工具视图
业务所有方把自己的 wire Tool 名称注册进 `tool.call.toolview`:
业务属主把自己的协议工具名称注册到 `tool.call.toolview`:
```ts ignore-check
ctx.slots.inject('tool.call.toolview', () =>
@@ -28,22 +28,22 @@ ctx.slots.inject('tool.call.toolview', () =>
}, BusinessToolRow))
```
owner 载荷为 `ToolCallOwnerProps`:`callId`、`toolName`、冻结的 `block`、可选 `cwd`,以及普通的 `openFile`/`inspect` 回调。注册项会收到正常的 Session slot runtime share,但不会收到 React node、Runtime service 或 root/subcall 知识。
属主载荷为 `ToolCallOwnerProps`:`callId`、`toolName`、冻结的 `block`、可选 `cwd`,以及普通的 `openFile`/`inspect` 回调。注册项会收到标准的会话 slot 运行时共享数据,但不会收到 React 节点、运行时服务或根调用/子调用拓扑信息。
本包当前拥有 generic fallback,以及 bash/pwsh、read、write/edit、grep/glob、web、todo、question 和 Code Dispatch 的内置展示。`ui-skill` 展示了业务包如何拥有 `skill` 注册。
本包当前负责通用回退,以及 bash/pwsh、读取、写入/编辑、grep/glob、web、todo、question 和 Code Dispatch 的内置展示。`ui-skill` 展示了业务包如何拥有 `skill` 注册。
各类卡片的上限与 fallback 规则仍由对应的 [terminal](../../../.agents/notes/implemented/feature/2026-07-28-web-terminal-card.md)、[diff](../../../.agents/notes/implemented/feature/2026-07-30-web-diff-card.md)、[read](../../../.agents/notes/implemented/feature/2026-07-30-web-read-card-frontend.md)、[search](../../../.agents/notes/implemented/feature/2026-07-30-web-search-card.md) 和 [web](../../../.agents/notes/implemented/feature/2026-07-30-web-result-card-frontend.md) Note 负责。
各类卡片的上限与回退规则仍由对应的 [terminal](../../../.agents/notes/implemented/feature/2026-07-28-web-terminal-card.md)、[diff](../../../.agents/notes/implemented/feature/2026-07-30-web-diff-card.md)、[read](../../../.agents/notes/implemented/feature/2026-07-30-web-read-card-frontend.md)、[search](../../../.agents/notes/implemented/feature/2026-07-30-web-search-card.md) 和 [web](../../../.agents/notes/implemented/feature/2026-07-30-web-result-card-frontend.md) Note 负责。
## 模型体验
无,因为本包只渲染已经记录的 Tool 调用和结果,不改变模型请求、Tool 执行或 Session Event。
无,因为本包只渲染已经记录的工具调用和结果,不改变模型请求、工具执行或会话事件。
#### KV Cache 影响
无。本包只负责 Client 展示。
无。本包只负责客户端展示。
## 已知限制与后续工作
- Host 不把 `run_code` 暴露为 Code Mode 程序 binding,因此生产事件目前只能产生一层分发;递归的运行时/UI 契约已为未来的嵌套生产者做好准备。
- 现有第一方 Tool 视图初期仍集中在本包,之后可以通过 keyed slot 独立迁回各自业务包。
- Host 不把 `run_code` 暴露为 Code Mode 程序 binding,因此生产事件目前只能产生一层分发;递归的运行时/UI 约定已为未来的嵌套生产方做好准备。
- 现有第一方 Tool 视图初期仍集中在本包,之后可以通过键控 slot 独立迁回各自业务包。
- Tool 文案暂时复用 `ui-conversation` locale namespace。