Files
deepseek-harness/packages/client
Yichen Jiang f47b18d2f6 Merge remote-tracking branch 'origin/master' into worktree/session-turn-nav-styling-7715ae
# Conflicts:
#	packages/client/ui-chat/README.i18n.yaml
#	packages/client/ui-chat/README.md
#	packages/client/ui-chat/README.zh.md
2026-08-26 10:05:44 +08:00
..

description, kind
description kind
Package map for the web GUI browser half: shell boot, browser-host communication, shared client services, localization, development reload, and the UI feature plugins. package-group

client/ — web-GUI browser half

English | 中文

Summary

The client/ group runs the browser half of the dsh web GUI: it boots the web shell, loads browser-side plugin modules, keeps browser-to-host RPC and event delivery alive, and provides the shared client services and UI feature plugins that render the application. UI features compose through the slot system — each plugin fills declared extension slots with typed props and stores, and the shell renders the assembled tree. All packages here are product packages named @deepseek-ai/dsh-client-<name>; the host half that serves the page lives in host/. Authoring rules live in AGENTS.md, and the module graph, slot model, and object layer are documented in the related notes below.

Table of Contents


Packages

The kernel packages boot and serve the page; the UI feature packages present it. Each package README owns its contract and configuration.

Package Role ctx key
web/ Boots the browser shell
modules/ Loads browser-side client modules ctx.clientModules / ctx.modules
connection/ Maintains browser-host RPC communication and event delivery ctx.connection
store/ Provides React-free observable and snapshot-store primitives
hmr/ Refreshes client plugins during development
locale/ Provides localization preferences and message dictionaries ctx.locale
test-runtime/ Shared repository test support for client feature packages
ui-renderer/ Binds slot data to React and mounts the assembled application ctx.uiRenderer
ui-slots/ Defines how UI features register and compose extension slots
ui-session/ Adapts Session Controller state into standard Slot sources and hooks
ui-theme/ Applies the selected color theme
ui-primitives/ Provides shared React controls, icons, and content renderers
ui-attachment/ Registers composer and message-image attachment presentation
ui-layout/ Arranges the main application regions
ui-sidebar/ Presents workspace and session navigation
ui-brand-official/ Fills the generic browser-brand slots with the official name and marks
ui-workspace/ Provides workspace selection and creation surfaces
ui-conversation/ Presents the active conversation and its input surface
ui-chat/ Projects and renders the Chat conversation target
ui-approval/ Presents approval requests and returns user decisions
ui-tool/ Composes Tool call trees and keyed per-Tool views
ui-workflow-run/ Replays durable workflow runs as nested chat disclosures
ui-goal/ Presents and manages the current goal
ui-trajectory/ Presents alternate views of agent activity
ui-commands/ Provides session-aware command discovery and dispatch
ui-input-trigger/ Coordinates inline command and reference suggestions
ui-skill/ Adds skill references to inline suggestions
ui-reference/ Unified Web @file / @session reference source
ui-subagent/ Provides subagent navigation, child transcript states, and inline references
ui-jobs/ Lists this session's background jobs in the conversation header
ui-model-selection/ Provides model selection in conversation surfaces
ui-permission-presets/ Configures default permissions and switches the current session's access
ui-plan/ Presents active plan-mode status and its exit control
ui-settings-plugins/ Owns the Plugins settings section, its tab extension point, and configurable host-plane plugin cards
ui-user-questions/ Presents interactive questions requested by the agent
ui-agent-preset/ Selects a session's agent preset and authors preset compositions
ui-settings/ Hosts the settings interface and its extension areas
ui-settings-general/ Provides the general settings section
ui-settings-models/ Provides model-provider configuration and DeepSeek onboarding
ui-settings-plugin-inventory/ Contributes the read-only Host Loader inventory tab to Plugins settings
ui-deliverables/ Produces the produced-files turn tail and clickable final-response file references
ui-message-feedback/ Contributes per-message feedback controls to the assistant-message action strip
ui-directory-picker-browse/ In-app directory browsing surface for the workspace directory flow
ui-directory-picker-native/ Native directory-picker surface driving the host's OS chooser

Start with the subsystem reference and the two notes that own the cross-package composition decisions, then the host half that serves this page.

Dev Note

Working context for maintainers — click to expand

None.