Skills todoist

Manage Todoist tasks via the `todoist` CLI (list, add, modify, complete, delete). Supports filters, projects, labels, and priorities.

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/2mawi2/todoist-task-manager" ~/.claude/skills/openclaw-skills-todoist && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/2mawi2/todoist-task-manager" ~/.openclaw/skills/openclaw-skills-todoist && rm -rf "$T"
manifest: skills/2mawi2/todoist-task-manager/SKILL.md
source content

Todoist CLI

Use

todoist
to manage Todoist tasks directly from the terminal.

Setup

  1. Install:
    brew install todoist-cli
  2. Get your API token from https://app.todoist.com/app/settings/integrations/developer
  3. Create config:
mkdir -p ~/.config/todoist
echo '{"token": "YOUR_API_TOKEN"}' > ~/.config/todoist/config.json
  1. Sync:
    todoist sync

List Tasks

todoist list                           # All tasks
todoist list --filter "today"          # Due today
todoist list --filter "overdue"        # Overdue tasks
todoist list --filter "p1"             # Priority 1 (highest)
todoist list --filter "tomorrow"       # Due tomorrow
todoist list --filter "@work"          # By label
todoist list --filter "#Project"       # By project
todoist list --filter "(today | overdue) & p1"  # Combined filters

Add Tasks

todoist add "Buy milk"                                    # Simple task
todoist add "Call mom" --priority 1                       # With priority (1=highest, 4=lowest)
todoist add "Meeting" --date "tomorrow 3pm"               # With due date
todoist add "Report" --project-name "Work"                # To specific project
todoist add "Review" --label-names "urgent,review"        # With labels
todoist quick "Buy eggs tomorrow p1 #Shopping @errands"   # Natural language

Modify Tasks

todoist modify TASK_ID --content "New title"
todoist modify TASK_ID --priority 2
todoist modify TASK_ID --date "next monday"

Complete Tasks

todoist close TASK_ID              # Complete a task
todoist close TASK_ID TASK_ID2     # Complete multiple tasks

Delete Tasks

todoist delete TASK_ID

View Details

todoist show TASK_ID               # Show task details
todoist projects                   # List all projects
todoist labels                     # List all labels

Sync

todoist sync                       # Sync local cache with Todoist

Output Formats

todoist list --csv                 # CSV output for scripting
todoist list --color               # Colorized output
todoist list --namespace           # Show parent tasks as namespace
todoist list --indent              # Indent subtasks

Filter Syntax

Todoist CLI supports the official Todoist filter syntax:

FilterDescription
today
Due today
tomorrow
Due tomorrow
overdue
Past due date
no date
No due date
p1
,
p2
,
p3
,
p4
Priority level
@label
By label
#Project
By project
assigned to: me
Assigned to you
7 days
Due in next 7 days

Combine with

&
(and),
|
(or),
!
(not):

todoist list --filter "(today | overdue) & p1"
todoist list --filter "#Work & !@done"

Notes

  • Run
    todoist sync
    after making changes in the web/mobile app
  • Task IDs are numeric (e.g.,
    12345678
    )
  • Config stored in
    ~/.config/todoist/config.json
  • Cache stored in
    ~/.config/todoist/cache.json