其他
完整应用
deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
DeepSeek Harness(dsh)的桌面端外壳。
这是一个独立的 Cordis 应用:不改动上游仓库,以官方扩展方式(自定义 profile + bundle + Cordis 插件)把 dsh 跑成原生桌面应用。
状态: M0 薄壳已实施完成并通过验收(双击启动 → 窗口加载官方 Web UI;URL loopback 校验;关窗无残留;崩溃提示与日志;单例锁;NSIS 安装包)。待用户验证:配置 API Key 后的对话全链路。上游 dsh 处于 developer preview(0.1.0-rc.x),存在破坏性变更,依赖已精确锁定。
@deepseek-ai/*),不修改上游仓库。dsh:// 协议、开机自启、自动更新,全部以 Cordis 插件实现。AbstractApiClient.doFetch 预留的 IPC bridge 形态,渲染进程可经 IPC 直连树内 apiproxy,不依赖 HTTP。| 阶段 | 形态 |
|---|---|
| M0 | 薄壳:spawn 官方 CLI(dsh --profile desktop --port 0),解析 URL,开窗加载 Web UI |
| M1+ | 进程内组合:Electron main 直接 boot Cordis 树,renderer 经 IPC bridge 通信 |
apps/desktop/ Electron 入口(spawn dsh、URL 行解析、窗口、生命周期、单例、日志、profile 引导;scripts/ 打包脚本)
packages/desktop-bundle/ dsh.bundle 包(@dsh-desktop/bundle):host 插件占位 + cordis.patch.yml
packages/desktop-client/ client 插件(IPC 传输、桌面专属 UI,可选,未实现)
packages/desktop-profile/ dsh.profile 定义(template/:bundles = [dsh-base, dsh-web-app, @dsh-desktop/bundle])
dsh plugin ... add <pkg> 在 Windows 上以 spawnSync("pnpm", {shell:true}) 转发 pnpm,无 lockfile 全量 resolution 需高并发网络下载时,会触发 libuv 断言崩溃(Assertion failed: !(handle->flags & UV_HANDLE_CLOSING),退出码 -1073740791)。实测手动 spawn pnpm(不经 dsh 转发)在相同环境稳定成功,故 apps/desktop/scripts/generate-profile.mjs 采用两阶段策略:先走官方 dsh plugin add;遇网络崩溃或忽略构建失败即转本脚本手动 pnpm add --save-exact(失败重试 3 轮,间隔 5 秒);依赖进 store 缓存后再补一次官方 dsh plugin add 完成 reconcile(此时 download 0,稳定成功,且将带 dsh.bundle 声明的包追加为 bundle 层)。pnpm add 若不带版本号(如 pnpm add @deepseek-ai/dsh-web-app),pnpm 会对该包全部版本做 resolution(200+ 并发元数据请求),触发网络风暴失败(UND_ERR_DESTROYED + libuv 断言)。脚本内 @deepseek-ai/dsh-web-app 固定使用 @0.1.0-rc.6(与仓库全局版本锁定策略一致),仅 --bundle 传入的本地目录路径例外(路径不含版本,pnpm 按目录链接,无 resolution 风暴;脚本内部将该目录路径统一绝对化,避免相对 profile 目录的解析歧义)。CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。