dsh-macos-calendar:DeepSeek Harness 的 macOS 日历集成插件

前言

DeepSeek Harness (DSH) 的设计理念是“一切皆插件”。在开发智能体时,让 Agent 能够直接操作宿主系统是提升效率的关键。现有的部分日历插件(如 MAGMA27/dsh-calendar)通常只能通过 Web UI 进行调度,无法真正写入系统日历。dsh-macos-calendar 是一个宿主端插件,它通过 AppleScript 和 EventKit,为智能体提供了真正的 macOS 日历集成能力,支持创建、查询和删除真实系统日历事件。

核心功能

该插件在 DSH Web 宿主进程内运行,无需每次调用都进行会话审批。

  • 列出所有日历名称 (calendar_list):只读操作,返回当前系统中所有可用的日历列表。
  • 创建事件 (calendar_add):支持设置事件标题、起止时间(格式为 YYYY-MM-DD HH:MM)、指定日历、备注以及提前多少分钟提醒。
  • 查询未来事件 (calendar_events):列出指定日历在未来 N 天内的所有事件。
  • 删除事件 (calendar_delete):根据事件摘要中的标题进行删除。使用 from 参数可以防止误删旧事件。

安装与启用

在安装前,请确保宿主环境满足以下条件:Node.js 版本 >= 22,且操作系统为 macOS。

  1. 将插件源码放置在本地路径 /path/to/dsh-macos-calendar。
  2. 执行安装命令:
    dsh plugin --profile web add /path/to/dsh-macos-calendar
  1. 重启 DSH Web 进程。
  2. 授予自动化权限:在系统设置中授予宿主进程自动化权限。路径为:系统设置 → 隐私与安全性 → 自动化 → 允许 dsh host 控制“日历”。

典型用法

在 DSH 会话中,智能体通过自然语言发起请求即可直接调用工具。例如:

“add a calendar event on 2026-10-11 at 10:00 AM for a meeting”

智能体会自动识别意图,调用 calendar_add 工具执行操作。

注意事项

  • Cordis 4 依赖声明:该插件在 Cordis 4 环境下运行,要求消费的服务必须显式声明 inject 依赖。支持两种声明形式,请保持两者以兼容不同的加载器读取方式:
    // module export form
    export const inject = ['tools'];

    // function-property form
    apply.inject = ['tools'];
  • 日期字符串解析:AppleScript 日期字符串依赖系统区域设置,可能导致解析错误(例如 ISO 字符串被解析为年份 12194)。建议始终使用 date components 构建日期,例如:
    set d to current date
    set year of d to 2026
    set month of d to 10
    set day of d to 11
    set hours of d to 10
    set minutes of d to 0

总结

该插件解决了智能体与宿主系统深度集成的痛点,让日程管理自动化。插件源码与详细文档可查阅:GitHub。

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

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

小夜