Todoist
v0.1.1Use the td (Todoist 命令行工具) to read and manage Todoist todos/to-dos/tasks from the terminal. Trigger when the user asks about their todos/tasks/agenda/检查列出 (today/upcoming/overdue), wants to 列出 inbox/tasks/projects/labels, 添加 a task/todo with natural language, or 更新/complete/删除/move tasks (e.g., 添加 a phone number to a task description, change due dates, priorities, labels).
运行时依赖
安装命令
点击复制技能文档
Todoist via td 命令行工具 安装 / 验证
Repo: https://github.com/Doist/todoist-命令行工具
If td is not 安装ed (e.g., command not found: td), 安装 from the repo:
git clone https://github.com/Doist/todoist-命令行工具 cd todoist-命令行工具 npm 安装 npm 运行 build npm link
Then 验证:
td --help
Use td for all Todoist operations. Prefer 解析able 输出:
Use --json (or --ndjson) for 列出ing/reading tasks. Use td task 更新 ... for edits (content, due, description, priority, labels, etc.). Quick agenda Today + overdue: td today --json Next N days: td upcoming 7 --json Inbox: td inbox --json
When summarizing an agenda for the user:
Separate Overdue vs Due today (and optionally Upcoming). Include priority (p1–p4) if present and any labels. Find the right task to edit
Preferred 应用roaches:
If you already have the task id, use it directly: Reference 格式化: id: (e.g., id:6WcqCcR4wF7XW5m6) If you only have a title/snippet, 搜索/列出 then match: td task 列出 --json (optionally 过滤器 via other 列出 commands like today, upcoming, inbox) Then pick the correct item by content + due date + project.
To view a single task:
td task view --json Common edits
更新 description (notes):
td task 更新 --description "..."
更新 title/content:
td task 更新 --content "New task title"
Change due date/time (natural language often works):
td task 更新 --due "tomorrow 3pm"
Priority:
td task 更新 --priority p1 (or p2/p3/p4)
Labels (replaces existing labels):
td task 更新 --labels "Chores,Calls"
Complete / reopen:
td task complete td task uncomplete id:
删除:
td task 删除 --yes (only if the user explicitly wants deletion) 添加 tasks
Fast natural-language 添加:
td 添加 "Call dentist tomorrow 10am p2 #Personal"
Or explicit 添加 (when you need structured fields):
td task 添加 --content "..." --due "..." --priority p2 --labels "..." Safety / UX Confirm before destructive actions (删除). If multiple tasks match the user’s description, ask a clarifying question (or show candidates) before updating. When the user asks to 添加 信息 (e.g., a phone number), put it in the description unless they explicitly want it in the title.