dsh-plugin-pomodoro:DSH 悬浮番茄钟与看板任务管理

前言

在 DeepSeek Harness(DSH)里长时间写代码、调智能体或跟模型对话时,专注时段很容易被消息和标签切换打断;单独开一个系统番茄钟或 Trello,又和当前工作区脱节,专注时长也很难记到具体任务上。社区插件 dsh-plugin-pomodoro(维护者 atzx)把番茄钟和类 Trello 看板放进 DSH 客户端:计时器以悬浮层叠在应用之上,看板数据落在本机 SQLite,专注时间可记到当前卡片。插件不调用模型,不提供 tools、prompts 或会话事件,属于纯浏览器客户端加小型宿主存储的组合。

这是什么

dsh-plugin-pomodoro 是面向 DSH 的番茄钟与任务看板插件(分类:客户端;当前 package 版本 0.2.1,许可证 MIT)。一半在浏览器里渲染悬浮计时器与看板 UI,一半在宿主进程里用 SQLite 持久化看板并通过五条需认证的路由暴露 API。目录页:SkillHub - atzx/dsh-plugin-pomodoro;源码与说明:GitHub - atzx/dsh-plugin-pomodoro。

核心功能

专注计时器

  • 在 shell 悬浮层显示胶囊状倒计时(阶段与脉冲);展开为卡片,含环形进度、周期圆点、开始/暂停/跳过/重置与设置。
  • 默认周期:专注 25 分钟、短休息 5 分钟、长休息 15 分钟,每 4 个专注块后长休息;可在 Plugins 配置页改默认值。
  • 快捷键:Space 开始/暂停,S 跳过,R 重置,Esc 收起,B 打开/关闭看板。
  • 可选提示音、桌面通知与行内完成横幅;时钟使用绝对截止时间,重载、标签节流或休眠不致漂移。

看板(Trello 风格)

  • 自定义列表(默认 To Do / Doing / Done):内联重命名、拖拽排序、标记完成列、删除时任务可重分配。
  • 卡片支持优先级、彩色标签、截止日期、预估、备注、子任务、已计专注时长与番茄数;完整创建表单与任务抽屉后续编辑。
  • 卡片在列间拖拽;列表把手可排序列;另有「移动到列表」菜单与聚焦卡片时的 Alt+←/→/↑/↓。
  • 侧栏智能分区(今日、逾期、本周等)与四项指标(预估、待完成、已用、已完成);搜索、标签过滤与多种排序;整板 JSON 导出/导入(带确认)。

专注时长入账

  • 对某张卡片开启 Focus 或将计时器绑定任务后,真实专注时间(暂停、重置、跳过、换任务、阶段结束都会结算片段)记入该任务;完成一个专注阶段计 1 个番茄。
  • 入账带 creditId 幂等;宿主不可达时本地排队,重载或重试不会重复计数;应用关闭期间结束的阶段会在下次加载时回放。

安装与启用

插件声明了 dsh.bundle.patch,安装命令会同时加入依赖与 dsh.profile.bundles 条目。README 给出的示例如下(路径需换成你本机克隆或解压后的插件目录;不要凭仓库名自行拼接 dsh plugin add github:...):

APP_CLI="/Applications/DeepSeek Harness.app/Contents/Resources/runtime/cli/bin/dsh"
"$APP_CLI" plugin --profile desktop add "link:/path/to/pomodoro-plugin" --offline

安装后需重启 DeepSeek Harness 一次,才能在桌面窗口加载插件。更完整的步骤、回滚与日志位置见仓库内 docs/install.md。

在 DSH 侧栏打开 Plugins → Installed plugins → dsh-plugin-pomodoro:

  1. Profile 级:bundle 总开关与 Component 开关(会写入 profile 的 cordis.patch.yml 中 id: pomodoro / disabled: true,支持带 HMR 的 live 卸载)。
  2. Plugin 级:Configure 可隐藏/显示计时器 widget 并编辑计时器默认值;看板数据不受这些开关影响。

可选宿主配置(写入 loader 的 config)示例:

- insert:
    - id: pomodoro
      name: dsh-plugin-pomodoro
      config:
        dbPath: /custom/path/board.sqlite   # 默认: $DSH_HOME/pomodoro/board.sqlite
        storageKey: dsh-plugin-pomodoro:state:v1
        defaults:
          focusMin: 25
          shortBreakMin: 5
          longBreakMin: 15
          longBreakEvery: 4
          autoStartBreaks: true
          autoStartFocus: false
          sound: true
          notify: true

典型用法

  1. 启用插件并重启 DSH 后,在界面中看到悬浮番茄钟胶囊;需要时按 B 或从计时器展开看板。
  2. 在看板创建或打开任务卡片,对任务执行 Focus,让计时器与卡片关联;按番茄周期工作,暂停与跳过的片段会按规则结算。
  3. 用侧栏分区与搜索/filter 管理待办;需要备份时用看板菜单做 JSON 导出,迁移时再导入并确认。

数据位置(便于自查与备份):

  • 看板:SQLite $DSH_HOME/pomodoro/board.sqlite(WAL;可用 config.dbPath 覆盖),每日轮转备份 board.sqlite.bak 至 .bak.7。
  • 各窗口看板 UI 状态 → localStorage;计时器状态与 widget 偏好 → localStorage(键名如 dsh-plugin-pomodoro:state:v1 等);待入账专注队列 → :pending-credits:v1。

适用场景与注意

适合希望在 DSH 桌面客户端内完成番茄专注、并把时长记到具体任务上的开发者;需要离线本机看板、不经过模型管线时也匹配设计目标。

安装前请自行审阅 源码仓库 与 MIT 许可证。插件宿主部分以当前 dsh 进程权限运行并读写本机 SQLite;仅在你信任的来源安装。社区目录 SkillHub 为独立生态站点,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-plugin-pomodoro 把悬浮番茄钟与 SQLite 看板收进 DSH 客户端,专注时间可对任务幂等入账,且不触及模型与 provider。进一步了解功能与验证命令见 GitHub README;从目录安装与归类信息见 SkillHub 插件页。

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

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

小夜