- The OpenClaw Todoist skill connects via your personal API token — no OAuth dance, no third-party service required
- Your agent can create, read, update, complete, and delete tasks including due dates, priorities, labels, and project assignment
- Trigger task creation from any OpenClaw channel — Telegram message, webhook, scheduled cron job, or another agent
- Pair with the Gmail or Slack skill to auto-create tasks from emails and messages without touching Todoist manually
- As of early 2025, the skill supports Todoist's REST API v2 — all modern project and label features are available
Forty-seven percent of knowledge workers report their task list actively makes them less productive — the overhead of maintaining it outweighs its benefit. The OpenClaw Todoist skill flips this. Your agent manages the list. You work from it.
This guide covers the exact configuration, every available action, and the workflow patterns that save the most time. We'll get to those patterns in a moment — but first you need to understand the one architectural decision that determines whether this integration works or creates chaos.
Why This Combination Works
Todoist is the right task management tool to connect to an AI agent for one specific reason: its API is simple, stable, and consistent. The REST API v2 has not had a breaking change since 2022. That matters because AI agents interact with APIs differently than humans — they call endpoints repeatedly, in automated sequences, often without human review. A flaky API turns an agent into a liability.
OpenClaw's Todoist skill wraps the API into natural language actions. Instead of constructing API calls, your agent says "create a task to review the Q1 report by Friday, priority 2, in the Work project" and the skill handles the translation. The agent's instruction maps directly to a POST /rest/v2/tasks request with the correct parameters.
Sound familiar? If you've tried connecting Todoist to Zapier or Make, you've hit the ceiling — those tools require pre-built zaps for specific triggers. OpenClaw's approach is different. The agent decides in real time what task action to take based on context. That's the capability gap that makes this worth setting up.
Installation and Configuration
The skill ships with OpenClaw's default skill library. Enable it in your agent's skill configuration:
# agent.yaml
skills:
- name: todoist
enabled: true
config:
api_token: "${TODOIST_API_TOKEN}"
default_project: "Inbox"
default_priority: 2
Get your API token from Todoist: Settings → Integrations → Developer → copy the personal API token. Store it as an environment variable — never hardcode it in agent.yaml.
If you don't specify default_project, tasks land in your Inbox. For agents managing work tasks, point the default to a dedicated project like "AI Agent Tasks" so you can triage agent-created items separately from your manually added tasks. This makes it easy to audit what the agent created.
Restart the agent after updating the config. Run a test by sending your agent "create a test task in Todoist" from whatever channel you're using. Check Todoist — the task should appear within two seconds.
Core Actions Available
The Todoist skill exposes these actions to your agent:
| Action | What It Does | Key Parameters |
|---|---|---|
| create_task | Add a new task | content, due_string, priority, project_id, labels |
| get_tasks | List tasks by filter | project_id, filter, label |
| update_task | Modify an existing task | task_id, content, due_string, priority |
| close_task | Mark a task complete | task_id |
| delete_task | Permanently remove a task | task_id |
| add_comment | Add a comment to a task | task_id, content |
Priority levels map directly to Todoist's system: 1 is highest (red), 4 is lowest (no color). Due strings accept natural language — "today", "next Monday", "in 3 days", "every weekday" for recurring tasks. The skill passes these strings directly to Todoist's natural language date parser.
Real Workflow Examples
Here's where the setup pays off. These are the three patterns we see used most consistently across OpenClaw deployments that include Todoist.
Pattern 1: Email-to-Task Conversion
Pair the Gmail skill with Todoist. Configure your agent to check email every 30 minutes, identify emails that require action, and create Todoist tasks automatically. Your instruction to the agent looks like this:
When you find an email that requires a response or action from me:
1. Create a Todoist task: "Reply to [sender]: [subject summary]"
2. Set due_string to "today" if the email is marked urgent, "this week" otherwise
3. Set priority to 1 if the sender is in my VIP list, 2 otherwise
4. Add a comment with the email subject and sender
5. Label the task "email"
This runs automatically. You open Todoist in the morning to a prioritized list of emails that need responses, with context already attached.
Pattern 2: Meeting Prep Tasks
Connect Google Calendar to OpenClaw. Each morning, the agent reads your calendar, identifies meetings, and creates prep tasks for each one. "Prepare agenda for 2pm standup", "Review Q1 deck before 4pm strategy call". These appear 24 hours before the meeting with appropriate due times.
Pattern 3: Project Milestone Tracking
Your agent monitors a GitHub repository or Linear project for new issues and milestones. When a milestone is created or a high-priority issue is opened, the agent creates a corresponding Todoist task assigned to the right person, with the correct due date pulled from the milestone.
The delete_task action is permanent and not recoverable. Configure your agent instructions to never call delete_task without explicit user confirmation. Use close_task for completed items instead — this keeps your history intact and prevents accidental data loss from agent errors.
Advanced Patterns
Once the basic integration is running, these patterns add significant capability.
Dynamic priority scoring. Give your agent a priority scoring rubric in its system prompt. The agent reads all open tasks, evaluates them against the rubric (deadline proximity, project importance, dependency chain), and updates priorities automatically. Run this as a scheduled job each morning.
Here's where most people stop. They set up task creation and call it done. The real value comes from closing the loop — the agent not only creates tasks but tracks whether they're completed on time, identifies overdue items, and surfaces them for human review.
Overdue task escalation. Schedule a daily 6pm job. The agent reads all tasks due today that are still open, generates a summary message, and sends it to your Telegram or Slack. You get a clear picture of what slipped without manually reviewing Todoist.
Cross-tool task sync. Pair Todoist with Linear or Jira. When a task is created in Todoist with a specific label (say "engineering"), the agent creates a corresponding ticket in Linear with the same content. Changes in either system trigger updates in the other. This bridges personal task management with team project tracking without double-entry.
Common Mistakes
- Not setting a default project — tasks pile up in Inbox, making it impossible to distinguish agent-created items from manually added ones. Always route agent tasks to a dedicated project.
- Giving the agent too broad a mandate — "manage all my tasks" is too vague. Define specific triggers: which events create tasks, which labels to use, which projects to target. Vague instructions produce inconsistent results.
- Ignoring the rate limit — Todoist allows 450 requests per 15 minutes. A poorly designed agent loop can hit this in minutes. Build in delays between batch operations and handle 429 responses with exponential backoff.
- Hardcoding project IDs — Todoist project IDs change if you delete and recreate a project. Use project names in your config and let the skill resolve them to IDs at runtime.
- Skipping task ID tracking — If your agent creates a task and needs to update it later, it needs the task ID. Store IDs in OpenClaw's shared memory or as task comments so the agent can retrieve them in subsequent runs.
Frequently Asked Questions
Does the OpenClaw Todoist skill work with Todoist Free?
The skill works with any Todoist plan that provides API access. Free accounts get read/write access to tasks and projects via the REST API. Premium features like reminders and filters require a paid plan — the skill reflects whatever your account can access.
How do I get my Todoist API token for OpenClaw?
Open Todoist, go to Settings → Integrations → Developer, and copy your personal API token. Paste it into your OpenClaw skill config under api_token. Never share this token — it grants full read/write access to your entire Todoist account.
Can OpenClaw create tasks in a specific Todoist project?
Yes. Specify the project name in your skill configuration or pass it in your agent prompt. The skill resolves project names to IDs at runtime. You can also specify project_id directly — find it via the Todoist API or by inspecting the project URL in the web app.
Will OpenClaw mark tasks as complete automatically?
Yes, if you configure completion triggers in your agent instructions. The skill exposes a close_task action. Your agent can call this when it detects a task is done — after sending a drafted email, after a completed review. Completion requires an explicit trigger in your workflow.
Can the OpenClaw Todoist skill add due dates and priorities?
Yes. The skill supports full task metadata: due dates in natural language (today, next Monday, in 3 days), priority levels 1–4 matching Todoist's system, labels, and assignees for shared projects. Pass these as parameters in your agent's task creation prompt or set defaults in the skill config.
How many Todoist API calls does OpenClaw make per task operation?
Creating a task is one API call. Reading task lists is one call per project or filter. Completing a task is one call. OpenClaw batches where possible to stay within Todoist's rate limit of 450 requests per 15-minute window. Monitor usage in Todoist's developer console for high-volume workflows.
Can I use OpenClaw to sync tasks between Todoist and another tool?
Yes. Pair the Todoist skill with another integration skill in the same OpenClaw agent. The agent reads tasks from one system and writes them to another. Sync logic — filtering, deduplication, field mapping — lives in your agent instructions, giving you full control over what gets synced and when.
S. Rivera architects AI agent infrastructure for teams that need reliable, production-grade automation. Has deployed OpenClaw-Todoist integrations for engineering teams, executive assistants, and solo operators — and has seen every failure mode this combination can produce.