{
  "schemaVersion": "1.0",
  "item": {
    "slug": "todoist",
    "name": "Todoist",
    "source": "tencent",
    "type": "skill",
    "category": "效率提升",
    "sourceUrl": "https://clawhub.ai/mjrussell/todoist",
    "canonicalUrl": "https://clawhub.ai/mjrussell/todoist",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/todoist",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=todoist",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/todoist"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/todoist",
    "agentPageUrl": "https://openagent3.xyz/skills/todoist/agent",
    "manifestUrl": "https://openagent3.xyz/skills/todoist/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/todoist/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Todoist CLI",
        "body": "CLI for Todoist task management, built on the official TypeScript SDK."
      },
      {
        "title": "Installation",
        "body": "# Requires todoist-ts-cli >= 0.2.0 (for --top / --order)\nnpm install -g todoist-ts-cli@^0.2.0"
      },
      {
        "title": "Setup",
        "body": "Get API token from https://todoist.com/app/settings/integrations/developer\nEither:\ntodoist auth <your-token>\n# or\nexport TODOIST_API_TOKEN=\"your-token\""
      },
      {
        "title": "Tasks",
        "body": "todoist                    # Show today's tasks (default)\ntodoist today              # Same as above\ntodoist tasks              # List tasks (today + overdue)\ntodoist tasks --all        # All tasks\ntodoist tasks -p \"Work\"    # Tasks in project\ntodoist tasks -f \"p1\"      # Filter query (priority 1)\ntodoist tasks --json"
      },
      {
        "title": "Add Tasks",
        "body": "todoist add \"Buy groceries\"\ntodoist add \"Meeting\" --due \"tomorrow 10am\"\ntodoist add \"Review PR\" --due \"today\" --priority 1 --project \"Work\"\ntodoist add \"Prep slides\" --project \"Work\" --order 3  # add at a specific position (1-based)\ntodoist add \"Triage inbox\" --project \"Work\" --order top  # add to top (alternative to --top)\ntodoist add \"Call mom\" -d \"sunday\" -l \"family\"  # with label"
      },
      {
        "title": "Manage Tasks",
        "body": "todoist view <id>          # View task details\ntodoist done <id>          # Complete task\ntodoist reopen <id>        # Reopen completed task\ntodoist update <id> --due \"next week\"\ntodoist move <id> -p \"Personal\"\ntodoist delete <id>"
      },
      {
        "title": "Search",
        "body": "todoist search \"meeting\""
      },
      {
        "title": "Projects & Labels",
        "body": "todoist projects           # List projects\ntodoist project-add \"New Project\"\ntodoist labels             # List labels\ntodoist label-add \"urgent\""
      },
      {
        "title": "Comments",
        "body": "todoist comments <task-id>\ntodoist comment <task-id> \"Note about this task\""
      },
      {
        "title": "Usage Examples",
        "body": "User: \"What do I have to do today?\"\n\ntodoist today\n\nUser: \"Add 'buy milk' to my tasks\"\n\ntodoist add \"Buy milk\" --due \"today\"\n\nUser: \"Remind me to call the dentist tomorrow\"\n\ntodoist add \"Call the dentist\" --due \"tomorrow\"\n\nUser: \"Mark the grocery task as done\"\n\ntodoist search \"grocery\"   # Find task ID\ntodoist done <id>\n\nUser: \"What's on my work project?\"\n\ntodoist tasks -p \"Work\"\n\nUser: \"Show my high priority tasks\"\n\ntodoist tasks -f \"p1\""
      },
      {
        "title": "Filter Syntax",
        "body": "Todoist supports powerful filter queries:\n\np1, p2, p3, p4 - Priority levels\ntoday, tomorrow, overdue\n@label - Tasks with label\n#project - Tasks in project\nsearch: keyword - Search"
      },
      {
        "title": "Notes",
        "body": "Task IDs are shown in task listings\nDue dates support natural language (\"tomorrow\", \"next monday\", \"jan 15\")\nPriority 1 is highest, 4 is lowest\nUse --order <n> (1-based) or --order top to insert a task at a specific position within a project/section"
      }
    ],
    "body": "Todoist CLI\n\nCLI for Todoist task management, built on the official TypeScript SDK.\n\nInstallation\n# Requires todoist-ts-cli >= 0.2.0 (for --top / --order)\nnpm install -g todoist-ts-cli@^0.2.0\n\nSetup\nGet API token from https://todoist.com/app/settings/integrations/developer\nEither:\ntodoist auth <your-token>\n# or\nexport TODOIST_API_TOKEN=\"your-token\"\n\nCommands\nTasks\ntodoist                    # Show today's tasks (default)\ntodoist today              # Same as above\ntodoist tasks              # List tasks (today + overdue)\ntodoist tasks --all        # All tasks\ntodoist tasks -p \"Work\"    # Tasks in project\ntodoist tasks -f \"p1\"      # Filter query (priority 1)\ntodoist tasks --json\n\nAdd Tasks\ntodoist add \"Buy groceries\"\ntodoist add \"Meeting\" --due \"tomorrow 10am\"\ntodoist add \"Review PR\" --due \"today\" --priority 1 --project \"Work\"\ntodoist add \"Prep slides\" --project \"Work\" --order 3  # add at a specific position (1-based)\ntodoist add \"Triage inbox\" --project \"Work\" --order top  # add to top (alternative to --top)\ntodoist add \"Call mom\" -d \"sunday\" -l \"family\"  # with label\n\nManage Tasks\ntodoist view <id>          # View task details\ntodoist done <id>          # Complete task\ntodoist reopen <id>        # Reopen completed task\ntodoist update <id> --due \"next week\"\ntodoist move <id> -p \"Personal\"\ntodoist delete <id>\n\nSearch\ntodoist search \"meeting\"\n\nProjects & Labels\ntodoist projects           # List projects\ntodoist project-add \"New Project\"\ntodoist labels             # List labels\ntodoist label-add \"urgent\"\n\nComments\ntodoist comments <task-id>\ntodoist comment <task-id> \"Note about this task\"\n\nUsage Examples\n\nUser: \"What do I have to do today?\"\n\ntodoist today\n\n\nUser: \"Add 'buy milk' to my tasks\"\n\ntodoist add \"Buy milk\" --due \"today\"\n\n\nUser: \"Remind me to call the dentist tomorrow\"\n\ntodoist add \"Call the dentist\" --due \"tomorrow\"\n\n\nUser: \"Mark the grocery task as done\"\n\ntodoist search \"grocery\"   # Find task ID\ntodoist done <id>\n\n\nUser: \"What's on my work project?\"\n\ntodoist tasks -p \"Work\"\n\n\nUser: \"Show my high priority tasks\"\n\ntodoist tasks -f \"p1\"\n\nFilter Syntax\n\nTodoist supports powerful filter queries:\n\np1, p2, p3, p4 - Priority levels\ntoday, tomorrow, overdue\n@label - Tasks with label\n#project - Tasks in project\nsearch: keyword - Search\nNotes\nTask IDs are shown in task listings\nDue dates support natural language (\"tomorrow\", \"next monday\", \"jan 15\")\nPriority 1 is highest, 4 is lowest\nUse --order <n> (1-based) or --order top to insert a task at a specific position within a project/section"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/mjrussell/todoist",
    "publisherUrl": "https://clawhub.ai/mjrussell/todoist",
    "owner": "mjrussell",
    "version": "0.2.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/todoist",
    "downloadUrl": "https://openagent3.xyz/downloads/todoist",
    "agentUrl": "https://openagent3.xyz/skills/todoist/agent",
    "manifestUrl": "https://openagent3.xyz/skills/todoist/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/todoist/agent.md"
  }
}