Using mdt to manage project tasks

Francesco Puppo

使用 mdt 管理项目任务

我负责管理各种项目,但并非所有任务最终都会放进 Things——这是我默认使用的任务管理器。比如,对于所有编码项目,我喜欢把待办事项列在一个名为 TODO.md 的简单 markdown 文件中。

原因有很多,包括:

  • 其中一些任务并不重要,只是“也许要做/以后再做”的提醒
  • 如果这些任务已经以文本格式存在于项目文件夹中,让 Claude 帮我处理会更容易

我在网上找到的大多数 CLI 工具,对于我的需求来说都过于复杂1。不过,经过一番搜索,我找到了一个几乎完全符合我需求的工具:mdt

mdt 的灵感来自 t,但它提供了交互式 TUI(终端用户界面),并使用带复选框的简单 markdown 文件,因此“没那么极客”。

mdt 动图预览

它满足了所有要求:

  • 每个项目都有自己的任务列表,存储在 TODO.md 文件中
  • 它专注于当前项目:处理某个项目时,我只会看到那个项目的任务
  • 它强调添加和完成任务,而不是管理任务2
  • 看起来和用起来都很舒服
  • 我可以使用任意文本编辑器批量编辑和管理任务

不过,mdt 也有一些不足,而且已经有几年没有更新了。因此,我现在在 GitHub 上 fork 了这个仓库,开始对它进行修改,让它更适合我的工作流程,并修复一些 bug。下面是几个例子:

  • mdt "Buy milk"——直接从命令行添加任务
  • mdt -l——列出带编号和摘要的任务(会扫描子文件夹)
  • mdt -l keyword——筛选包含“keyword”的任务
  • mdt -c 2——切换任务 2 的完成/未完成状态
  • mdt -d 3——删除任务 3
  • mdt -e——用默认编辑器打开(或使用 mdt -e 2 直接跳转到任务 2)
  • mdt --clear——删除所有已完成的任务
  • 按 ESC 会返回上一级,而不是退出
  • 支持没有标题的 TODO.md 文件
  • 在未设置 $EDITOR 时,会在 macOS 上打开默认的 markdown 应用

欢迎关注这个项目并参与贡献,但请注意,我不打算再添加太多功能,因为我想坚持这一核心理念:

你很容易会想:“我只要稍微整理一下待办清单就好。”然后花 15 分钟给任务添加标签。在这 15 分钟里,你很可能本来已经可以完成其中两项了。

t 的灵感来自 j。它简单、凌乱,几乎没有任何功能,却能极其有效地做好它唯一要做的事。使用 t 时,想让待办清单变得更漂亮,唯一的方法就是完成几个该死的任务。3

脚注

  1. 参见 todo.txtTaskWarrior

  2. 如果你想让组织方式更完善,mdt 也支持多个列表和标题。

  3. sjl/t:一款面向希望完成任务、而不是整理任务的人设计的命令行待办清单管理器

原文由 Francesco Puppo 发布

本文章由 openai/gpt-5.6-luna 进行翻译