todoist-api
This skill provides instructions for interacting with Todoist using the td CLI tool. It covers CRUD operations for tasks/projects/sections/labels/comments, and requires confirmation before destructive actions. Use this skill when the user wants to read, create, update, or delete Todoist data.
Security Assessment
About todoist-api
This skill provides procedural guidance for reading and managing Todoist data through the `td` command-line tool. It solves the problem of turning natural-language task-management requests into precise CLI invocations, covering full CRUD operations across tasks, projects, sections, labels, and comments. The skill emphasizes machine-readable output for agents (`--json`, `--ndjson`, `--full` flags) so results can be parsed and acted on programmatically.
The documentation walks through quick-add natural-language parsing (due dates, priorities, projects, sections, labels), listing and filtering tasks, viewing task details, creating tasks with explicit flags, and updating, completing, or reopening tasks. A dedicated reference file documents Todoist's filter query language, including date, priority, label, project, section, and assignment filters plus logical operators for combining them. A companion reference covers completed-task retrieval. A key safety feature is the explicit confirmation requirement: before any destructive action (deleting, completing, updating, or archiving), the skill instructs the agent to ask the user for confirmation, while read-only operations proceed freely.
The target users are people who manage their to-do lists in Todoist and want an AI assistant to query, add, or reorganize tasks conversationally. Typical use cases include adding tasks from natural language, surfacing overdue or high-priority work, filtering tasks by project or label, and bulk-reviewing or completing items. It assumes the `td` CLI is installed via npm and authenticated over OAuth.
FAQ
What do I need installed to use this skill?
The `td` CLI (`@doist/todoist-cli`) must be installed globally via npm and authenticated. You verify status with `td auth status`, install with `npm install -g @doist/todoist-cli`, and authenticate over OAuth with `td auth login`.
Will it delete or complete tasks without asking?
No. The skill requires confirmation before any destructive action, including deleting tasks/projects/sections/labels/comments, completing tasks, updating existing resources, and archiving projects. Read-only operations do not require confirmation.
Can I get machine-readable output?
Yes. Use `--json` for a JSON array, `--ndjson` for newline-delimited JSON, and `--full` to include all fields rather than the essential-fields default.
How do I write advanced task filters?
The `--filter` flag on `td task list` accepts Todoist's filter query language, supporting date, priority, label, project, section, and assignment filters combined with `&` (AND), `|` (OR), `!` (NOT), and parentheses for grouping. Some complex filters may require Premium/Business plans.
Does it support natural-language task creation?
Yes. `td add "text"` parses due dates, priority (p1-p4), project (#Project), section (/Section), and labels (@label) directly from the text.
Install todoist-api
Quick Setup:
- Copy the skill folder to
.claude/skills/ - Claude will automatically detect and use the skill
Repository
intellectronica/agent-skills