Taylor-Cat/dsh-macos-desktop3

dsh-macos-desktop

Retro macOS (System 7 / Mac OS 9) desktop UI for DSH web: chat, files, terminal, browser, docs and knowledge base inside one pixel desktop

包名
dsh-macos-desktop
版本
0.1.0
许可证
MIT
最近更新
2026年8月16日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Taylor-Cat/dsh-macos-desktop

3. 配置文件逐行解释

3.1 package.json 关键字段

{
  "name": "dsh-macos-desktop",          // 包名 = 插件 ID = 客户端 bundle id,三处必须一致
  "type": "module",                     // 宿主半侧是 ESM(lib/index.js 用 named export)
  "main": "lib/index.js",               // 宿主半侧入口
  "exports": {
    ".": { "default": "./lib/index.js" },
    "./client": { "default": "./lib/client.js" },  // 浏览器半侧入口(client-modules 从这里读)
    "./cordis.patch.yml": "./cordis.patch.yml",    // bundle patch 导出
    "./package.json": "./package.json"
  },
  "dsh": {
    "bundle": { "patch": "./cordis.patch.yml" },   // 声明这是 bundle,patch 参与宿主组合层
    "client": { "platform": "web" }                // 声明这是 web 客户端插件,进 __DSH_BOOT__
  }
}

关于字段的一点校正:DSH 0.1.x 的 dsh.client 没有 id 字段——插件 ID 就是包名,客户端 bundle 的 id 也等于包名。字段只有 platform(必填,"web")和可选的 inject(跨包模块依赖边)、immediately。不要写 "client": { "id": "..." },那样既无效还容易和真实包名不一致。

3.2 cordis.patch.yml


# 2) 确认组合进了配置树(应能看到 dsh-macos-desktop 这一 row)
dsh --profile web --dump-config