Todoist CLI Setup Todoist can be configured headlessly with `kosmokrator integrations:configure todoist`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure todoist --set access_token=" $TODOIST_ACCESS_TOKEN " --enable --read allow --write ask --json
kosmokrator integrations:doctor todoist --json
kosmokrator integrations:status --json Credentials
Authentication type: Bearer token bearer_token. Configure credentials once, then use the same stored profile from
scripts, coding CLIs, Lua code mode, and the MCP gateway.
Call Todoist Headlessly Use the generic call form when another coding CLI or script needs a stable universal interface.
kosmo integrations:call todoist.todoist_close_task '{
"id": "example_id"
}' --json Use the provider shortcut form for shorter human-facing commands.
kosmo integrations:todoist todoist_close_task '{
"id": "example_id"
}' --json Agent Discovery Commands
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs todoist --json
kosmo integrations:docs todoist.todoist_close_task --json
kosmo integrations:schema todoist.todoist_close_task --json
kosmo integrations:search "Todoist" --json
kosmo integrations:list --json All CLI Functions
Every function below can be called headlessly. The generic form is stable across all integrations;
the provider shortcut is shorter but specific to Todoist.
todoist.todoist_close_task Write write Mark a task as completed (close it). The task will move to the completed view.
id kosmo integrations:call todoist.todoist_close_task '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_close_task '{"id":"example_id"}' --json copy
todoist.todoist_create_project Write write Create a new project in Todoist. Projects can be nested using parent_id.
name, parent_id, color, is_favorite, view_style kosmo integrations:call todoist.todoist_create_project '{"name":"example_name","parent_id":"example_parent_id","color":"example_color","is_favorite":true,"view_style":"example_view_style"}' --json copy kosmo integrations:todoist todoist_create_project '{"name":"example_name","parent_id":"example_parent_id","color":"example_color","is_favorite":true,"view_style":"example_view_style"}' --json copy
todoist.todoist_create_section Write write Create a new section within a Todoist project to organize tasks into groups.
name, project_id, order kosmo integrations:call todoist.todoist_create_section '{"name":"example_name","project_id":"example_project_id","order":1}' --json copy kosmo integrations:todoist todoist_create_section '{"name":"example_name","project_id":"example_project_id","order":1}' --json copy
todoist.todoist_create_task Write write Create a new task in Todoist.
content, description, project_id, section_id, parent_id, order, priority, labels, due_string, due_date, due_lang, assignee_id kosmo integrations:call todoist.todoist_create_task '{"content":"example_content","description":"example_description","project_id":"example_project_id","section_id":"example_section_id","parent_id":"example_parent_id","order":1,"priority":1,"labels":"example_labels"}' --json copy kosmo integrations:todoist todoist_create_task '{"content":"example_content","description":"example_description","project_id":"example_project_id","section_id":"example_section_id","parent_id":"example_parent_id","order":1,"priority":1,"labels":"example_labels"}' --json copy
todoist.todoist_delete_project Write write Permanently delete a project and all its tasks from Todoist. This action cannot be undone.
id kosmo integrations:call todoist.todoist_delete_project '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_delete_project '{"id":"example_id"}' --json copy
todoist.todoist_delete_section Write write Permanently delete a section from Todoist. This action cannot be undone.
id kosmo integrations:call todoist.todoist_delete_section '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_delete_section '{"id":"example_id"}' --json copy
todoist.todoist_delete_task Write write Permanently delete a task from Todoist. This action cannot be undone.
id kosmo integrations:call todoist.todoist_delete_task '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_delete_task '{"id":"example_id"}' --json copy
todoist.todoist_get_current_user Read read Get the currently authenticated Todoist user.
none kosmo integrations:call todoist.todoist_get_current_user '{}' --json copy kosmo integrations:todoist todoist_get_current_user '{}' --json copy
todoist.todoist_get_project Read read Get detailed information about a Todoist project.
id kosmo integrations:call todoist.todoist_get_project '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_get_project '{"id":"example_id"}' --json copy
todoist.todoist_get_section Read read Retrieve a single Todoist section by its ID.
id kosmo integrations:call todoist.todoist_get_section '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_get_section '{"id":"example_id"}' --json copy
todoist.todoist_get_task Read read Get detailed information about a Todoist task.
id kosmo integrations:call todoist.todoist_get_task '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_get_task '{"id":"example_id"}' --json copy
todoist.todoist_list_labels Read read List all personal labels in Todoist.
none kosmo integrations:call todoist.todoist_list_labels '{}' --json copy kosmo integrations:todoist todoist_list_labels '{}' --json copy
todoist.todoist_list_projects Read read List all projects in Todoist.
ids kosmo integrations:call todoist.todoist_list_projects '{"ids":"example_ids"}' --json copy kosmo integrations:todoist todoist_list_projects '{"ids":"example_ids"}' --json copy
todoist.todoist_list_sections Read read List all sections, optionally filtered by a specific project ID.
project_id kosmo integrations:call todoist.todoist_list_sections '{"project_id":"example_project_id"}' --json copy kosmo integrations:todoist todoist_list_sections '{"project_id":"example_project_id"}' --json copy
todoist.todoist_list_tasks Read read List tasks in Todoist with optional filters.
project_id, section_id, label, filter, lang, ids kosmo integrations:call todoist.todoist_list_tasks '{"project_id":"example_project_id","section_id":"example_section_id","label":"example_label","filter":"example_filter","lang":"example_lang","ids":"example_ids"}' --json copy kosmo integrations:todoist todoist_list_tasks '{"project_id":"example_project_id","section_id":"example_section_id","label":"example_label","filter":"example_filter","lang":"example_lang","ids":"example_ids"}' --json copy
todoist.todoist_quick_add Write write Add a task using Todoist's natural language quick-add. Examples: "Buy milk tomorrow", "Meeting with team every Monday @Work p1".
text, note, reminder, auto_reminder kosmo integrations:call todoist.todoist_quick_add '{"text":"example_text","note":"example_note","reminder":"example_reminder","auto_reminder":true}' --json copy kosmo integrations:todoist todoist_quick_add '{"text":"example_text","note":"example_note","reminder":"example_reminder","auto_reminder":true}' --json copy
todoist.todoist_reopen_task Write write Reopen a completed task, returning it to the active task list.
id kosmo integrations:call todoist.todoist_reopen_task '{"id":"example_id"}' --json copy kosmo integrations:todoist todoist_reopen_task '{"id":"example_id"}' --json copy
todoist.todoist_update_project Write write Update an existing project in Todoist. Only the fields provided will be changed.
id, name, color, is_favorite, view_style kosmo integrations:call todoist.todoist_update_project '{"id":"example_id","name":"example_name","color":"example_color","is_favorite":true,"view_style":"example_view_style"}' --json copy kosmo integrations:todoist todoist_update_project '{"id":"example_id","name":"example_name","color":"example_color","is_favorite":true,"view_style":"example_view_style"}' --json copy
todoist.todoist_update_task Write write Update an existing task in Todoist. Only the fields provided will be changed.
id, content, description, labels, priority, due_date kosmo integrations:call todoist.todoist_update_task '{"id":"example_id","content":"example_content","description":"example_description","labels":"example_labels","priority":1,"due_date":"example_due_date"}' --json copy kosmo integrations:todoist todoist_update_task '{"id":"example_id","content":"example_content","description":"example_description","labels":"example_labels","priority":1,"due_date":"example_due_date"}' --json copy Function Schemas Use these parameter tables when building CLI payloads without calling integrations:schema first.
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_close_task --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_create_comment --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_create_project --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_create_section --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_create_task --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_delete_project --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_delete_section --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_delete_task --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_get_current_user --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_get_project --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_get_section --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_get_task --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_list_comments --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_list_labels --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_list_projects --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_list_sections --json
Operation Read read
Schema command kosmo integrations:schema todoist.todoist_list_tasks --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_quick_add --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_reopen_task --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_update_project --json
Operation Write write
Schema command kosmo integrations:schema todoist.todoist_update_task --json Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults
with integrations:configure. Add --force only for trusted automation that should bypass that policy.