🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

原生 macOS 桌面壳 summer-521/deepseek-harness-swift

DeepSeek Harness
summer-52142 天前有提交已提供中文文档扫描:无法判定

基于 AppKit、SwiftUI 与 WKWebView 的 DSH 原生 macOS 桌面壳。

30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add summer-521/deepseek-harness-swift
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · ui
装得上吗
实装验证未通过(runtime_add_failed),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 42 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(runtime_add_failed · 2026/11/2) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包deepseek-harness-swift-tests(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/12 15:05:35

安全扫描自动 · 静态分析源码
v2.7.0
⚪ 扫描:无法判定尚无人工评估
展开查看扫描说明与证据 ↓

已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。

  • · 包内无可扫 JS
  • · TS 源码(可能为非 JS 实现或未发布源码),无法判定
扫描于 2026/11/4(0 天前) · 范围 全包扫描(包内未声明入口) · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 设置中心
  • 插件与版本管理
展开完整介绍(87 字)↓

基于 AppKit、SwiftUI 与 WKWebView 的 DSH 原生 macOS 桌面壳,提供设置中心、DSH 版本管理、插件管理、通知和 Sparkle 应用更新。

README

由 DeepSeek 最新模型翻译生成
DSH Swift 原生外壳 基于 AppKit、SwiftUI 和 WKWebView 的原生 macOS 桌面外壳。 DSH Swift 原生外壳是 DSH Desktop 的独立 Swift 原生 macOS 实现。它负责窗口、菜单、设置页、运行时生命周期和桌面系统集成,核心 DSH Web UI 仍由官方 @deepseek-ai/dsh 运行时提供。 本项目是一个独立的 Xcode 工程,不依赖 Electron 仓库,也不需要通过 npm install 或 npm ci 准备应用构建依赖。 [!IMPORTANT] 这是非官方社区项目,当前为预发布版本。macOS 构建默认使用本地自签名证书签名(无证书时可用 DSH_CODESIGN_IDENTITY=- 回退 ad-hoc),尚未接入 Developer ID 和 notarization。首次打开如遇系统拦截,请右键选择“打开”,或前往“系统设置 → 隐私与安全性”放行。 下载 当前 Swift 原生版安装包发布在 DSH Desktop Releases。
展开完整文档(README 剩余 1 节)
DSH Swift 原生外壳

基于 AppKit、SwiftUI 和 WKWebView 的原生 macOS 桌面外壳。

DSH Swift 原生外壳是 DSH Desktop 的独立 Swift 原生 macOS 实现。它负责窗口、菜单、设置页、运行时生命周期和桌面系统集成,核心 DSH Web UI 仍由官方 @deepseek-ai/dsh 运行时提供。

本项目是一个独立的 Xcode 工程,不依赖 Electron 仓库,也不需要通过 npm install 或 npm ci 准备应用构建依赖。

[!IMPORTANT]
这是非官方社区项目,当前为预发布版本。macOS 构建默认使用本地自签名证书签名(无证书时可用 DSH_CODESIGN_IDENTITY=- 回退 ad-hoc),尚未接入 Developer ID 和 notarization。首次打开如遇系统拦截,请右键选择“打开”,或前往“系统设置 → 隐私与安全性”放行。

下载

当前 Swift 原生版安装包发布在 DSH Desktop Releases。

| 平台 | 架构 | 安装包 | 下载 |
| macOS | Apple Silicon | DMG | 下载 arm64 |

界面预览

主界面

独立设置中心

设置窗口采用接近 macOS 系统设置的布局,支持通用设置、版本管理、插件管理和关于页面。

通用设置

版本管理

插件管理

主要特性

- 原生 macOS 窗口体验:使用 AppKit 管理主窗口、交通灯、Dock 恢复、窗口拖拽、双击标题栏和独立设置窗口。
- SwiftUI 设置中心:提供通用、版本、插件和关于页面,界面跟随系统深浅色模式。
- DSH 运行时管理:应用包只内置 Node.js 和 pnpm,首次启动时从 npm Registry 下载并安装 DSH 运行时。
- DSH Runtime 更新:首次启动和后续更新均从 npm Registry 获取 DSH 插件族;更新先安装 candidate,完成 Node/control、Renderer HTTP、匿名拒绝、Browser/LAN 边界和 Web UI 验证后才确认,失败时恢复完整的 Runtime 与当前 Profile 快照,并暂时抑制失败版本。
- 插件管理:支持当前 DSH Profile 插件的安装、更新、卸载和服务重启,桥接插件随应用内置。
- 桌面通知:支持 DSH 任务完成通知,并可从通知恢复应用窗口。
- Sparkle 更新:Swift 应用包使用 Sparkle 提供检查更新和签名更新;应用版本与 DSH npm 运行时版本彼此独立。
- Apple Silicon 构建:应用、内置 Node.js 和 DMG 均为 arm64 架构。

运行架构

DSH Swift 原生外壳 ├── AppKit / SwiftUI / WKWebView │ ├── 主窗口、菜单和 macOS 系统交互 │ └── 设置与关于窗口 │ ├── DSH Service │ ├── 应用内置 Node.js │ ├── 应用内置 pnpm │ └── 从 npm 安装的 DSH 运行时 │ ├── Desktop Host Bridge │ └── 当前 Profile 的桥接插件 │ └── Sparkle └── Swift 应用包更新

构建

环境要求

- macOS 26 或更高版本
- 支持 Swift 5.9 的 Xcode
- 构建时可访问 Swift Package Manager、Node.js 和 npm Registry

构建应用与 DMG

在仓库根目录执行:

bash
bash scripts/build-app.sh
bash scripts/package-dmg.sh

默认构建并打包 Apple Silicon(arm64)版本: bash
DSH_BUILD_ARCH=arm64 bash scripts/build-app.sh
DSH_BUILD_ARCH=arm64 bash scripts/package-dmg.sh

应用包和 DMG 默认输出到 dist/。如需指定输出目录: bash
SWIFT_DIST_DIR=/path/to/output bash scripts/build-app.sh
SWIFT_DIST_DIR=/path/to/output bash scripts/package-dmg.sh

构建脚本会自动准备对应架构的 Node.js,并下载、校验固定版本的 pnpm CLI。assets/node/ 和 assets/bin/pnpm-pkg/ 是构建时生成的缓存,已通过 .gitignore 排除,不需要提交。

Xcode 工程是标准构建入口;Package.swift 仅作为辅助 Swift Package 清单保留。若要获得完整的资源准备和分架构产物,请使用 scripts/ 下的脚本。

默认用本地自签名证书(DSH Local Dev)对应用包签名,使 macOS 的 TCC 授权(如屏幕录制)在替换新包后仍保持有效;首次构建前可运行 bash scripts/setup-local-codesign-cert.sh 生成并导入该证书,或通过 DSH_CODESIGN_IDENTITY=- 回退到 ad-hoc 签名。

测试

测试包括源码/工程配置检查与动态 Swift harness;需要 Node.js、macOS 和 Xcode 命令行工具,不需要安装 npm 依赖: bash
npm test

开发工作流

- 一次完成本地 arm64 构建、打包、校验及 SHA-256:bash scripts/release-local.sh arm64;加 --dry-run 只查看流程。沿用 SWIFT_DIST_DIR;成功打包后会由原脚本清理 .build。此入口不运行测试、不安装、不发布。

版本与更新

- Swift 应用版本和构建号独立维护在 Version.xcconfig 中。
- Swift 应用版本不等同于 DSH npm 运行时版本;后者在应用内的版本管理页单独检查并升级到 npm latest、next 或用户明确选择的 alpha。启动、插件操作和 Runtime 更新共享串行事务门,避免并发重启。
- Runtime 版本目录以 npm Registry 为唯一来源;当前只接受 stable、alpha.N 与 rc.N 版本,GitHub 独有版本、beta 及任意降级暂不参与运行时选择。
- Sparkle 公钥写入 Info.plist,Ed25519 私钥只保存在发布机器的 Keychain 中,禁止提交到仓库。
- 当前更新 feed 位于 appcast-swift.xml,发布新版本时需要先构建 arm64 DMG,再使用 Sparkle sign_update 生成签名并更新 feed。
- 发布流程已脚本化:bash scripts/release-prepare.sh --notes 会依次执行 npm test → 更新 Version.xcconfig 与 README 三处引用 → 构建并打包 → 用 Sparkle 签名 → 写入 appcast(长度与签名取自同一份 DMG 字节)→ 跑版本一致性测试;加 --publish 才继续提交、打 tag、推送并创建 GitHub Release,加 --dry-run 只打印计划。

已知限制

- 当前使用本地自签名证书签名(scripts/setup-local-codesign-cert.sh 创建,DSH_CODESIGN_IDENTITY 可切换到其它身份或 - 回退 ad-hoc),未提供 Developer ID 签名和 notarization。
- 通知点击恢复隐藏主窗口等少数系统交互仍有待完善。窗口隐藏或失焦时,任务完成会发送通知;任务中途等待用户确认(工具审批)或等待回答(提问、计划确认)时同样会通知,避免应用在后台被卡住却毫无提示。
- 应用更新和 DSH npm 运行时更新是两套独立流程。
- 当前只提供从已安装 Runtime 向 npm latest/next/alpha tag 的单向升级;默认仅通知不自动安装,next 和 alpha 只能由用户明确选择;更新失败的版本会抑制到 npm tag 变化、应用升级或用户手动重试;旧版本会保留到新 Runtime 连续两次成功启动后自动清理,暂不提供任意版本切换、卸载或降级入口。
- App 默认使用独立的 profiles/swift-desktop,终端 dsh web 继续使用 profiles/web;旧版 App 的 profiles/desktop 会在首次启动时安全复制到新目录;通用设置中切换到 web 后,两者会共享插件和依赖,升级或插件变更可能影响终端启动。
- web Profile 下禁止 DSH Runtime 版本升级和自动更新;从 web 切回 swift-desktop 时,应用会先停止服务,再移除 web Profile 中的 dsh-desktop-host 与 @deepseek-ai/dsh-host-webserver,避免继续污染终端环境。
- 目前仅提供 macOS 26+、Apple Silicon(arm64)构建。
- 同一用户会话只允许运行一个实例:状态文件、事务快照、服务记录和端口都位于 ~/Library/Application Support/DSH,而该目录不随 DSH_HOME 隔离。重复启动会被拒绝(LSMultipleInstancesProhibited + 应用内的 flock 实例锁,见 Sources/Service/DshInstanceLock.swift);锁路径被非普通文件占用(目录、符号链接等)、锁调用异常,或锁文件/应用数据目录不可写(权限、只读卷、磁盘空间)时,都会弹窗说明原因并停止启动——锁文件级的失败并不代表同一目录的状态文件不可写,因此不存在“无锁降级启动”这种安全模式。测试 harness 使用独立的 DSH_TEST_APP_SUPPORT 根,仍可并行运行。
- Runtime 升级完成到下次启动之间是“已确认待结算”窗口:此期间插件安装/更新/卸载与 Profile 切换会保持禁用(普通设置不受影响),重启一次 DSH 后即可继续——这样可避免升级回退时静默撤销此间改动的插件,或让清理悬置。该门禁在插件操作真正取得运行时锁之后会再检查一次,因此排队期间进入该窗口的操作会被拒绝,而不是静默生效后再被回退。

许可证

本项目采用 MIT License。DSH 运行时在首次启动时从 npm Registry 获取,其版权和许可证归对应上游项目所有。

本项目与 DeepSeek 不存在隶属或官方合作关系。DeepSeek Harness 及相关名称的权利归其各自所有者所有。
预览分享卡片长什么样 ↓summer-521/deepseek-harness-swift
分享 · DeepSeek Harness Hub
summer-521/deepseek-harness-swift

基于 AppKit、SwiftUI 与 WKWebView 的 DSH 原生 macOS 桌面壳。

这是你的仓库?认领条目

回到顶部