xuxAkiss/saveDDL--plugins-dsh-save-ddl ↗★ 0

@local/save-ddl

拯救 DDL:在工作区发现截止时间,集中查看、提醒并加入日历。

套件
@local/save-ddl
相容性
待驗證
版本
0.1.0
授權
MIT
最近更新
2026年11月5日

安裝

$npx -p @deepseek-ai/dsh dsh plugin --profile web add 'github:xuxAkiss/saveDDL#9a39f88116364f1eea818df01e9b111e90a28b93&path:plugins/dsh-save-ddl'

配置

plugins/dsh-save-ddl/cordis.patch.yml 中可以调整:

- insert:
    - id: save-ddl
      name: '@local/save-ddl'
      config:
        scanIntervalMs: 45000   # 两次自动扫描的最小间隔
        maxDepth: 3             # 工作区向下扫描层数
        maxFilesPerRoot: 240    # 每个工作区最多检查的文本文件数
        maxFileBytes: 262144    # 单文件最大读取字节数
        maxAgeDays: 45          # 只扫描最近多少天内修改过的文件

使用

1. 粘贴一条通知

打开「查看 DDL」,把通知粘进文本框,点「解析并加入」或按 Ctrl/Cmd + Enter。

2. 让工作区自动发现

仓库自带一个示例文件 examples/DDL示例.md。插件扫描到它后,会在右下角提示:

发现 1 个疑似 DDL · 高等数学 · HW3 · 11月10日 23:59

点「全部加入」即可。

自动提示的阈值比较保守:必须同时识别出科目和作业编号,且置信度 ≥ 0.85,避免把普通文档里的日期误报成 DDL。识别不到的内容请用粘贴或对话兜底。

如果某个文档只是示例、不希望被扫描,在文件里加一行:

围栏代码块(```)里的内容默认不参与扫描,因此 README 里的示例不会被误报。示例文件本身是普通正文,所以能被检测到。

3. 在对话里加入

帮我把「大学英语 Essay 2,12 月 1 日 18:00 截止」加入 DDL。
我有哪些 DDL?这周要交什么?

4. 导出日历

点「导出日历」下载 save-ddl.ics,可导入 Outlook / Apple Calendar / Google Calendar。事件时间使用 UTC,日历应用会自动换算成本地时间。

在 Claude Code / Codex 中使用

Claude Code、Codex 和 DSH 都支持 MCP。仓库自带一个零依赖 MCP server(packages/mcp-server/index.js)和 CLI,三者共用同一份 ddls.json:

Claude Code ─┐
Codex ───────┼── MCP stdio ──► packages/mcp-server ──► packages/store ──► ddls.json
CLI / 脚本 ──┘

DSH 插件 ─────── 直接读写 ddls.json(不走 MCP)

Codex / Claude Code 不会加载 plugins/dsh-save-ddl;它们只有 MCP server 暴露的 ddl_* 工具。DSH 插件的扫描、侧栏和右下角提示只在 DSH 里生效。两边共用数据,但运行层不同。

dueAt 可以只写日期(2026-11-30,自动按当天 23:59);模糊时间用 dueLabel + 一个提醒锚点,例如 dueAt: "2026-12-15", duePrecision: "fuzzy", dueLabel: "12月中旬"。详见 docs/agent-integration.md。

一键配置(自动写入当前机器的绝对路径):


# 只打印,不改配置
node scripts/setup-agents.mjs --print