DAG总览 / 组目录 / G06 客户端 UI 包

dsh-client-ui-settings-general · @deepseek-ai/dsh-client-ui-settings-general

Layer 13G06L2 web-app
目录:ACP 协议API 网关与控制器附件启动与插件管理客户端运行时客户端 UI 包上下文压缩上下文注入核心运行时凭据与授权交付物文档处理实验特性宿主扩展反馈通道文件系统目标与计划工具守卫Hooks 扩展宿主服务交互命令作业调度LLM 适配LSP 集成MCP 协议规划模式Agent 预设代码执行运行时运行时诊断沙箱定时调度SDK 与协议会话核心会话检索设置Shell 执行技能溢出存储SSH 远程执行存储子代理子进程终端待办类型契约框架 vendorWeb 访问Webhook工作流工作区
依赖链 · 上游(该插件依赖的前驱):
依赖链 · 下游(依赖该插件的节点):
无下游(叶子/被消费端)
同一拓扑层(Layer 13,层次遍历层序):
↑ Layer 12(6 插件)Layer 13↓ Layer 14(7 插件)

插件信息

包名@deepseek-ai/dsh-client-ui-settings-general
分组G06 · 客户端 UI 包
拓扑层Layer 13(层次遍历:被依赖方先于依赖方)
源码路径packages/client/ui-settings-general
来源层L2 web-app bundle(base 之上装配)

① 实现逻辑

浏览器半渲染 `sidebar.settings` 槽位的设置外壳 SettingsRoot,并声明 settings.launcher/trigger/header/action/close/section/onboarding 等子槽(src/client/index.ts:198-212);它把 `settings.section` 与 `settings.onboarding` 台账投影为有序导航行/步骤快照(src/client/index.ts:129-172)。无主设置项也在此注册:Developer Tools 行(src/client/index.ts:76-82)、Current version 行(src/client/index.ts:84-86)、仅在 loopback 连接下启用的本地设置文档动作(src/client/index.ts:102-104、220-228)、sidebar.toggle.badge 桌面更新指示(src/client/index.ts:92-95),以及 `settings.open` 快捷键(src/client/index.ts:179-196)。node half 定义 volatile 配置 welcomeNoticeVersion 并经 settings 服务 configure(src/index.ts:15-23)。

内部结构动态 DAG(深色主题:橙色=上游依赖 · 绿色=下游依赖 · 棕色=外部seam · 蓝=本插件)
本插件 上游依赖 下游依赖 外部 seam

② 注册/提供(provides)

③ 依赖(depends_on · 上游前驱)

dsh-api-remotesE1+E2
判断 loopback 以决定是否注册本地设置文档动作
src/client/index.ts:12 type-only import + src/client/index.ts:102 ctx.remote.$host.isLoopback
dsh-client-connectionE1+E2
取连接状态用于重连入口与桌面更新徽标
src/client/shell-contract.ts:9 import type ConnectionState + src/client/index.ts:88 ctx.get('connection')
dsh-client-localeE1+E2
注册 settings 字典并投影本地化标签
src/client/index.ts:21 type-only import + src/client/index.ts:100 ctx.locale.bind(NS)
dsh-client-shortcutsE1+E2
注册设置打开命令并展示快捷键目录
src/client/shell-contract.ts:20 import type ShortcutCatalogEntry + src/client/index.ts:126 ctx.shortcuts.catalog, src/client/index.ts:179 ctx.shortcuts.register
dsh-client-ui-primitivesE1
复用共享原语关闭顶层模态并渲染设置行
src/client/index.ts:15 import closeTopModal
dsh-client-ui-rendererE1
引入 ctx.slots 合并
src/client/index.ts:22 type-only import
dsh-client-ui-sessionE1
引入会话标准 props 合并(设置外壳在会话上下文渲染)
src/client/index.ts:23 type-only import
dsh-client-ui-settingsE1+E2
设置槽声明与 configForms 镜像由 ui-settings 提供
src/client/index.ts:19 type-only import + src/client/index.ts:103 ctx.configForms.describe()
dsh-client-ui-sidebarE1
引用 sidebar 的 SlotMap 与 owner props 类型以渲染该槽占位
src/client/shell-contract.ts:15 type-only import(SlotMap 'sidebar.settings')
dsh-settingsE1+E2
Host 侧把欢迎版本配置挂到 settings 服务
src/index.ts:2 type-only import + src/index.ts:23 ctx.inject(['settings']) → child.settings.configure

④ 被依赖(dependents · 下游消费者)

无下游(叶子/被消费端)