Todoist Manager

v1.0.0

Manage Todoist tasks, projects, labels, and comments via the todoist CLI wrapper. Use when a user asks to add tasks, list todos, complete items, manage projects, or interact with their Todoist account.

1· 1.6k·2 current·2 all-time
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
high confidence
!
Purpose & Capability
The described purpose (manage Todoist via a CLI wrapper) legitimately requires a Todoist API token and tools like curl/jq or a shipped CLI. However the registry metadata lists no required environment variables, no required binaries, and there are no code files. That omission is inconsistent — a Todoist CLI skill should declare TODOIST_API_TOKEN and required binaries or include an install spec or script.
!
Instruction Scope
SKILL.md explicitly instructs the user/agent to set TODOIST_API_TOKEN, run chmod on ~/clawd/skills/todoist/scripts/todoist and invoke that CLI. It also states it requires curl and jq. These instructions reference a local script path that is not present in the skill bundle and access an env var not declared in metadata. The instructions are otherwise scoped to Todoist API actions (no unexpected external endpoints), but they direct filesystem changes (chmod) and execution of a local script whose provenance is unknown.
!
Install Mechanism
There is no install specification and no shipped code files, yet the instructions assume a CLI exists at ~/clawd/skills/todoist/scripts/todoist. This mismatch is concerning: either the skill omitted its install step or it expects the user to create or copy an executable. Without an explicit, verifiable install source, executing or chmod-ing a script at that path is risky.
!
Credentials
The SKILL.md requires TODOIST_API_TOKEN (reasonable for Todoist access). But the skill metadata declares no primary credential and no required env vars — an inconsistency. Requesting a single Todoist API token is proportionate to the stated purpose, but the metadata should declare it so users know what secrets are needed before install.
Persistence & Privilege
always is false and the skill doesn't request elevated system privileges. However, the instructions tell the agent to change permissions (chmod) on a file under ~/clawd/skills — this modifies the filesystem but appears limited to the skill's own path. Still verify the script's contents before making it executable. No other persistence or cross-skill configuration changes are requested.
What to consider before installing
Do not install or run this skill as-is. Key inconsistencies need resolution: the SKILL.md requires a TODOIST_API_TOKEN and a local CLI at ~/clawd/skills/todoist/scripts/todoist (and mentions curl/jq), yet the registry metadata lists no env vars, no binaries, and the skill bundle contains no script or install instructions. Before proceeding, ask the publisher for: (1) the CLI source or an explicit, verifiable install step (preferably an official release or GitHub repo), (2) the exact env vars the skill needs (TODOIST_API_TOKEN should be declared), and (3) the content of the referenced script so you can review it. If you must test, do so in a sandbox or VM, verify the script contents before running chmod/execution, and limit the API token scope / rotate it afterward. Prefer skills that declare their requirements in metadata and include a trusted install mechanism or published source code/homepage.

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

latestvk97525876x6wztx7v9w63mhxnh7zkw0f
1.6kdownloads
1stars
1versions
Updated 1mo ago
v1.0.0
MIT-0

Todoist CLI

Manage Todoist via the REST API v2.

Setup

  1. Get API token: Todoist → Settings → Integrations → Developer → API token
  2. Set environment variable:
    export TODOIST_API_TOKEN="your_token_here"
    
  3. Make CLI executable:
    chmod +x ~/clawd/skills/todoist/scripts/todoist
    

CLI Location

~/clawd/skills/todoist/scripts/todoist

Quick Reference

Tasks

# List all tasks
todoist tasks

# List with filter
todoist tasks --filter "today"
todoist tasks --filter "overdue"
todoist tasks --filter "#Work"
todoist tasks --project PROJECT_ID

# Quick views
todoist today
todoist overdue
todoist upcoming

# Get single task
todoist task TASK_ID

# Add task
todoist add "Buy groceries"
todoist add "Call mom" --due tomorrow
todoist add "Meeting prep" --due "today 3pm" --priority 4
todoist add "Review PR" --project PROJECT_ID --labels "work,urgent"
todoist add "Write docs" --description "Include examples"

# Update task
todoist update TASK_ID --content "New title"
todoist update TASK_ID --due "next monday"
todoist update TASK_ID --priority 3

# Complete / reopen / delete
todoist complete TASK_ID
todoist reopen TASK_ID
todoist delete-task TASK_ID

Projects

# List projects
todoist projects

# Get project
todoist project PROJECT_ID

# Create project
todoist add-project "Work"
todoist add-project "Personal" --color blue --favorite

# Update project
todoist update-project PROJECT_ID --name "New Name"
todoist update-project PROJECT_ID --color red

# Delete project
todoist delete-project PROJECT_ID

Sections

# List sections
todoist sections
todoist sections PROJECT_ID

# Create section
todoist add-section --name "In Progress" --project PROJECT_ID

# Delete section
todoist delete-section SECTION_ID

Labels

# List labels
todoist labels

# Create label
todoist add-label "urgent"
todoist add-label "blocked" --color red

# Delete label
todoist delete-label LABEL_ID

Comments

# List comments
todoist comments --task TASK_ID
todoist comments --project PROJECT_ID

# Add comment
todoist add-comment "Need more info" --task TASK_ID

# Delete comment
todoist delete-comment COMMENT_ID

Filter Syntax

Todoist supports powerful filter queries:

FilterDescription
todayDue today
tomorrowDue tomorrow
overduePast due
7 daysDue in next 7 days
no dateNo due date
#ProjectNameIn specific project
@labelHas label
p1, p2, p3, p4Priority level
assigned to: meAssigned to you
created: todayCreated today

Combine with & (and) or | (or):

todoist tasks --filter "today & #Work"
todoist tasks --filter "overdue | p1"

Due Date Strings

Natural language due dates:

  • today, tomorrow, yesterday
  • next monday, next week
  • in 3 days
  • every day, every weekday
  • every monday at 9am
  • Jan 15, 2026-01-20
  • today at 3pm

Priority Levels

ValueMeaning
1Normal (default)
2Medium
3High
4Urgent

Output

All commands return JSON. Pipe to jq for formatting:

todoist tasks | jq '.[] | {id, content, due: .due.string}'
todoist today | jq -r '.[].content'

Notes

  • Requires curl and jq
  • All output is JSON for easy scripting
  • Task IDs are numeric strings (e.g., "8765432109")
  • Project IDs are also numeric strings

Comments

Loading comments...