dsh-mac-companion: 连接 DSH 与 macOS 本地能力

前言

在 DeepSeek Harness (DSH) 的使用场景中,开发者常在 WSL 等类 Linux 环境下操作,但目标系统是 macOS。直接通过命令行操作 macOS 的系统通知、快捷指令或剪贴板往往比较繁琐。dsh-mac-companion 插件解决了这一跨系统调用的问题,它作为中间件,让运行在 WSL 中的 DSH 能够通过 HTTP 调用 Mac 上的守护进程,从而接入 Mac 的本地能力。

是什么

dsh-mac-companion 是一个 DeepSeek Harness 插件,旨在充当 macOS Companion Daemon 的客户端。它允许 DSH 通过 HTTP 协议与 Mac 上的守护进程通信,实现对系统通知、快捷指令执行以及剪贴板读写等功能的控制。该插件是 dsh-wsl-kit 的可选伴侣组件,并非包含在标准的安装脚本中。

核心功能

插件提供了以下核心能力:
* mac_companion_status:通过 GET /v1/health 检查 Companion 守护进程的健康状态。
* mac_notify:向 Mac 系统发送通知。
* mac_run_shortcut:在 Mac 上执行快捷指令。
* mac_clipboard_read:读取 Mac 剪贴板中的文本内容。
* mac_clipboard_write:向 Mac 剪贴板写入文本内容。

安装与启用

在 WSL 环境中,先通过插件管理命令安装该插件:

dsh plugin --profile web add github:173787247/dsh-mac-companion

安装完成后,需要在 Mac 上启动 Companion 守护进程。请确保 Mac 上已安装 Python 3,并在终端中运行:

python3 companion/server.py --port 18765 --token 'your-secret'

最后,在 WSL 中配置环境变量以连接到 Mac:

export DSH_MAC_COMPANION_URL=http://<mac-ip>:18765
export DSH_MAC_COMPANION_TOKEN=your-secret

典型用法

经过上面的步骤,DSH 即可调用上述功能。例如,在 DSH 的配置或脚本中,通过指定对应的工具名称即可触发:
* 检查状态:调用 mac_companion_status。
* 执行通知:调用 mac_notify。
* 运行快捷指令:调用 mac_run_shortcut。
* 读写剪贴板:调用 mac_clipboard_read 或 mac_clipboard_write。

适用场景与注意

  • 前置要求:DSH 版本需 ≥ 0.1.2。
  • 确认机制:调用 mac_run_shortcut 和 mac_clipboard_write 时,必须设置参数 confirm=true 以触发系统确认。
  • 替代方案:如果仅用于 SSH CLI 场景,建议直接使用 dsh-remote-ssh 插件。
  • 来源说明:该插件位于 GitHub 仓库,遵循 MIT 许可证。由于它不是 install.sh 的一部分,需要手动安装。

总结

dsh-mac-companion 提供了一种通过 DSH 桥接 macOS 本地能力的方案。通过简单的 HTTP 配置和守护进程启动,开发者可以方便地在 WSL 中控制 Mac 的通知、快捷指令和剪贴板。相关代码与文档位于 GitHub。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