DSH Desktop 的理念是「一切皆插件」。开发者在调试或运行智能体时,常遇到权限请求需要切回主窗口、对话需要打开特定工具打断工作流的场景。贾维斯是一款常驻桌面的悬浮窗助手,也是一只有状态的桌面宠物。它以 Metal 粒子光球为载体,允许用户快速审批权限、使用全局快捷键随时唤出对话面板,实现桌面层面的交互闭环。该项目由 CroissanTTs 维护,当前版本为 0.7.1,采用 MIT 许可证。
核心功能¶
权限审批
当 DSH 弹出权限请求时,悬浮窗会出现审批卡片。面板与 DSH 主窗口竞答,先到者生效。支持一键选择「允许 / 拒绝 / 总是允许(此工作区)」。
悬浮式对话
默认全局快捷键 ⌃⌥J 可唤出快速输入条,随时开始对话。对话记录内嵌在面板中,展开输入区即可查看。
语音问候
启动时贾维斯会出声打招呼。问候语与发音人可配置。悬停光球可静音。
桌面形象
本体为 Metal 粒子光球。具备五种状态动效(待机、思考、说话、等待、出错)。支持贴边融变收纳,悬停唤醒。
安装与启用¶
插件提供源码安装方式。宿主环境建议 Node.js 22.18+,面板需要 macOS 14+ 与 Swift 6 工具链。
- 从仓库根目录构建项目:
npm ci
npm run build
(cd macos && ./build.sh)
- 在你使用的 DSH profile 的
package.json中合并以下条目(把路径换成此仓库的绝对路径):
{
"dependencies": {
"dsh-harness-jarvis": "link:/absolute/path/to/dsh-harness-jarvis"
},
"dsh": {
"profile": { "bundles": ["dsh-harness-jarvis"] }
}
}
- 在 profile 目录执行
pnpm install解析link:依赖。
典型用法¶
重启 DSH 后,屏幕上会出现悬浮光球。按 ⌃⌥J 唤出输入条即可开始对话。当 DSH 弹出权限审批时,面板会出现审批卡片,点击即可处理。悬停光球可控制声音;展开输入区可查看对话记录。
适用场景与注意¶
本插件原生面板仅面向 macOS 14+。安全审查与真机验收未完成,暂不声称已通过发布安全验收。
数据存储
审批记录、日志与语音缓存默认保存在本机 ~/.dsh/jarvis,没有云端存储。
隐私与权限
本机存储不等于离线处理:所配置的模型服务会收到对话上下文,内置 edge-tts 会把播报文本发给 Microsoft 语音服务。插件不申请 danger-full-access;快捷键走 Carbon RegisterEventHotKey,不需要辅助功能按键监听;当前没有麦克风录音。
结语¶
贾维斯旨在通过悬浮窗与桌面宠物形态,降低 DSH 日常交互中的切换成本。它不改变 DSH 的核心逻辑,而是提供一种常驻的、可视化的交互层。相关文档与源码可在其目录页与 GitHub 仓库查看。