名称: microsoft-todo
描述: "通过 todo CLI 管理 Microsoft To Do 任务。适用于用户需要添加、列出、完成、删除任务,管理子任务(步骤)、笔记或组织任务列表的场景。"
主页: https://github.com/underwear/microsoft-todo-cli
元数据:
{
"openclaw":
{
"emoji": "✅",
"requires": { "bins": ["todo"] },
"install":
[
{
"id": "pip",
"kind": "uv",
"package": "microsoft-todo-cli",
"bins": ["todo"],
"label": "安装 microsoft-todo-cli (pip/uv)",
},
],
},
}
Microsoft To Do CLI
使用 todo 命令管理 Microsoft To Do 中的任务。
参考文档
references/setup.md (Azure 应用注册与 OAuth 配置)
前置条件
- 已安装
todo CLI (pip install microsoft-todo-cli)
- 已注册 Microsoft Azure 应用 (参见
references/setup.md)
- 已在
~/.config/microsoft-todo-cli/keys.yml 中配置凭据
- 首次运行已完成浏览器中的 OAuth 授权流程
命令
任务管理
# 列出任务
todo tasks --json # 默认列表
todo tasks 工作 --json # 指定列表
todo tasks --due-today --json # 今日到期
todo tasks --overdue --json # 已逾期
todo tasks --important --json # 重要任务
todo tasks --completed --json # 已完成任务
todo tasks --all --json # 所有任务
# 创建任务
todo new "任务名称" --json # 基础任务
todo new "任务" -l 工作 --json # 在指定列表中创建
todo new "任务" -d tomorrow --json # 设置到期日
todo new "任务" -r 2h --json # 设置提醒
todo new "任务" -d mon -r 9am --json # 周一到期,上午9点提醒
todo new "任务" -I --json # 标记为重要
todo new "任务" -R daily --json # 每日重复
todo new "任务" -R weekly:mon,fri --json # 每周一、五重复
todo new "任务" -S "步骤1" -S "步骤2" --json # 添加子任务
todo new "任务" -N "笔记内容" --json # 添加笔记
# 更新任务
todo update "任务" --title "新标题" --json
todo update "任务" -d friday -I --json
# 完成/取消完成任务
todo complete "任务" --json
todo complete 0 1 2 --json # 按索引批量完成
todo uncomplete "任务" --json
# 删除任务
todo rm "任务" -y --json
子任务(步骤)
todo new-step "任务" "步骤内容" --json
todo list-steps "任务" --json
todo complete-step "任务" "步骤" --json
todo uncomplete-step "任务" "步骤" --json
todo rm-step "任务" 0 --json
笔记
todo note "任务" "笔记内容"
todo show-note "任务"
todo clear-note "任务"
列表管理
todo lists --json
todo new-list "项目X" --json
todo rename-list "旧列表名" "新列表名" --json
todo rm-list "项目X" -y --json
任务标识方式
| 方法 |
稳定性 |
适用场景 |
--id "AAMk..." |
稳定 |
自动化、脚本 |
索引 (0, 1) |
不稳定 |
仅限交互式使用 |
名称 ("任务") |
不稳定 |
仅限名称唯一的任务 |
对于多步骤操作,建议使用 ID:
ID=$(todo new "任务" -l 工作 --json | jq -r '.id')
todo complete --id "$ID" -l 工作 --json
日期与时间格式
| 类型 |
示例 |
| 相对时间 |
1h, 30m, 2d, 1h30m |
| 具体时间 |
9:30, 9am, 17:00, 5:30pm |
| 日期 |
tomorrow, monday, fri |
| 完整日期 |
2026-12-31, 31.12.2026 |
| 关键词 |
morning (7:00), evening (18:00) |
重复模式
| 模式 |
描述 |
daily |
每天 |
weekly |
每周 |
monthly |
每月 |
yearly |
每年 |
weekdays |
周一至周五 |
weekly:mon,wed,fri |
指定星期几 |
every 2 days |
自定义间隔 |
命令别名
| 别名 |
对应命令 |
t |
tasks |
n |
new |
c |
complete |
d |
rm |
sn |
show-note |
cn |
clear-note |
重要提示
- 所有命令都应使用
--json 以获取结构化输出。
- 执行
rm 删除命令时务必使用 -y 以跳过确认提示。
- 在指定列表上下文时,请结合使用
--id 与 -l 列表名。
- 首次运行会打开浏览器进行 OAuth 身份验证。