核心用法
todoist-cli 是用 Go 语言开发的全功能命令行工具,覆盖 Todoist 核心工作流:
- 任务管理:
add/complete/update/delete/move支持优先级(P1-P4)、截止日期、项目归属、分区移动;search快速检索 - 视图过滤:默认显示今日任务,
--filter支持自然语言筛选(overdue、p1 等),--json输出便于管道处理 - 项目管理:项目/标签/分区的 CRUD 操作,支持 Kanban 工作流(section 移动)
- 协作功能:查看/添加任务评论,
completed命令可追溯历史记录 - 认证灵活:支持交互式
auth、直接传参或环境变量TODOIST_API_TOKEN
显著优点
- 原生性能:Go 编译产物启动快、资源占用低
- 功能完整度:官方 API 覆盖率极高,含较少见的分区(section)和评论管理
- 输出友好:全命令支持
--json,与jq等工具链整合顺畅 - 安装便捷:Homebrew 和 Go install 双渠道,零依赖
潜在局限
- 无离线模式:纯 API 驱动,断网即不可用
- Token 管理:需用户自行保管 API Token,无 OAuth 刷新机制
- 批量操作限制:无内置事务或批量任务原子操作,误操作难回滚
- 非官方维护:由社区开发者
buddyh维护,非 Doist 官方出品
适合人群
- 终端常驻的重度 Todoist 用户
- 需要脚本自动化任务同步的开发者/运维人员
- 偏好键盘驱动工作流的效率工具爱好者
常规风险
- Token 泄露:
TODOIST_API_TOKEN若写入 shell history 或被意外提交至版本控制,将导致账户数据暴露 - 误删不可逆:
delete操作无二次确认,且 API 层无回收站机制 - 时区/日期解析:自然语言日期(如 "today 5pm")依赖系统时区,跨时区协作可能产生偏差
- 速率限制:高频脚本调用可能触发 Todoist API 限流(约 50 req/s 上限)