mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
A picker showed directory names, so the settings page could only ever list `standard` / `core-web` / `cordis` and hope the reader knew what they meant. A preset may now publish display text in an optional `preset.yml` beside its composition, and the section renders cards — name, description, and the one in use — instead of rows. The file carries display text ONLY. `id` is the directory name and `trust` comes from the root a preset was discovered under, so neither is writable there: otherwise a locally authored preset could name itself into the shipped set. It is a separate file because a composition is a top-level list of plugin rows — YAML cannot carry sibling keys beside it, and a fake metadata row would hand the Loader something to load. Every read failure degrades to no metadata; absent, malformed, wrongly typed, and blank all mean the same thing and the picker falls back to the id. Presentation is not capability: a preset whose name is broken still mounts. The editor gained name and description fields above the YAML, and clearing both removes the file rather than storing a blank name.
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.