插件目录 / Developer / dsh-synology-calendar
dsh-synology-calendar
已验证 · 实测可装 fatatalia
功能简介
dsh 群晖日历插件:CalDAV 工具 + 配置页,随 dsh web 启停
可用 — 实测通过,早期项目
dsh 群晖日历插件:CalDAV 工具 + 配置页,随 dsh web 启停 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-synology-calendar — 群晖日历插件
Synology Calendar(CalDAV)接入 dsh:calendar_* / todo_* 共 9 个工具(查询、创建、更新、删除日程与待办),随 dsh web 启停,零 dsh 框架改动。
功能
- CalDAV 客户端(
lib/caldav.mjs):PROPFIND / REPORT / PUT / DELETE / GET + iCal 解析/构建,零框架依赖(仅全局fetch/crypto/Buffer) - 工具:
calendar_query_events/calendar_create_event/calendar_update_event/calendar_delete_event/todo_list/todo_create/todo_update/todo_complete/todo_delete - 配置页:web UI Settings → 群晖日历(CalDAV URL / 用户名 / 密码 / 日历表)
- 凭据安全:密码存 dsh credentials(
.credentials.yaml,0600),不落 settings
目录
dsh-synology-calendar/
├── index.js # host 插件:CalDAV 工具 + Typert remote(配置/密码读写)
├── client.js # 浏览器 bundle:Settings → 群晖日历 配置页
├── lib/caldav.mjs # CalDAV HTTP 客户端 + iCal 解析/构建
├── cordis.patch.yml # bundle patch(插入 host 插件行)
└── package.json
挂载:web profile(~/.dsh/profiles/web/)package.json → dependencies["dsh-synology-calendar"] = "link:<project>/dsh-synology-calendar",bundles 列表含 dsh-synology-calendar。
配置
$DSH_HOME/settings.yaml 的 calendar: 段(可在配置页编辑):
calendar:
url: "https://<synology-host>/caldav.php/"
username: "user@example.com"
calendars: {} # 日历别名表,可选
密码经配置页保存到 dsh credentials(ref: CALDAV_PASSWORD)。
开发要点
- 新插件项目必须建依赖软链(否则 import
@deepseek-ai/*报 ERR_MODULE_NOT_FOUND):mkdir -p node_modules && ln -sfn /usr/local/lib/node_modules/@deepseek-ai/dsh/node_modules/@deepseek-ai node_modules/@deepseek-ai - 改代码后重启 web 生效(web profile 的 HMR 已禁用)
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-synology-calendar」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:fatatalia/dsh-synology-calendar Headless(CLI)profile:
dsh plugin --profile headless add github:fatatalia/dsh-synology-calendar 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。