AS17514
dsh-cc-suite
No description
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 16, 2026
- Updated
- Aug 16, 2026
Introduction
dsh-cc-suite — DSH 功能补齐插件套件
基于 cc-haha 功能调研与 DSH 运行时差距分析(见 GAP-ANALYSIS.md)开发的 6 个动态 Cordis 插件,
每个插件一个目录,host.js + client.js + README.md 可直接作为持久化安装的源码基线。
插件清单
| 插件 | 目录 | 运行面 | 对应 cc-haha 功能 | 当前会话安装 |
|---|---|---|---|---|
| 活动面板 | activity-panel/ | host+client | Session activity panel | actp-1/pkg-8 ✅ |
| 改动审查与撤销 | workspace-diff/ | host+client | Review edits file by file / undo | wsdif-2/pkg-16 ✅ |
| 模型调用追踪 | model-trace/ | host+client | Model trace | mtrc-3/pkg-7 ✅ |
| 静态预览 | static-preview/ | host+client | Built-in browser preview(基础形态) | prevw-4/pkg-17 ✅ |
| 技能市场 | skill-market/ | host+client | Skill marketplace | sklmk-5/pkg-10 ✅ |
| 多模型接入 | byom/ | host+client | Bring your own model | byom-6/pkg-6 ✅ |
| 配色主题 | theme-pack/ | client | Six colour themes(五套风格) | themp-7/pkg-15 ✅ |
| 工作区记忆 | workspace-memory/ | host+client | Memory system(按项目,折叠卡片) | wsmem-8/pkg-18 ✅ |
| 技能斜杠命令 | skill-commands/ | host | 技能斜杠调用(/grill-me 等) | skcmd-9/pkg-19 ✅ |
开发方法(依据 dsh-plugin-development SKILL v3.1.0)
- 先判断最小运行面:UI 类(面板/设置页/视图 tab)走 client slot;数据聚合与外部能力走 host;
host 能力需要 Web 可视化的走 host+client(Package 私有 RPC
harness.handle/host.call) - 所有契约取自运行时 Inspect 目录(Service/Event/Slot/Builtin)与 checkout 源码
(
packages/{skill,llm,web,host/webserver,shell,fs}/)中的类型定义,不猜字段 - 只提取标量叶子构造自有 JSON,不序列化内部活动对象;所有注册经
ctx.effect()/ctx.on()归当前 fiber,stop/update 自动清理 - 客户端纯
React.createElement,样式经styles.insert,主题颜色用var(--ds-*, fallback)
安装方式
立即生效(本次会话,已全部完成)
逐个 cordis_define + cordis_run,Client 半首次运行在 GUI 授权。
持久安装(重启后仍生效,二选一)
- 打包为 bundle:按 SKILL §3.2/§3.3 补
package.json(dsh.bundle.patch)与cordis.patch.yml顶层数组后,dsh plugin --profile web add <path>。 当前host.js/client.js是函数体源码,转 TS 包时按 host/client 双 tsc program 拆分(SKILL §6.1)。 - agent preset 挂载:把每个插件的行加入
${DSH_HOME}/.dsh/.agent-presets/<id>/cordis.yml(动态会话插件本身不跨进程存活;此路径需先完成上面的打包)。
已知限制(v1,按插件记录在各自 README)
- 动态插件均为进程内运行时:进程重启后需重新定义/运行;源码即持久化基线
- workspace-diff:新建文件撤销=写空;记录上限 200 条
- static-preview:无登录态/自动刷新,仅静态资源
- skill-market:安装为运行时技能,重启失效
- byom:非流式、无归因头、密钥在 curl 命令行可见
- model-trace:仅记录插件运行后的实时请求(历史在会话日志,可由 sessionQuery 补,留作 v2)
验证清单(SKILL §8 裁剪)
- 6/6 插件
cordis_run成功,currentPackageId已置位 - GUI 冒烟:侧栏「活动」开关+浮层;「改动」「预览」标签页;设置页「技能市场」「模型追踪」「BYOM 模型」
- 功能冒烟:write 一次文件→改动页出现 diff→撤销;发送消息→模型追踪出现记录;技能市场安装一个技能; BYOM 填本地端点→发现模型→连通测试
- 生命周期:
cordis_stop/ update 后对应 UI 与路由消失