deepseek-harness/packages/client
GeeeekExplorer ffdcafb45f feat(web): done dot on sessions that finished while unviewed
A session that stops running while it is not the selected session arms a
green 'done' reminder dot on its sidebar row, so the operator notices a
finished background session and returns to it; opening the session clears
the dot, and a re-run re-arms it on completion.

SessionManager owns the reminder set (a sibling of the waiting-approval
bit): a running->idle edge of a non-selected session arms it, select()
consumes it, removal prunes it, and it survives connection generations.
The bit rides SessionListEntry/SessionSummary into the workspace browser
rows, which render the existing StateDot done state (running keeps the
spinner) and label the hover card '已完成/Completed'.
2026-08-06 11:12:48 +08:00
..
connection Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-05 20:43:30 +08:00
hmr docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
locale docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
modules fix(packages): omit source publication payloads 2026-08-05 01:15:19 +08:00
runtime feat(web): done dot on sessions that finished while unviewed 2026-08-06 11:12:48 +08:00
schema-form docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
test-runtime docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
ui-command docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
ui-conversation Merge pull request #1624 from deepseek-harness/feat/pwsh-ui-parity 2026-08-05 22:20:11 +08:00
ui-goal Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-05 20:43:30 +08:00
ui-layout docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
ui-model docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
ui-models Merge remote-tracking branch 'origin/master' into worktree/open-settings-config-file 2026-08-05 15:34:51 +08:00
ui-permission Merge remote-tracking branch 'origin/master' into worktree/open-settings-config-file 2026-08-05 15:34:51 +08:00
ui-plan Merge origin/master into xjt/proofreading-active-docs-2-apply 2026-08-05 10:57:53 +08:00
ui-primitives Merge remote-tracking branch 'origin/master' into codex/fix-math-rendering 2026-08-05 20:50:50 +08:00
ui-question Merge origin/master into xjt/proofreading-active-docs-2-apply 2026-08-05 10:57:53 +08:00
ui-settings Merge remote-tracking branch 'origin/master' into worktree/open-settings-config-file 2026-08-05 15:34:51 +08:00
ui-settings-general Merge remote-tracking branch 'origin/master' into worktree/open-settings-config-file 2026-08-05 11:05:52 +08:00
ui-sidebar docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
ui-skill Merge origin/master into xjt/proofreading-active-docs-2-apply 2026-08-05 10:57:53 +08:00
ui-slash docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
ui-slots Merge origin/master into xjt/proofreading-active-docs-2-apply 2026-08-05 10:57:53 +08:00
ui-subagent Merge origin/master into xjt/proofreading-active-docs-2-apply 2026-08-05 10:57:53 +08:00
ui-theme docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
ui-trajectory Merge remote-tracking branch 'origin/master' into xtr/react-loop-simplification 2026-08-05 21:42:33 +08:00
ui-workspace feat(web): done dot on sessions that finished while unviewed 2026-08-06 11:12:48 +08:00
web docs: finish hierarchy rescan after rebase 2026-08-05 16:18:58 +08:00
web-react docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
AGENTS.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
README.i18n.yaml docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
README.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
README.zh.md docs: rescan rebased documentation hierarchy 2026-08-05 16:16:57 +08:00
tsdown.client.ts fix(packages): omit source publication payloads 2026-08-05 01:15:19 +08:00

client/ — web-GUI browser half

English | 中文

The browser side of the dsh web GUI: shell boot, browser-host communication, shared UI services, and feature plugins. Authoring rules live in AGENTS.md; the host half is host/. All except test-runtime are product packages named @deepseek-ai/dsh-client-<name>.

Package Purpose
web/ Boots the browser shell from the client entry graph.
modules/ Loads browser-side client modules.
web-react/ Connects the shell runtime to React rendering.
connection/ Maintains browser-host RPC communication and event delivery.
runtime/ Provides shared client services for sessions, workspaces, and UI composition.
hmr/ Refreshes client plugins during development.
locale/ Provides localization preferences and message dictionaries.
schema-form/ Provides schema-backed draft handling for settings editors.
test-runtime/ Provides shared repository test support for client feature packages.
ui-slots/ Defines how UI features register and compose extension slots.
ui-theme/ Applies the selected color theme.
ui-primitives/ Provides shared React controls, icons, and content renderers.
ui-layout/ Arranges the main application regions.
ui-sidebar/ Presents workspace and session navigation.
ui-workspace/ Provides workspace selection and creation surfaces.
ui-conversation/ Presents the active conversation and its input surface.
ui-goal/ Presents and manages the current goal.
ui-trajectory/ Presents alternate views of agent activity.
ui-command/ Provides session-aware command discovery and dispatch.
ui-slash/ Coordinates inline command and reference suggestions.
ui-skill/ Adds skill references to inline suggestions.
ui-subagent/ Provides subagent navigation, child transcript states, and inline references.
ui-model/ Provides model selection in conversation surfaces.
ui-permission/ Configures default permissions and switches the current session's access.
ui-plan/ Presents active plan-mode status and its exit control.
ui-question/ Presents interactive questions requested by the agent.
ui-settings/ Hosts the settings interface and its extension areas.
ui-settings-general/ Provides the general settings section.
ui-models/ Provides model-provider configuration and DeepSeek onboarding.

Each child reference owns its contract and detailed behavior. The slot system standard and web client architecture note own the cross-package composition and loading decisions.