packages/activity/* and packages/api/activity-controller are removed. The web roster is the session control stream's jobs frames alone; per-job output observation rides session.observeJob and the client ctx.jobOutput service. ui-activity returns to its upstream name ui-jobs and renders the single roster — a row is expandable exactly when its job declared a record (outputTotal present). Composition rows, dependency-policy exemptions, tsconfig aliases and references, generated catalogs, and the docs pages follow; the activity subsystem page is deleted and the jobs page gains the record contract. The superseding Agent Note records the decision and points the three prior notes at it.
6.9 KiB
6.9 KiB
description, kind
| description | kind |
|---|---|
| web GUI 浏览器侧的包映射:外壳启动、浏览器与宿主通信、共享客户端服务、本地化、开发重载与 UI 功能插件。 | package-group |
client/ — Web GUI 浏览器侧
English | 中文
概述
client/ 组运行 dsh web GUI 的浏览器侧:它启动 web 外壳、加载浏览器侧插件模块、维持浏览器与宿主之间的 RPC 与事件投递,并提供渲染应用所需的共享客户端服务与 UI 功能插件。UI 功能通过 slot 系统组合——每个插件填充已声明的扩展 slot,携带类型化 props 与 store,由外壳渲染组装后的整棵树。本组所有包均为产品包,名为 @deepseek-ai/dsh-client-<name>;服务于页面的宿主半侧位于 host/。编写规则见 AGENTS.md,模块图、slot 模型与对象层的说明见下方相关文档。
目录
包
内核包负责启动与服务于页面,UI 功能包负责呈现页面。各包的 README 拥有自己的约定与配置。
| 包 | 职责 | ctx 键 |
|---|---|---|
web/ |
启动浏览器外壳 | — |
modules/ |
加载浏览器侧客户端模块 | ctx.clientModules / ctx.modules |
connection/ |
维护浏览器与宿主之间的 RPC 通信与事件投递 | ctx.connection |
store/ |
提供不依赖 React 的 observable 与 snapshot-store 原语 | — |
hmr/ |
在开发期间刷新客户端插件 | — |
locale/ |
提供本地化偏好与消息词典 | ctx.locale |
test-runtime/ |
为客户端功能包提供共享的仓库测试支持 | — |
ui-renderer/ |
将 slot 数据绑定到 React,并挂载组装完成的应用 | ctx.uiRenderer |
ui-slots/ |
定义 UI 功能注册与组合扩展 slot 的方式 | — |
ui-session/ |
把 Session Controller 状态适配为标准 Slot source 与 hook | — |
ui-theme/ |
应用所选颜色主题 | — |
ui-primitives/ |
提供共享 React 控件、图标与内容渲染器 | — |
ui-attachment/ |
注册输入框与消息图片的附件呈现 | — |
ui-layout/ |
排列应用的主要区域 | — |
ui-sidebar/ |
展示工作区与会话导航 | — |
ui-brand-official/ |
用官方名称与标记填充通用浏览器品牌 slot | — |
ui-workspace/ |
提供工作区选择与创建界面 | — |
ui-conversation/ |
展示当前对话及其输入界面 | — |
ui-chat/ |
投影并渲染 Chat 对话 target | — |
ui-approval/ |
展示批准请求并返回用户决策 | — |
ui-tool/ |
编排工具调用树与按工具键控的视图 | — |
ui-workflow-run/ |
把持久工作流运行回放为嵌套对话折叠项 | — |
ui-goal/ |
展示与管理当前目标 | — |
ui-trajectory/ |
提供 agent(智能体)活动的其他视图 | — |
ui-commands/ |
提供会话感知的命令发现与分发 | — |
ui-input-trigger/ |
协调内联命令与引用建议 | — |
ui-skill/ |
向内联建议添加 skill(技能)引用 | — |
ui-reference/ |
统一的 Web @file / @session 引用 source |
— |
ui-subagent/ |
提供 subagent(子智能体)导航、子级 transcript(文本记录)状态与内联引用 | — |
ui-jobs/ |
列出本会话的后台任务,并提供按需展开的流式输出面板 | — |
ui-schedule/ |
在只读标题栏目录中列出当前 Session 的活动提醒 | — |
ui-model-selection/ |
在对话界面中提供模型选择 | — |
ui-permission-presets/ |
配置默认权限并切换当前会话的访问模式 | — |
ui-plan/ |
展示生效中的 plan mode 状态及其退出控件 | — |
ui-settings-plugins/ |
拥有“插件”设置分区、其标签页扩展点与可配置的宿主平面插件卡片 | — |
ui-user-questions/ |
展示 agent 请求的交互式问题 | — |
ui-agent-preset/ |
选择会话的 agent 预设并编写预设组合 | — |
ui-settings/ |
承载设置界面及其扩展区域 | — |
ui-settings-general/ |
提供常规设置分区 | — |
ui-settings-models/ |
提供模型提供方配置与 DeepSeek 引导 | — |
ui-settings-plugin-inventory/ |
向“插件”设置贡献只读的 Host Loader 清单标签页 | — |
ui-deliverables/ |
生成已产出文件的轮次尾部与可点击的最终响应文件引用 | — |
ui-message-feedback/ |
向助手消息操作条贡献逐消息反馈控件 | — |
ui-directory-picker-browse/ |
面向工作区目录流程的应用内目录浏览界面 | — |
ui-directory-picker-native/ |
驱动宿主 OS 选择器的原生目录选择界面 | — |
相关文档
先从子系统参考与两份拥有跨包组合决策的 Agent Note 读起,再看服务于本页的宿主半侧。
- 客户端模块子系统——web 插件表:
dsh.client声明、启动图协议与 bundle 路由。 - slot 系统标准——权威 slot 模型:注册、props 份额与 store。
- web 客户端架构 Agent Note——加载链、对象层与客户端服务。
- 宿主组地图——服务于本浏览器半侧的宿主半侧。
开发备注
维护者的工作上下文——点击展开
无。