dsh-plugin-google:Google 日历与 Tasks 的 DSH 原生插件

前言

DeepSeek Harness (DSH) 的设计理念是“一切皆插件”。在现有的 Google 日历与任务集成方案中,通常需要 Python 或 Node.js 中间服务,或者作为 MCP 服务器旁挂,且 OAuth 凭据管理较为复杂。dsh-plugin-google 是一个原生插件,旨在解决这一问题,将 Google Calendar 与 Google Tasks 直接接入 DSH,通过对话即可完成日常管理。

核心能力

该插件专注于高频场景,具备以下核心功能:

  1. 对话式 CRUD:直接通过自然语言完成日程、日历、待办与任务列表的增删改查。
  2. 日程与任务管理:支持日程的创建、修改、移动、删除,以及任务列表与任务的增删改查。
  3. 智能查询:支持忙闲查询(多日历冲突检测)与每日日程汇总(包含待办、逾期任务及时间冲突)。
  4. 自然语言解析:支持解析时间与意图,例如直接输入时间创建日程或修改时间。
  5. 零依赖与原生 OAuth:不依赖 Python 或 Node 运行时,内置 OAuth 2.0 桌面授权流程,无需额外令牌存储。

安装

使用 DSH 插件管理器进行安装:

dsh plugin --profile <profile> add dsh-plugin-google

安装后,该包自带的 cordis.patch.yml 会自动插入一条 id: google 的插件配置到你的 profile 中。

授权与配置

凭据与令牌默认存储在 $DSH_HOME 目录下,无需额外配置文件:

  • $DSH_HOME/google-oauth-client.json:Google Cloud 下载的 OAuth 客户端凭据。
  • $DSH_HOME/google-oauth-token.json:授权后由插件自动写入的访问令牌。

中国大陆网络配置:
Google API 通常无法直连,需配置代理。可在插件配置中显式指定,或让 DSH 进程继承 HTTPS_PROXY 环境变量。

重要注意事项:
如果 Google Cloud 中的 OAuth 应用处于“测试”发布状态,refresh token 会在 7 天后失效。建议在 Google Cloud 控制台将应用发布状态改为“正式”。

典型用法

安装并授权完成后,可以直接通过对话调用工具:

  • 查询日程:说「我今天有什么安排」或「我有哪些待办」,插件会返回日历与待办的汇总。
  • 创建日程:说「明天下午3点到4点,和张总开项目评审,加个腾讯会议链接」,插件会自动解析时间并创建事件。
  • 修改日程:说「把下周三的牙医改到周五上午10点」。
  • 约时间:说「帮我约一个下周一上午、双方都空的 1 小时」,插件会查询空闲时段并创建会议。

注意事项

  • 权限范围:默认请求 .../auth/calendar(含日历与事件的完整读写)与 .../auth/tasks 权限。这些权限可在配置中替换为更窄的范围。
  • 授权流程:首次使用需在对话中依次触发 google_auth_status、google_auth_begin(获取链接)、浏览器确认、google_auth_complete(完成授权)。

结语

dsh-plugin-google 提供了一套完整的 Google 生产力工具接入方案,通过 DSH 的原生能力减少了环境搭建的复杂度。相关目录与源码可访问:SkillHub 目录 或 GitHub。

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

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

小夜