介绍
# Todoist Skill — Natural Language Task Management
以对话方式管理您的 Todoist 任务。无需记住 CLI 语法 —— 只需用自然语言谈论您的任务即可。
## 自然语言示例
该技能理解对话式请求:
**列出任务:** - "我今天有哪些任务?" - "显示我这周的 Todoist 列表" - "我有哪些逾期任务?" - "显示优先级为 1 的任务"
**添加任务:** - "在待办事项中添加 '买牛奶'" - "创建一个明天给牙医打电话的任务" - "我需要在周五前审查 Q4 报告" - "添加 '每周站会',截止日期为每周一"
**完成任务:** - "完成关于牙医的任务" - "将买牛奶的任务标记为已完成" - "我完成了报告"
**管理项目:** - "我在 Todoist 中有哪些项目?" - "显示我工作项目中的任务"
## 前置条件
- 必须设置 `TODOIST_API_KEY` 环境变量,值为您的 Todoist API 令牌 - 在以下地址获取您的令牌: https://todoist.com/app/settings/integrations/developer
## 技术用法
如果您更喜欢 CLI 命令或需要编写操作脚本,可以直接使用 Python 脚本:
```bash # List today's tasks python3 todoist/scripts/todoist.py list --filter "today"
# Add a task python3 todoist/scripts/todoist.py add "Buy milk" --due "tomorrow" --priority 2
# Complete a task by ID python3 todoist/scripts/todoist.py complete "TASK_ID"
# List all projects python3 todoist/scripts/todoist.py projects ```
## 筛选语法
筛选任务时(通过自然语言或 CLI):
- `today` — 今天到期的任务 - `overdue` — 逾期的任务 - `tomorrow` — 明天到期的任务 - `p1`, `p2`, `p3`, `p4` — 优先级筛选 - `7 days` — 未来 7 天内到期的任务 - `@label` — 带有特定标签的任务 - `#project` — 项目中的任务 - 使用 `&` (and) 和 `|` (or) 组合:`today & p1`
## 优先级级别
- `1` — 紧急(红色) - `2` — 高(橙色) - `3` — 中(蓝色) - `4` — 低(白色/灰色,默认)
## 功能特性
- ✅ 自然语言任务管理 - ✅ 支持时区的“今天”筛选 - ✅ 智能筛选(排除已完成任务) - ✅ 支持循环任务 - ✅ 完整的 Todoist API v1 覆盖
## 响应格式
该脚本输出 JSON 以便编程使用。完整的 API 文档请参阅 `references/api.md`。
## 说明
- 该技能会自动筛选掉已完成的任务 - "今天"使用您的本地时区(如需要,请设置 `TZ` 环境变量) - 自然语言日期("tomorrow"、"next Friday")使用 Todoist 的内置解析功能