介绍
# Todoist CLI
用于 Todoist 任务管理的 CLI,基于官方 TypeScript SDK 构建。
## 安装
```bash # Requires todoist-ts-cli >= 0.2.0 (for --top / --order) npm install -g todoist-ts-cli@^0.2.0 ```
## 设置
1. 从 https://todoist.com/app/settings/integrations/developer 获取 API 令牌 2. 二选一: ```bash todoist auth <your-token> # or export TODOIST_API_TOKEN="your-token" ```
## 命令
### 任务
```bash todoist # Show today's tasks (default) todoist today # Same as above todoist tasks # List tasks (today + overdue) todoist tasks --all # All tasks todoist tasks -p "Work" # Tasks in project todoist tasks -f "p1" # Filter query (priority 1) todoist tasks --json ```
### 添加任务
```bash todoist add "Buy groceries" todoist add "Meeting" --due "tomorrow 10am" todoist add "Review PR" --due "today" --priority 1 --project "Work" todoist add "Prep slides" --project "Work" --order 3 # add at a specific position (1-based) todoist add "Triage inbox" --project "Work" --order top # add to top (alternative to --top) todoist add "Call mom" -d "sunday" -l "family" # with label ```
### 管理任务
```bash todoist view <id> # View task details todoist done <id> # Complete task todoist reopen <id> # Reopen completed task todoist update <id> --due "next week" todoist move <id> -p "Personal" todoist delete <id> ```
### 搜索
```bash todoist search "meeting" ```
### 项目与标签
```bash todoist projects # List projects todoist project-add "New Project" todoist labels # List labels todoist label-add "urgent" ```
### 评论
```bash todoist comments <task-id> todoist comment <task-id> "Note about this task" ```
## 使用示例
**用户:“我今天要做什么?”** ```bash todoist today ```
**用户:“将‘买牛奶’添加到我的任务中”** ```bash todoist add "Buy milk" --due "today" ```
**用户:“提醒我明天给牙医打电话”** ```bash todoist add "Call the dentist" --due "tomorrow" ```
**用户:“将杂货任务标记为已完成”** ```bash todoist search "grocery" # Find task ID todoist done <id> ```
**用户:“我的工作项目里有什么?”** ```bash todoist tasks -p "Work" ```
**用户:“显示我的高优先级任务”** ```bash todoist tasks -f "p1" ```
## 筛选语法
Todoist 支持强大的筛选查询: - `p1`、`p2`、`p3`、`p4` - 优先级级别 - `today`、`tomorrow`、`overdue` - `@label` - 带有标签的任务 - `#project` - 项目中的任务 - `search: keyword` - 搜索
## 说明
- 任务 ID 显示在任务列表中 - 截止日期支持自然语言(“tomorrow”、“next monday”、“jan 15”) - 优先级 1 最高,4 最低 - 使用 `--order <n>`(从 1 开始)或 `--order top` 将任务插入到项目/版块的特定位置