Files
deepseek-harness/packages/client/README.zh.md
T
Yichen Jiang eab0aeb9db feat(web): list background tasks in the session header
The task registry has run every background bash, pwsh, pty-send, and
one-shot subagent since it landed, but only the model could read it: a
human at the Web client could not see that a build was running, tell a
finished task from a stuck one, or find its outcome anywhere but the
`run_in_background` tool card that printed an id and never updated.

Task state now reaches the browser as one whole-snapshot `session/tasks`
mux frame per session, pushed at every registry commit that changes what
that session can see. `TaskService` gains `onTasksChanged`, which is
owner-granular because owner-disposal removal is a change no per-task
record can express. The carrier reads the exact owner the listener hands
it, so a push stays correct while that scope tears down, and reads the
baseline through the non-resuming `ctx.agents.get` so listing never
revives a cold session. The client keeps a last-wins mirror on
`SessionListState`, and a new `dsh-client-ui-task` package renders it
beside the subagent catalog — rendering nothing at all until the session
has a task, so an ordinary conversation grows no new chrome.

Streamed per-task output and human-initiated cancellation are separate
phases; the note records why neither has to undo this channel, and why
no Web path may call the consuming `ctx.tasks.read()`.
2026-08-08 23:29:41 +08:00

3.4 KiB

client/ — web GUI 浏览器半侧

English | 中文

dsh web GUI 的浏览器侧:shell 启动、浏览器与宿主通信、共享 UI 服务和特性插件。编写规则见 AGENTS.md;宿主半侧是 host/。除 test-runtime 外,均为命名成 @deepseek-ai/dsh-client-<name>产品包。

目的
web/ 从客户端条目图启动浏览器 shell。
modules/ 加载浏览器侧客户端模块。
web-react/ 连接 shell 运行时与 React 渲染。
connection/ 维护浏览器与宿主之间的 RPC 通信和事件传递。
runtime/ 为会话、Workspace 和 UI 组合提供共享客户端服务。
hmr/ 在开发期间刷新客户端插件。
locale/ 提供本地化偏好与消息词典。
schema-form/ 为设置编辑器提供 schema 驱动的草稿处理。
test-runtime/ 为客户端特性包提供共享的仓库测试支持。
ui-slots/ 定义 UI 特性注册和组合扩展 slot 的方式。
ui-theme/ 应用所选颜色主题。
ui-primitives/ 提供共享 React 控件、图标和内容渲染器。
ui-layout/ 排列应用的主要区域。
ui-sidebar/ 展示 Workspace 与会话导航。
ui-workspace/ 提供 Workspace 选择与创建界面。
ui-conversation/ 展示当前会话及其输入界面。
ui-tool/ 编排 Tool 调用树和按 Tool 键控的视图。
ui-goal/ 展示和管理当前目标。
ui-trajectory/ 提供 agent(智能体)活动的其他视图。
ui-command/ 提供会话感知的命令发现与分发。
ui-slash/ 协调内联命令和引用建议。
ui-skill/ 向内联建议添加 skill(技能)引用。
ui-subagent/ 提供 subagent 导航、子会话记录状态和内联引用。
ui-task/ 在会话标题栏列出当前会话的后台任务。
ui-model/ 在会话界面中提供模型选择。
ui-permission/ 配置默认权限并切换当前会话的访问模式。
ui-plan/ 展示生效中的 plan mode 状态及其退出控件。
ui-question/ 展示 agent 请求的交互式问题。
ui-settings/ 承载设置界面及其扩展区域。
ui-settings-general/ 提供常规设置分区。
ui-models/ 提供模型提供方配置与 DeepSeek 配置引导。

每个子文档负责自身的契约和详细行为。slot 系统标准Web 客户端架构 Agent Note负责跨包组合与加载决策。