Agent skill

Todoist API

by intellectronica in intellectronica/agent-skills

This skill provides instructions for interacting with Todoist using the td CLI tool.

CC0-1.0Auto-check passed

Install Todoist API

skills CLI
$ npx skills add intellectronica/agent-skills --skill todoist-api -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install intellectronica/agent-skills todoist-api --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/intellectronica/agent-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/todoist-api .claude/skills/todoist-api && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
todoist-api
GitHub stars
295
Token cost
~2.3k tokens
SKILL.md length
650 words
Files
3 (incl. references)
Skills in repo
21
Repo updated
First seen
Licence
CC0-1.0

At a glance

This skill provides instructions for interacting with Todoist using the td CLI tool.

  • Works in 5 steps: Verify authentication - td auth status → Read operations - Execute directly… → Write operations - Ask for confirmation… → …
  • The user wants to read
  • SKILL.md covers Prerequisites, Output Formats for Agents, Confirmation Requirement and Quick Commands, plus 4 more sections
  • Calls jq and npm

What it does

Todoist API is an agent skill from intellectronica/agent-skills. 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.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/completed-tasks.md` and `references/filters.md`).

It works with Todoist. The repository describes itself as: @intellectronica's agent skills. The licence is CC0-1.0.

When your agent uses it

  • The user wants to read
  • Delete Todoist data

Example prompts

  • “/todoist-api”

Requirements

  • Node.js

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Verify authentication - td auth status
  2. Read operations - Execute directly without confirmation
  3. Write operations - Ask for confirmation before executing
  4. Use JSON output - Add --json flag for machine-readable data
  5. Handle large datasets - Use --all or pagination with --cursor

What it can do on your machine

Read from SKILL.md and the folder at commit 9b0e00a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Todoist API loads about 2.3k tokens when it runs, and up to ~3.5k if it reads all its reference files. Until then it costs about 76 tokens; SKILL.md has 650 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~76
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from intellectronica/agent-skills at commit 9b0e00a, republished under its CC0-1.0 licence (© intellectronica). 650 words, ~2,304 tokens.

Download SKILL.mdSave it as .claude/skills/todoist-api/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
todoist-api
description
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.

Todoist CLI Skill

This skill provides procedural guidance for working with Todoist using the td CLI tool.

Prerequisites

The td CLI must be installed and authenticated. Verify with:

bash
td auth status

If td is not installed or not authenticated:

  • Not installed: Tell the user to install with npm install -g @doist/todoist-cli
  • Not authenticated: Tell the user to run td auth login to authenticate via OAuth

Output Formats for Agents

For machine-readable output, use these flags:

  • --json - Output as JSON array
  • --ndjson - Output as newline-delimited JSON (one object per line)
  • --full - Include all fields in JSON output (default shows essential fields only)

Confirmation Requirement

Before executing any destructive action, always ask the user for confirmation using AskUserQuestion or similar tool. A single confirmation suffices for a logical group of related actions.

Destructive actions include:

  • Deleting tasks, projects, sections, labels, or comments
  • Completing tasks
  • Updating existing resources
  • Archiving projects

Read-only operations do not require confirmation.

Quick Commands

CommandDescription
td add "text"Quick add with natural language parsing
td todayTasks due today and overdue
td upcoming [days]Tasks due in next N days (default: 7)
td inboxTasks in Inbox
td completedRecently completed tasks
Quick Add Examples
bash
td add "Buy milk tomorrow p1 #Shopping"
td add "Call dentist every monday @health"
td add "Review PR #Work /Code Review"

The quick add parser supports:

  • Due dates: tomorrow, next monday, Jan 15
  • Priority: p1 (urgent) through p4 (normal)
  • Project: #ProjectName
  • Section: /SectionName
  • Labels: @label1 @label2

Tasks

List Tasks
bash
td task list [options]

Filters:

  • --project <name> - Filter by project name or id:xxx
  • --label <name> - Filter by label (comma-separated for multiple)
  • --priority <p1-p4> - Filter by priority
  • --due <date> - Filter by due date (today, overdue, or YYYY-MM-DD)
  • --filter <query> - Raw Todoist filter query
  • --assignee <ref> - Filter by assignee (me or id:xxx)
  • --workspace <name> - Filter to workspace
  • --personal - Filter to personal projects only

Output:

bash
td task list --json                    # JSON array
td task list --project "Work" --json   # Filtered JSON
td task list --all --json              # All tasks (no limit)
View Task Details
bash
td task view <ref>              # Human-readable
td task view <ref> --json       # JSON output

The ref can be a task name, partial match, or id:xxx.

Create Task

Quick add (natural language):

bash
td add "Task text with #Project @label tomorrow p2"

Explicit flags:

bash
td task add --content "Task text" \
  --project "Work" \
  --due "tomorrow" \
  --priority p2 \
  --labels "urgent,review" \
  --description "Additional details"

Options:

  • --content <text> - Task content (required)
  • --due <date> - Due date (natural language or YYYY-MM-DD)
  • --deadline <date> - Deadline date (YYYY-MM-DD)
  • --priority <p1-p4> - Priority level
  • --project <name> - Project name or id:xxx
  • --section <id> - Section ID
  • --labels <a,b> - Comma-separated labels
  • --parent <ref> - Parent task for subtask
  • --description <text> - Task description
  • --assignee <ref> - Assign to user (name, email, id:xxx, or "me")
  • --duration <time> - Duration (e.g., 30m, 1h, 2h15m)
Update Task
bash
td task update <ref> --content "New content" --due "next week"

Options:

  • --content <text> - New content
  • --due <date> - New due date
  • --deadline <date> - Deadline date
  • --no-deadline - Remove deadline
  • --priority <p1-p4> - New priority
  • --labels <a,b> - Replace labels
  • --description <text> - New description
  • --assignee <ref> - Assign to user
  • --unassign - Remove assignee
  • --duration <time> - Duration
Show full SKILL.md (242 more words)Show less
Complete Task
bash
td task complete <ref>
Reopen Task
bash
td task uncomplete id:xxx

Note: Uncomplete requires the task ID (id:xxx format).

Delete Task
bash
td task delete <ref>
Move Task
bash
td task move <ref> --project "New Project"
td task move <ref> --section <section-id>
td task move <ref> --parent <task-ref>
Open in Browser
bash
td task browse <ref>

Projects

List Projects
bash
td project list                     # Human-readable tree
td project list --json              # JSON array
td project list --personal --json   # Personal projects only
View Project
bash
td project view <ref>
td project view <ref> --json
Create Project
bash
td project create --name "Project Name" \
  --color "blue" \
  --parent "Parent Project" \
  --view-style board \
  --favorite

Options:

  • --name <name> - Project name (required)
  • --color <color> - Colour name
  • --parent <ref> - Parent project for nesting
  • --view-style <style> - "list" or "board"
  • --favorite - Mark as favourite
Update Project
bash
td project update <ref> --name "New Name" --color "red"
Archive/Unarchive Project
bash
td project archive <ref>
td project unarchive <ref>
Delete Project
bash
td project delete <ref>

Note: Project must have no uncompleted tasks.

List Collaborators
bash
td project collaborators <ref>

Sections

List Sections
bash
td section list <project>           # Human-readable
td section list <project> --json    # JSON array
Create Section
bash
td section create --name "Section Name" --project "Project Name"
Update Section
bash
td section update <id> --name "New Name"
Delete Section
bash
td section delete <id>

Labels

List Labels
bash
td label list              # Human-readable
td label list --json       # JSON array
Create Label
bash
td label create --name "label-name" --color "green" --favorite
Update Label
bash
td label update <ref> --name "new-name" --color "blue"
Delete Label
bash
td label delete <name>

Comments

List Comments
bash
td comment list <task-ref>                    # Comments on task
td comment list <project-ref> --project       # Comments on project
Add Comment
bash
td comment add <task-ref> --content "Comment text"
td comment add <project-ref> --project --content "Comment text"
Update Comment
bash
td comment update <id> --content "Updated text"
Delete Comment
bash
td comment delete <id>

Reminders

List Reminders
bash
td reminder list <task-ref>
Add Reminder
bash
td reminder add <task-ref> --due "tomorrow 9am"
Delete Reminder
bash
td reminder delete <id>

Filters

List Saved Filters
bash
td filter list --json
Show Tasks Matching Filter
bash
td filter show <filter-ref> --json
Create Filter
bash
td filter create --name "My Filter" --query "today & p1"

Completed Tasks

bash
td completed                              # Today's completed tasks
td completed --since 2024-01-01           # Since specific date
td completed --project "Work" --json      # Filtered JSON output
td completed --all --json                 # All completed (no limit)

Options:

  • --since <date> - Start date (YYYY-MM-DD), default: today
  • --until <date> - End date (YYYY-MM-DD), default: tomorrow
  • --project <name> - Filter by project

Activity and Stats

bash
td activity                  # Recent activity
td stats                     # Productivity stats and karma

Pagination

For large result sets, use --all to fetch everything, or handle pagination with cursors:

bash
# First page
result=$(td task list --json --limit 50)

# If there's a next_cursor in the response, continue
cursor=$(echo "$result" | jq -r '.[-1].id // empty')
td task list --json --limit 50 --cursor "$cursor"

Reference Resolution

The <ref> parameter in commands accepts:

  • Task/project/label name (partial match supported)
  • id:xxx for exact ID match
  • Numeric ID (interpreted as id:xxx)

Additional Reference

For detailed information on specific topics, consult:

  • references/completed-tasks.md - Alternative methods for completed task history via API
  • references/filters.md - Todoist filter query syntax for --filter flag

Workflow Summary

  1. Verify authentication - td auth status
  2. Read operations - Execute directly without confirmation
  3. Write operations - Ask for confirmation before executing
  4. Use JSON output - Add --json flag for machine-readable data
  5. Handle large datasets - Use --all or pagination with --cursor

© intellectronica, CC0-1.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in skills/todoist-api of intellectronica/agent-skills.

  • SKILL.md
  • references/completed-tasks.md
  • references/filters.md

Open the folder on GitHubat commit 9b0e00a

Compare with similar skills

Todoist API next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Todoist API compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Todoist API this skillintellectronica/agent-skills295—~2.3kAutomated safety check: PassCC0-1.0
Add CommandDoist/todoist-cli3161 repos~2.9kAutomated safety check: PassMIT
Todoist CLIjoshukraine/dotfiles4292 repos~6.9kAutomated safety check: PassMIT
Migrate Doctorsmixs/agent-second-brain392—~904Automated safety check: NotesMIT
Action Items Todoistmgonto/executive-assistant-skills118—~3.8kAutomated safety check: NotesNone
Executive Digestmgonto/executive-assistant-skills118—~2.6kAutomated safety check: NotesNone

Similar skills

  • Add Command

    Doist/todoist-cli

    Guide for adding new CLI commands or subcommands to todoist-cli.

    316 GitHub starsUsed in 1 repo~2.9k tokens
    Auto-check passed
  • Todoist CLI

    joshukraine/dotfiles

    Manage Todoist tasks, projects, labels, filters, sections, comments, reminders, and workspaces via the td CLI.

    429 GitHub starsUsed in 2 repos~6.9k tokens
    Productivity & AutomationAuto-check passed
  • Migrate Doctor

    smixs/agent-second-brain

    Diagnose and repair a broken or non-standard agent-second-brain install/migration.

    392 GitHub stars~904 tokensUpdated 2 mo ago
    Knowledge ManagementAuto-check: notes
  • Action Items Todoist

    mgonto/executive-assistant-skills

    Extract action items from today's Granola/Grain meetings, create Todoist tasks, complete fulfilled tasks, and draft meeting-triggered follow-up emails.

    118 GitHub stars~3.8k tokensUpdated 7 mo ago
    Productivity & AutomationAuto-check: notes
  • Executive Digest

    mgonto/executive-assistant-skills

    Generate the daily executive digest — a single WhatsApp summary of everything needing attention: stalled scheduling, pending intros, unanswered emails, promised follow-ups, open Todoist tasks, and…

    118 GitHub stars~2.6k tokensUpdated 7 mo ago
    Productivity & AutomationAuto-check: notes
  • Todoist Due Drafts

    mgonto/executive-assistant-skills

    Check Todoist for tasks due today (and overdue) that involve pinging, emailing, or following up with someone.

    118 GitHub stars~1.6k tokensUpdated 7 mo ago
    Productivity & AutomationAuto-check: notes

More from intellectronica/agent-skills

All 21 skills in this repo
  • Beautiful Mermaid

    intellectronica/agent-skills

    Render Mermaid diagrams as SVG and PNG using the Beautiful Mermaid library.

    295 GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check passed
  • Gpt Image 1 5

    intellectronica/agent-skills

    Generate and edit images using OpenAI's GPT Image 1.5 model.

    295 GitHub stars~1.5k tokensUpdated 5 mo ago
    Auto-check passed
  • Nano Banana 2

    intellectronica/agent-skills

    Generate and edit images using Google's Nano Banana 2 (Gemini 3.1 Flash Image Preview) API.

    295 GitHub stars~972 tokensUpdated 5 mo ago
    Auto-check passed
  • Nano Banana Pro

    intellectronica/agent-skills

    Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API.

    295 GitHub stars~1.1k tokensUpdated 5 mo ago
    Auto-check passed
  • Notion API

    intellectronica/agent-skills

    This skill provides comprehensive instructions for interacting with the Notion API via REST calls.

    295 GitHub starsUsed in 1 repo~3.7k tokens
    Auto-check passed
  • Youtube Transcript

    intellectronica/agent-skills

    Extract transcripts from YouTube videos. An agent skill from intellectronica/agent-skills.

    295 GitHub starsUsed in 3 repos~394 tokens
    Auto-check passed

Works with

Questions about Todoist API

What does Todoist API do?

This skill provides instructions for interacting with Todoist using the td CLI tool. Todoist API is an agent skill from intellectronica/agent-skills. This skill provides instructions for interacting with Todoist using the td CLI tool.

When should I use Todoist API?

Todoist API fits situations like: the user wants to read; delete Todoist data.

How do I install Todoist API in Claude Code?

Run `npx skills add intellectronica/agent-skills --skill todoist-api -a claude-code`. Or copy the skill folder (skills/todoist-api in intellectronica/agent-skills) into .claude/skills/todoist-api in your project. Claude Code loads it when a task matches its description.

How do I install Todoist API in Codex?

Run `npx skills add intellectronica/agent-skills --skill todoist-api -a codex`. Or copy the skill folder (skills/todoist-api in intellectronica/agent-skills) into .agents/skills/todoist-api in your project. Codex loads it when a task matches its description.

Can I use Todoist API in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add intellectronica/agent-skills --skill todoist-api -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/todoist-api, .gemini/skills/todoist-api, .github/skills/todoist-api and .opencode/skills/todoist-api in your project.

What does Todoist API need to run?

Going by SKILL.md and its folder, Todoist API needs the command-line tools its instructions call (jq and npm). Our summary lists: Node.js.

Does Todoist API access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Todoist API safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Todoist API use?

Todoist API is published under the CC0-1.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Todoist API use?

About 2.3k tokens (SKILL.md is roughly 9.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.2k tokens, read only when the agent opens those files.

What are the alternatives to Todoist API?

Skills that share tags, products or a category with Todoist API: Add Command (Doist/todoist-cli, 316 stars), Todoist CLI (joshukraine/dotfiles, 429 stars), Migrate Doctor (smixs/agent-second-brain, 392 stars) and Action Items Todoist (mgonto/executive-assistant-skills, 118 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Todoist API?

intellectronica (a GitHub user) maintains it in intellectronica/agent-skills, which has 295 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on April 25, 2026.

Source: intellectronica/agent-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.