{
  "schemaVersion": "1.0",
  "item": {
    "slug": "todoist-task-manager",
    "name": "Todoist Task Manager",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/2mawi2/todoist-task-manager",
    "canonicalUrl": "https://clawhub.ai/2mawi2/todoist-task-manager",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/todoist-task-manager",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=todoist-task-manager",
    "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-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-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-task-manager"
    },
    "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-task-manager",
    "agentPageUrl": "https://openagent3.xyz/skills/todoist-task-manager/agent",
    "manifestUrl": "https://openagent3.xyz/skills/todoist-task-manager/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/todoist-task-manager/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": "Use todoist to manage Todoist tasks directly from the terminal."
      },
      {
        "title": "Setup",
        "body": "Install: brew install todoist-cli\nGet your API token from https://app.todoist.com/app/settings/integrations/developer\nCreate config:\n\nmkdir -p ~/.config/todoist\necho '{\"token\": \"YOUR_API_TOKEN\"}' > ~/.config/todoist/config.json\n\nSync: todoist sync"
      },
      {
        "title": "List Tasks",
        "body": "todoist list                           # All tasks\ntodoist list --filter \"today\"          # Due today\ntodoist list --filter \"overdue\"        # Overdue tasks\ntodoist list --filter \"p1\"             # Priority 1 (highest)\ntodoist list --filter \"tomorrow\"       # Due tomorrow\ntodoist list --filter \"@work\"          # By label\ntodoist list --filter \"#Project\"       # By project\ntodoist list --filter \"(today | overdue) & p1\"  # Combined filters"
      },
      {
        "title": "Add Tasks",
        "body": "todoist add \"Buy milk\"                                    # Simple task\ntodoist add \"Call mom\" --priority 1                       # With priority (1=highest, 4=lowest)\ntodoist add \"Meeting\" --date \"tomorrow 3pm\"               # With due date\ntodoist add \"Report\" --project-name \"Work\"                # To specific project\ntodoist add \"Review\" --label-names \"urgent,review\"        # With labels\ntodoist quick \"Buy eggs tomorrow p1 #Shopping @errands\"   # Natural language"
      },
      {
        "title": "Modify Tasks",
        "body": "todoist modify TASK_ID --content \"New title\"\ntodoist modify TASK_ID --priority 2\ntodoist modify TASK_ID --date \"next monday\""
      },
      {
        "title": "Complete Tasks",
        "body": "todoist close TASK_ID              # Complete a task\ntodoist close TASK_ID TASK_ID2     # Complete multiple tasks"
      },
      {
        "title": "Delete Tasks",
        "body": "todoist delete TASK_ID"
      },
      {
        "title": "View Details",
        "body": "todoist show TASK_ID               # Show task details\ntodoist projects                   # List all projects\ntodoist labels                     # List all labels"
      },
      {
        "title": "Sync",
        "body": "todoist sync                       # Sync local cache with Todoist"
      },
      {
        "title": "Output Formats",
        "body": "todoist list --csv                 # CSV output for scripting\ntodoist list --color               # Colorized output\ntodoist list --namespace           # Show parent tasks as namespace\ntodoist list --indent              # Indent subtasks"
      },
      {
        "title": "Filter Syntax",
        "body": "Todoist CLI supports the official Todoist filter syntax:\n\nFilterDescriptiontodayDue todaytomorrowDue tomorrowoverduePast due dateno dateNo due datep1, p2, p3, p4Priority level@labelBy label#ProjectBy projectassigned to: meAssigned to you7 daysDue in next 7 days\n\nCombine with & (and), | (or), ! (not):\n\ntodoist list --filter \"(today | overdue) & p1\"\ntodoist list --filter \"#Work & !@done\""
      },
      {
        "title": "Notes",
        "body": "Run todoist sync after making changes in the web/mobile app\nTask IDs are numeric (e.g., 12345678)\nConfig stored in ~/.config/todoist/config.json\nCache stored in ~/.config/todoist/cache.json"
      }
    ],
    "body": "Todoist CLI\n\nUse todoist to manage Todoist tasks directly from the terminal.\n\nSetup\nInstall: brew install todoist-cli\nGet your API token from https://app.todoist.com/app/settings/integrations/developer\nCreate config:\nmkdir -p ~/.config/todoist\necho '{\"token\": \"YOUR_API_TOKEN\"}' > ~/.config/todoist/config.json\n\nSync: todoist sync\nList Tasks\ntodoist list                           # All tasks\ntodoist list --filter \"today\"          # Due today\ntodoist list --filter \"overdue\"        # Overdue tasks\ntodoist list --filter \"p1\"             # Priority 1 (highest)\ntodoist list --filter \"tomorrow\"       # Due tomorrow\ntodoist list --filter \"@work\"          # By label\ntodoist list --filter \"#Project\"       # By project\ntodoist list --filter \"(today | overdue) & p1\"  # Combined filters\n\nAdd Tasks\ntodoist add \"Buy milk\"                                    # Simple task\ntodoist add \"Call mom\" --priority 1                       # With priority (1=highest, 4=lowest)\ntodoist add \"Meeting\" --date \"tomorrow 3pm\"               # With due date\ntodoist add \"Report\" --project-name \"Work\"                # To specific project\ntodoist add \"Review\" --label-names \"urgent,review\"        # With labels\ntodoist quick \"Buy eggs tomorrow p1 #Shopping @errands\"   # Natural language\n\nModify Tasks\ntodoist modify TASK_ID --content \"New title\"\ntodoist modify TASK_ID --priority 2\ntodoist modify TASK_ID --date \"next monday\"\n\nComplete Tasks\ntodoist close TASK_ID              # Complete a task\ntodoist close TASK_ID TASK_ID2     # Complete multiple tasks\n\nDelete Tasks\ntodoist delete TASK_ID\n\nView Details\ntodoist show TASK_ID               # Show task details\ntodoist projects                   # List all projects\ntodoist labels                     # List all labels\n\nSync\ntodoist sync                       # Sync local cache with Todoist\n\nOutput Formats\ntodoist list --csv                 # CSV output for scripting\ntodoist list --color               # Colorized output\ntodoist list --namespace           # Show parent tasks as namespace\ntodoist list --indent              # Indent subtasks\n\nFilter Syntax\n\nTodoist CLI supports the official Todoist filter syntax:\n\nFilter\tDescription\ntoday\tDue today\ntomorrow\tDue tomorrow\noverdue\tPast due date\nno date\tNo due date\np1, p2, p3, p4\tPriority level\n@label\tBy label\n#Project\tBy project\nassigned to: me\tAssigned to you\n7 days\tDue in next 7 days\n\nCombine with & (and), | (or), ! (not):\n\ntodoist list --filter \"(today | overdue) & p1\"\ntodoist list --filter \"#Work & !@done\"\n\nNotes\nRun todoist sync after making changes in the web/mobile app\nTask IDs are numeric (e.g., 12345678)\nConfig stored in ~/.config/todoist/config.json\nCache stored in ~/.config/todoist/cache.json"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/2mawi2/todoist-task-manager",
    "publisherUrl": "https://clawhub.ai/2mawi2/todoist-task-manager",
    "owner": "2mawi2",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/todoist-task-manager",
    "downloadUrl": "https://openagent3.xyz/downloads/todoist-task-manager",
    "agentUrl": "https://openagent3.xyz/skills/todoist-task-manager/agent",
    "manifestUrl": "https://openagent3.xyz/skills/todoist-task-manager/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/todoist-task-manager/agent.md"
  }
}