KosmoKrator

productivity

TickTick CLI for AI Agents

Use the TickTick CLI from KosmoKrator to call TickTick tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.

TickTick CLI Setup

TickTick is discoverable, but headless credential setup is not fully supported yet.

Headless setup is limited for this integration. It remains documented because stored credentials or future proxy-backed execution can still make the runtime useful.

Install, configure, and verify
# 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 ticktick --set access_token="$TICKTICK_ACCESS_TOKEN" --enable --read allow --write ask --json
kosmokrator integrations:doctor ticktick --json
kosmokrator integrations:status --json

Credentials

Authentication type: OAuth browser flow oauth2_authorization_code. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.

KeyEnv varTypeRequiredLabel
access_token TICKTICK_ACCESS_TOKEN OAuth token oauth yes Access Token

Command Patterns

The generic command is stable across every integration. The provider shortcut is shorter for humans.

Generic CLI call
kosmo integrations:call ticktick.ticktick_list_projects '{}' --json
Provider shortcut
kosmo integrations:ticktick ticktick_list_projects '{}' --json

Discovery

These commands return structured output for coding agents that need to inspect capabilities before choosing a function.

Discovery commands
kosmo integrations:docs ticktick --json
kosmo integrations:docs ticktick.ticktick_list_projects --json
kosmo integrations:schema ticktick.ticktick_list_projects --json
kosmo integrations:search "TickTick" --json
kosmo integrations:list --json

Automation Contexts

The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.

CLI Functions

Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.

ticktick.ticktick_list_projects

List all TickTick projects (task lists). Returns project names, IDs, and metadata. Use this first to discover available projects before working with tasks.

Read read
Parameters
none
Generic call
kosmo integrations:call ticktick.ticktick_list_projects '{}' --json
Shortcut
kosmo integrations:ticktick ticktick_list_projects '{}' --json

ticktick.ticktick_get_project

Get a TickTick project with all its tasks, sections, and columns. Use this to see everything in a project at once.

Read read
Parameters
project_id
Generic call
kosmo integrations:call ticktick.ticktick_get_project '{"project_id":"example_project_id"}' --json
Shortcut
kosmo integrations:ticktick ticktick_get_project '{"project_id":"example_project_id"}' --json

ticktick.ticktick_create_project

Create a new TickTick project (task list).

Write write
Parameters
name, color, view_mode
Generic call
kosmo integrations:call ticktick.ticktick_create_project '{"name":"example_name","color":"example_color","view_mode":"example_view_mode"}' --json
Shortcut
kosmo integrations:ticktick ticktick_create_project '{"name":"example_name","color":"example_color","view_mode":"example_view_mode"}' --json

ticktick.ticktick_delete_project

Delete a TickTick project and all its tasks. This action cannot be undone.

Write write
Parameters
project_id
Generic call
kosmo integrations:call ticktick.ticktick_delete_project '{"project_id":"example_project_id"}' --json
Shortcut
kosmo integrations:ticktick ticktick_delete_project '{"project_id":"example_project_id"}' --json

ticktick.ticktick_get_tasks

Get all tasks in a TickTick project. Returns task titles, IDs, priorities, due dates, and subtasks.

Read read
Parameters
project_id
Generic call
kosmo integrations:call ticktick.ticktick_get_tasks '{"project_id":"example_project_id"}' --json
Shortcut
kosmo integrations:ticktick ticktick_get_tasks '{"project_id":"example_project_id"}' --json

ticktick.ticktick_create_task

Create a new task in TickTick. If no project_id is given, the task goes to the Inbox. Supports subtasks via the items array.

Write write
Parameters
title, project_id, content, start_date, due_date, priority, is_all_day, items
Generic call
kosmo integrations:call ticktick.ticktick_create_task '{"title":"example_title","project_id":"example_project_id","content":"example_content","start_date":"example_start_date","due_date":"example_due_date","priority":1,"is_all_day":true,"items":"example_items"}' --json
Shortcut
kosmo integrations:ticktick ticktick_create_task '{"title":"example_title","project_id":"example_project_id","content":"example_content","start_date":"example_start_date","due_date":"example_due_date","priority":1,"is_all_day":true,"items":"example_items"}' --json

