Todoist Task Manager

v1.0.0

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

3· 2.7k·12 current·12 all-time
byMarius Wichtner@2mawi2
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
medium confidence
Purpose & Capability
Name/description, required binary (todoist) and the Homebrew install (todoist-cli) match the claimed purpose of managing Todoist tasks. Minor inconsistency: SKILL.md requires a Todoist API token stored in ~/.config/todoist/config.json, but the registry metadata lists no required credentials or primaryEnv.
Instruction Scope
SKILL.md only instructs standard Todoist CLI operations (install, add/list/modify/close/delete, sync) and where the CLI stores config/cache. It does not ask the agent to read unrelated system files or exfiltrate data to unexpected endpoints.
Install Mechanism
Install is via a Homebrew formula (todoist-cli). This is a low-risk, expected distribution channel for a CLI tool and matches the declared bin.
Credentials
No environment variables are declared in the metadata, but SKILL.md instructs storing a Todoist API token in a plain JSON config file (~/.config/todoist/config.json). The requested credential is proportionate to the task, but its absence from declared requirements and the use of an unencrypted config file are worth noting.
Persistence & Privilege
The skill does not request always:true, does not modify other skills or system-wide settings, and requires only normal installation. Autonomous invocation is allowed by default (platform normal), but that is not combined with other high-risk requests here.
Assessment
This skill appears to do what it says: it uses the todoist-cli to manage tasks. Before installing, check the Homebrew formula source (and the linked GitHub repo) to ensure the CLI is the official project. Be aware that the SKILL.md tells you to store your Todoist API token in ~/.config/todoist/config.json (plain JSON) and that the CLI also keeps a cache at ~/.config/todoist/cache.json—these files contain your token and local data, so store them only on trusted machines. If you want to limit risk: create a dedicated Todoist API token with minimal scope (if possible), keep a backup plan to revoke the token, and avoid enabling autonomous agent use of the skill unless you trust the agent and environment. Finally, consider inspecting the todoist-cli code (or Homebrew formula) if you need higher assurance that the installed binary behaves as expected.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

Clawdis
Binstodoist

Install

Install todoist-cli via Homebrew
Bins: todoist
brew install todoist-cli
latestvk97e5hm1288s1apsy791hnxbcx7ztnvt
2.7kdownloads
3stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

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
todayDue today
tomorrowDue tomorrow
overduePast due date
no dateNo due date
p1, p2, p3, p4Priority level
@labelBy label
#ProjectBy project
assigned to: meAssigned to you
7 daysDue 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

Comments

Loading comments...