ticktick.ticktick_update_task

Update an existing TickTick task. Requires both the task ID and its project ID. Only provided fields will be changed.

Write write
Parameters
task_id, project_id, title, content, start_date, due_date, priority
Generic call
kosmo integrations:call ticktick.ticktick_update_task '{"task_id":"example_task_id","project_id":"example_project_id","title":"example_title","content":"example_content","start_date":"example_start_date","due_date":"example_due_date","priority":1}' --json
Shortcut
kosmo integrations:ticktick ticktick_update_task '{"task_id":"example_task_id","project_id":"example_project_id","title":"example_title","content":"example_content","start_date":"example_start_date","due_date":"example_due_date","priority":1}' --json

ticktick.ticktick_complete_task

Mark a TickTick task as complete.

Write write
Parameters
project_id, task_id
Generic call
kosmo integrations:call ticktick.ticktick_complete_task '{"project_id":"example_project_id","task_id":"example_task_id"}' --json
Shortcut
kosmo integrations:ticktick ticktick_complete_task '{"project_id":"example_project_id","task_id":"example_task_id"}' --json

ticktick.ticktick_delete_task

Delete a TickTick task. This action cannot be undone.

Write write
Parameters
project_id, task_id
Generic call
kosmo integrations:call ticktick.ticktick_delete_task '{"project_id":"example_project_id","task_id":"example_task_id"}' --json
Shortcut
kosmo integrations:ticktick ticktick_delete_task '{"project_id":"example_project_id","task_id":"example_task_id"}' --json

Function Schemas

Use these parameter tables when building CLI payloads without calling integrations:schema first.

ticktick.ticktick_list_projects 0 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_list_projects --json
ParameterTypeRequiredDescription
No parameters.
ticktick.ticktick_get_project 1 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_get_project --json
ParameterTypeRequiredDescription
project_id string yes The project ID. Use ticktick_list_projects to find project IDs.
ticktick.ticktick_create_project 3 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_create_project --json
ParameterTypeRequiredDescription
name string yes Name of the project.
color string no Color of the project (e.g., "#ff8c00").
view_mode string no View mode: "list", "kanban", or "timeline".
ticktick.ticktick_delete_project 1 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_delete_project --json
ParameterTypeRequiredDescription
project_id string yes The project ID to delete. Use ticktick_list_projects to find project IDs.
ticktick.ticktick_get_tasks 1 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_get_tasks --json
ParameterTypeRequiredDescription
project_id string yes The project ID to get tasks from. Use ticktick_list_projects to find project IDs.
ticktick.ticktick_create_task 8 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_create_task --json
ParameterTypeRequiredDescription
title string yes Task title.
project_id string no Project ID to create the task in. Omit to add to Inbox.
content string no Task description/notes.
start_date string no Start date in ISO 8601 format (e.g., "2026-02-15T09:00:00+0000").
due_date string no Due date in ISO 8601 format (e.g., "2026-02-15T17:00:00+0000").
priority integer no Priority: 0 = none, 1 = low, 3 = medium, 5 = high.
is_all_day boolean no Whether this is an all-day task (true) or has specific times (false).
items string no JSON array of subtasks, e.g., [{"title": "Subtask 1", "status": 0}]. Status: 0 = unchecked, 2 = checked.
ticktick.ticktick_update_task 7 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_update_task --json
ParameterTypeRequiredDescription
task_id string yes The task ID to update.
project_id string yes The project ID the task belongs to.
title string no New title for the task.
content string no New description/notes for the task.
start_date string no New start date in ISO 8601 format.
due_date string no New due date in ISO 8601 format.
priority integer no New priority: 0 = none, 1 = low, 3 = medium, 5 = high.
ticktick.ticktick_complete_task 2 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_complete_task --json
ParameterTypeRequiredDescription
project_id string yes The project ID the task belongs to.
task_id string yes The task ID to complete.
ticktick.ticktick_delete_task 2 parameters
Schema command
kosmo integrations:schema ticktick.ticktick_delete_task --json
ParameterTypeRequiredDescription
project_id string yes The project ID the task belongs to.
task_id string yes The task ID to delete.

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.