{
  "schemaVersion": "1.0",
  "item": {
    "slug": "gtasks-cli",
    "name": "gtasks-cli",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/BRO3886/gtasks-cli",
    "canonicalUrl": "https://clawhub.ai/BRO3886/gtasks-cli",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/gtasks-cli",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=gtasks-cli",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "references/QUICK-REFERENCE.md",
      "references/ADVANCED.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",
      "slug": "gtasks-cli",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-12T02:31:39.796Z",
      "expiresAt": "2026-05-19T02:31:39.796Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=gtasks-cli",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=gtasks-cli",
        "contentDisposition": "attachment; filename=\"gtasks-cli-1.0.2.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "gtasks-cli"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/gtasks-cli"
    },
    "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/gtasks-cli",
    "agentPageUrl": "https://openagent3.xyz/skills/gtasks-cli/agent",
    "manifestUrl": "https://openagent3.xyz/skills/gtasks-cli/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/gtasks-cli/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": "Google Tasks CLI Skill",
        "body": "This skill enables you to manage Google Tasks directly from the command line using the gtasks CLI tool."
      },
      {
        "title": "Prerequisites",
        "body": "Before using any commands, ensure the following requirements are met:"
      },
      {
        "title": "1. GTasks Installation",
        "body": "Check if gtasks is installed on the system:\n\n# Cross-platform check (works on macOS, Linux, Windows Git Bash)\ngtasks --version 2>/dev/null || gtasks.exe --version 2>/dev/null || echo \"gtasks not found\"\n\n# Or use which/where commands\n# macOS/Linux:\nwhich gtasks\n\n# Windows (Command Prompt):\nwhere gtasks\n\n# Windows (PowerShell):\nGet-Command gtasks\n\nIf gtasks is not installed:\n\nDownload the binary for your system from GitHub Releases\nInstall it:\n\nmacOS/Linux: Move to /usr/local/bin or add to PATH\nWindows: Add to a folder in your PATH environment variable\n\n\nVerify installation: gtasks --version\n\nIMPORTANT for Agents: Always check if gtasks is installed before attempting to use it. If the command is not found, inform the user and provide installation instructions."
      },
      {
        "title": "2. Environment Variables",
        "body": "Set up Google OAuth2 credentials as environment variables:\n\nexport GTASKS_CLIENT_ID=\"your-client-id.apps.googleusercontent.com\"\nexport GTASKS_CLIENT_SECRET=\"your-client-secret\"\n\nHow to get credentials:\n\nGo to Google Cloud Console\nCreate a new project or select an existing one\nEnable the Google Tasks API\nCreate OAuth2 credentials (Application type: \"Desktop app\")\nNote the authorized redirect URIs that gtasks uses:\n\nhttp://localhost:8080/callback\nhttp://localhost:8081/callback\nhttp://localhost:8082/callback\nhttp://localhost:9090/callback\nhttp://localhost:9091/callback\n\nFor persistent setup, use a secrets manager or a ~/.env file with restrictive permissions — do not commit these values to version control or add them to shared shell profile files:\n\n# Recommended: store in a file with restricted permissions\necho 'export GTASKS_CLIENT_ID=\"your-client-id\"' >> ~/.gtasks_env\necho 'export GTASKS_CLIENT_SECRET=\"your-client-secret\"' >> ~/.gtasks_env\nchmod 600 ~/.gtasks_env\n# Source it from your shell profile\necho 'source ~/.gtasks_env' >> ~/.zshrc"
      },
      {
        "title": "2. Authentication",
        "body": "Once environment variables are set, authenticate with Google:\n\ngtasks login\n\nThis will open a browser for OAuth2 authentication. The token is stored in ~/.gtasks/token.json with 0600 permissions. Verify with ls -la ~/.gtasks/token.json. If you no longer need access, run gtasks logout to revoke and delete the token."
      },
      {
        "title": "Core Concepts",
        "body": "Task Lists: Containers that hold tasks (like \"Work\", \"Personal\", \"Shopping\")\nTasks: Individual to-do items within a task list\nTask Properties: Title (required), notes/description (optional), due date (optional), status (pending/completed)"
      },
      {
        "title": "Command Structure",
        "body": "All commands follow this pattern:\n\ngtasks [command] [subcommand] [flags] [arguments]"
      },
      {
        "title": "Login",
        "body": "gtasks login\n\nOpens browser for Google OAuth2 authentication. Required before using any other commands."
      },
      {
        "title": "Logout",
        "body": "gtasks logout\n\nRemoves stored credentials from ~/.gtasks/token.json."
      },
      {
        "title": "View All Task Lists",
        "body": "gtasks tasklists view\n\nDisplays all task lists with numbered indices.\n\nOutput Example:\n\n[1] My Tasks\n[2] Work\n[3] Personal"
      },
      {
        "title": "Create a Task List",
        "body": "gtasks tasklists add -t \"Work Projects\"\ngtasks tasklists add --title \"Shopping List\"\n\nCreates a new task list with the specified title.\n\nFlags:\n\n-t, --title: Task list title (required)"
      },
      {
        "title": "Delete a Task List",
        "body": "gtasks tasklists rm\n\nInteractive prompt to select and delete a task list."
      },
      {
        "title": "Update Task List Title",
        "body": "gtasks tasklists update -t \"New Title\"\n\nInteractive prompt to select a task list and update its title.\n\nFlags:\n\n-t, --title: New title for the task list (required)"
      },
      {
        "title": "Task Management",
        "body": "All task commands can optionally specify a task list using the -l flag. If omitted, you'll be prompted to select one interactively."
      },
      {
        "title": "View Tasks",
        "body": "Basic view:\n\ngtasks tasks view\ngtasks tasks view -l \"Work\"\n\nInclude completed tasks:\n\ngtasks tasks view --include-completed\ngtasks tasks view -i\n\nShow only completed tasks:\n\ngtasks tasks view --completed\n\nSort tasks:\n\ngtasks tasks view --sort=due        # Sort by due date\ngtasks tasks view --sort=title      # Sort by title\ngtasks tasks view --sort=position   # Sort by position (default)\n\nOutput formats:\n\ngtasks tasks view --format=table    # Table format (default)\ngtasks tasks view --format=json     # JSON output\ngtasks tasks view --format=csv      # CSV output\n\nTable Output Example:\n\nTasks in Work:\nNo  Title              Description         Status     Due\n1   Finish report      Q4 analysis         pending    25 December 2024\n2   Team meeting       Weekly sync         pending    -\n3   Code review        PR #123            completed  20 December 2024\n\nJSON Output Example:\n\n[\n  {\n    \"number\": 1,\n    \"title\": \"Finish report\",\n    \"description\": \"Q4 analysis\",\n    \"status\": \"pending\",\n    \"due\": \"2024-12-25\"\n  }\n]"
      },
      {
        "title": "Create a Task",
        "body": "Interactive mode:\n\ngtasks tasks add\ngtasks tasks add -l \"Work\"\n\nPrompts for title, notes, and due date.\n\nFlag mode:\n\ngtasks tasks add -t \"Buy groceries\"\ngtasks tasks add -t \"Finish report\" -n \"Q4 analysis\" -d \"2024-12-25\"\ngtasks tasks add -t \"Call dentist\" -d \"tomorrow\"\ngtasks tasks add -t \"Team meeting\" -d \"Dec 25\"\n\nFlags:\n\n-t, --title: Task title (required for non-interactive mode)\n-n, --note: Task notes/description (optional)\n-d, --due: Due date (optional, flexible format)\n\nDate Format Examples:\nThe date parser supports many formats:\n\n2024-12-25 (ISO format)\nDec 25, 2024\nDecember 25\ntomorrow\nnext Friday\n12/25/2024\n\nSee dateparse examples for all supported formats."
      },
      {
        "title": "Mark Task as Complete",
        "body": "With task number:\n\ngtasks tasks done 1\ngtasks tasks done 3 -l \"Work\"\n\nInteractive mode:\n\ngtasks tasks done\ngtasks tasks done -l \"Personal\"\n\nPrompts to select a task from the list."
      },
      {
        "title": "Delete a Task",
        "body": "With task number:\n\ngtasks tasks rm 2\ngtasks tasks rm 1 -l \"Shopping\"\n\nInteractive mode:\n\ngtasks tasks rm\ngtasks tasks rm -l \"Work\"\n\nPrompts to select a task to delete."
      },
      {
        "title": "View Task Details",
        "body": "With task number:\n\ngtasks tasks info 1\ngtasks tasks info 3 -l \"Work\"\n\nInteractive mode:\n\ngtasks tasks info\ngtasks tasks info -l \"Personal\"\n\nOutput Example:\n\nTask: Finish report\nStatus: Needs action\nDue: 25 December 2024\nNotes: Complete Q4 analysis and submit to manager\n\nLinks:\n  - https://docs.google.com/document/d/...\n\nView in Google Tasks: https://tasks.google.com/..."
      },
      {
        "title": "Quick Task Creation",
        "body": "When a user says \"add a task to my work list\":\n\ngtasks tasks add -l \"Work\" -t \"Task title\""
      },
      {
        "title": "Check Today's Tasks",
        "body": "gtasks tasks view --sort=due"
      },
      {
        "title": "Complete Multiple Tasks",
        "body": "gtasks tasks done -l \"Work\"\n# Interactive prompt appears, select task\ngtasks tasks done -l \"Work\"\n# Repeat as needed"
      },
      {
        "title": "View All Tasks Across Lists",
        "body": "Run view command multiple times for each list, or first list all task lists:\n\ngtasks tasklists view\ngtasks tasks view -l \"Work\"\ngtasks tasks view -l \"Personal\""
      },
      {
        "title": "Export Tasks",
        "body": "gtasks tasks view --format=json > tasks.json\ngtasks tasks view --format=csv > tasks.csv"
      },
      {
        "title": "Best Practices",
        "body": "Always check authentication first: If commands fail with authentication errors, run gtasks login\n\n\nUse task list flag for automation: When scripting or when the user specifies a list name, use -l flag to avoid interactive prompts\n\n\nLeverage flexible date parsing: The --due flag accepts natural language dates like \"tomorrow\", \"next week\", etc.\n\n\nUse appropriate output format:\n\nTable format for human-readable output\nJSON for parsing/integration with other tools\nCSV for spreadsheet import\n\n\n\nTask numbers are ephemeral: Task numbers change when tasks are added, completed, or deleted. Always view the list first to get current numbers.\n\n\nHandle missing lists gracefully: If a user specifies a non-existent list name, the command will error. Always verify list names first with gtasks tasklists view."
      },
      {
        "title": "Error Handling",
        "body": "Common errors and solutions:\n\n\"Failed to get service\" or Authentication errors:\n\nFirst, ensure environment variables are set: echo $GTASKS_CLIENT_ID\nIf variables are not set, export them (see Prerequisites section)\nThen run gtasks login to authenticate\n\n\n\"incorrect task-list name\": The specified list name doesn't exist. Use gtasks tasklists view to see available lists\n\"Incorrect task number\": The task number is invalid. Use gtasks tasks view to see current task numbers\n\"Date format incorrect\": The date string couldn't be parsed. Use formats like \"2024-12-25\", \"tomorrow\", or \"Dec 25\""
      },
      {
        "title": "Example 1: Create a shopping list and add items",
        "body": "gtasks tasklists add -t \"Shopping\"\ngtasks tasks add -l \"Shopping\" -t \"Milk\"\ngtasks tasks add -l \"Shopping\" -t \"Bread\"\ngtasks tasks add -l \"Shopping\" -t \"Eggs\""
      },
      {
        "title": "Example 2: Review and complete work tasks",
        "body": "gtasks tasks view -l \"Work\" --sort=due\ngtasks tasks done 1 -l \"Work\""
      },
      {
        "title": "Example 3: Add task with deadline",
        "body": "gtasks tasks add -l \"Work\" -t \"Submit proposal\" -n \"Include budget and timeline\" -d \"next Friday\""
      },
      {
        "title": "Example 4: Export completed tasks",
        "body": "gtasks tasks view --completed --format=json -l \"Work\" > completed_work.json"
      },
      {
        "title": "Before Running Any Commands",
        "body": "Check gtasks installation first:\n# Try to run gtasks version check\ngtasks --version 2>/dev/null || gtasks.exe --version 2>/dev/null\n\nIf this fails, inform the user that gtasks is not installed and provide installation instructions from the Prerequisites section.\n\n\nVerify environment variables are set:\n# Check if variables exist (macOS/Linux)\n[ -n \"$GTASKS_CLIENT_ID\" ] && echo \"GTASKS_CLIENT_ID is set\" || echo \"GTASKS_CLIENT_ID is not set\"\n[ -n \"$GTASKS_CLIENT_SECRET\" ] && echo \"GTASKS_CLIENT_SECRET is set\" || echo \"GTASKS_CLIENT_SECRET is not set\"\n\n# Windows PowerShell\nif ($env:GTASKS_CLIENT_ID) { \"GTASKS_CLIENT_ID is set\" } else { \"GTASKS_CLIENT_ID is not set\" }\nif ($env:GTASKS_CLIENT_SECRET) { \"GTASKS_CLIENT_SECRET is set\" } else { \"GTASKS_CLIENT_SECRET is not set\" }\n\n\n\nCheck authentication status:\ngtasks tasklists view &>/dev/null && echo \"Authenticated\" || echo \"Not authenticated - run 'gtasks login'\""
      },
      {
        "title": "General Tips",
        "body": "When the user mentions \"tasks\" without specifying a tool, ask if they want to use Google Tasks\nIf the user asks about their tasks, first run gtasks tasklists view to see available lists\nAlways confirm which task list to use if not specified by the user\nWhen creating tasks with dates, prefer explicit date formats (YYYY-MM-DD) over relative terms for clarity\nRemember that task numbers are 1-indexed and change after modifications\nIf a command requires interaction but you're running non-interactively, use flags to provide all required information"
      }
    ],
    "body": "Google Tasks CLI Skill\n\nThis skill enables you to manage Google Tasks directly from the command line using the gtasks CLI tool.\n\nPrerequisites\n\nBefore using any commands, ensure the following requirements are met:\n\n1. GTasks Installation\n\nCheck if gtasks is installed on the system:\n\n# Cross-platform check (works on macOS, Linux, Windows Git Bash)\ngtasks --version 2>/dev/null || gtasks.exe --version 2>/dev/null || echo \"gtasks not found\"\n\n# Or use which/where commands\n# macOS/Linux:\nwhich gtasks\n\n# Windows (Command Prompt):\nwhere gtasks\n\n# Windows (PowerShell):\nGet-Command gtasks\n\n\nIf gtasks is not installed:\n\nDownload the binary for your system from GitHub Releases\nInstall it:\nmacOS/Linux: Move to /usr/local/bin or add to PATH\nWindows: Add to a folder in your PATH environment variable\nVerify installation: gtasks --version\n\nIMPORTANT for Agents: Always check if gtasks is installed before attempting to use it. If the command is not found, inform the user and provide installation instructions.\n\n2. Environment Variables\n\nSet up Google OAuth2 credentials as environment variables:\n\nexport GTASKS_CLIENT_ID=\"your-client-id.apps.googleusercontent.com\"\nexport GTASKS_CLIENT_SECRET=\"your-client-secret\"\n\n\nHow to get credentials:\n\nGo to Google Cloud Console\nCreate a new project or select an existing one\nEnable the Google Tasks API\nCreate OAuth2 credentials (Application type: \"Desktop app\")\nNote the authorized redirect URIs that gtasks uses:\nhttp://localhost:8080/callback\nhttp://localhost:8081/callback\nhttp://localhost:8082/callback\nhttp://localhost:9090/callback\nhttp://localhost:9091/callback\n\nFor persistent setup, use a secrets manager or a ~/.env file with restrictive permissions — do not commit these values to version control or add them to shared shell profile files:\n\n# Recommended: store in a file with restricted permissions\necho 'export GTASKS_CLIENT_ID=\"your-client-id\"' >> ~/.gtasks_env\necho 'export GTASKS_CLIENT_SECRET=\"your-client-secret\"' >> ~/.gtasks_env\nchmod 600 ~/.gtasks_env\n# Source it from your shell profile\necho 'source ~/.gtasks_env' >> ~/.zshrc\n\n2. Authentication\n\nOnce environment variables are set, authenticate with Google:\n\ngtasks login\n\n\nThis will open a browser for OAuth2 authentication. The token is stored in ~/.gtasks/token.json with 0600 permissions. Verify with ls -la ~/.gtasks/token.json. If you no longer need access, run gtasks logout to revoke and delete the token.\n\nCore Concepts\nTask Lists: Containers that hold tasks (like \"Work\", \"Personal\", \"Shopping\")\nTasks: Individual to-do items within a task list\nTask Properties: Title (required), notes/description (optional), due date (optional), status (pending/completed)\nCommand Structure\n\nAll commands follow this pattern:\n\ngtasks [command] [subcommand] [flags] [arguments]\n\nAuthentication\nLogin\ngtasks login\n\n\nOpens browser for Google OAuth2 authentication. Required before using any other commands.\n\nLogout\ngtasks logout\n\n\nRemoves stored credentials from ~/.gtasks/token.json.\n\nTask List Management\nView All Task Lists\ngtasks tasklists view\n\n\nDisplays all task lists with numbered indices.\n\nOutput Example:\n\n[1] My Tasks\n[2] Work\n[3] Personal\n\nCreate a Task List\ngtasks tasklists add -t \"Work Projects\"\ngtasks tasklists add --title \"Shopping List\"\n\n\nCreates a new task list with the specified title.\n\nFlags:\n\n-t, --title: Task list title (required)\nDelete a Task List\ngtasks tasklists rm\n\n\nInteractive prompt to select and delete a task list.\n\nUpdate Task List Title\ngtasks tasklists update -t \"New Title\"\n\n\nInteractive prompt to select a task list and update its title.\n\nFlags:\n\n-t, --title: New title for the task list (required)\nTask Management\n\nAll task commands can optionally specify a task list using the -l flag. If omitted, you'll be prompted to select one interactively.\n\nView Tasks\n\nBasic view:\n\ngtasks tasks view\ngtasks tasks view -l \"Work\"\n\n\nInclude completed tasks:\n\ngtasks tasks view --include-completed\ngtasks tasks view -i\n\n\nShow only completed tasks:\n\ngtasks tasks view --completed\n\n\nSort tasks:\n\ngtasks tasks view --sort=due        # Sort by due date\ngtasks tasks view --sort=title      # Sort by title\ngtasks tasks view --sort=position   # Sort by position (default)\n\n\nOutput formats:\n\ngtasks tasks view --format=table    # Table format (default)\ngtasks tasks view --format=json     # JSON output\ngtasks tasks view --format=csv      # CSV output\n\n\nTable Output Example:\n\nTasks in Work:\nNo  Title              Description         Status     Due\n1   Finish report      Q4 analysis         pending    25 December 2024\n2   Team meeting       Weekly sync         pending    -\n3   Code review        PR #123            completed  20 December 2024\n\n\nJSON Output Example:\n\n[\n  {\n    \"number\": 1,\n    \"title\": \"Finish report\",\n    \"description\": \"Q4 analysis\",\n    \"status\": \"pending\",\n    \"due\": \"2024-12-25\"\n  }\n]\n\nCreate a Task\n\nInteractive mode:\n\ngtasks tasks add\ngtasks tasks add -l \"Work\"\n\n\nPrompts for title, notes, and due date.\n\nFlag mode:\n\ngtasks tasks add -t \"Buy groceries\"\ngtasks tasks add -t \"Finish report\" -n \"Q4 analysis\" -d \"2024-12-25\"\ngtasks tasks add -t \"Call dentist\" -d \"tomorrow\"\ngtasks tasks add -t \"Team meeting\" -d \"Dec 25\"\n\n\nFlags:\n\n-t, --title: Task title (required for non-interactive mode)\n-n, --note: Task notes/description (optional)\n-d, --due: Due date (optional, flexible format)\n\nDate Format Examples: The date parser supports many formats:\n\n2024-12-25 (ISO format)\nDec 25, 2024\nDecember 25\ntomorrow\nnext Friday\n12/25/2024\n\nSee dateparse examples for all supported formats.\n\nMark Task as Complete\n\nWith task number:\n\ngtasks tasks done 1\ngtasks tasks done 3 -l \"Work\"\n\n\nInteractive mode:\n\ngtasks tasks done\ngtasks tasks done -l \"Personal\"\n\n\nPrompts to select a task from the list.\n\nDelete a Task\n\nWith task number:\n\ngtasks tasks rm 2\ngtasks tasks rm 1 -l \"Shopping\"\n\n\nInteractive mode:\n\ngtasks tasks rm\ngtasks tasks rm -l \"Work\"\n\n\nPrompts to select a task to delete.\n\nView Task Details\n\nWith task number:\n\ngtasks tasks info 1\ngtasks tasks info 3 -l \"Work\"\n\n\nInteractive mode:\n\ngtasks tasks info\ngtasks tasks info -l \"Personal\"\n\n\nOutput Example:\n\nTask: Finish report\nStatus: Needs action\nDue: 25 December 2024\nNotes: Complete Q4 analysis and submit to manager\n\nLinks:\n  - https://docs.google.com/document/d/...\n\nView in Google Tasks: https://tasks.google.com/...\n\nCommon Workflows\nQuick Task Creation\n\nWhen a user says \"add a task to my work list\":\n\ngtasks tasks add -l \"Work\" -t \"Task title\"\n\nCheck Today's Tasks\ngtasks tasks view --sort=due\n\nComplete Multiple Tasks\ngtasks tasks done -l \"Work\"\n# Interactive prompt appears, select task\ngtasks tasks done -l \"Work\"\n# Repeat as needed\n\nView All Tasks Across Lists\n\nRun view command multiple times for each list, or first list all task lists:\n\ngtasks tasklists view\ngtasks tasks view -l \"Work\"\ngtasks tasks view -l \"Personal\"\n\nExport Tasks\ngtasks tasks view --format=json > tasks.json\ngtasks tasks view --format=csv > tasks.csv\n\nBest Practices\n\nAlways check authentication first: If commands fail with authentication errors, run gtasks login\n\nUse task list flag for automation: When scripting or when the user specifies a list name, use -l flag to avoid interactive prompts\n\nLeverage flexible date parsing: The --due flag accepts natural language dates like \"tomorrow\", \"next week\", etc.\n\nUse appropriate output format:\n\nTable format for human-readable output\nJSON for parsing/integration with other tools\nCSV for spreadsheet import\n\nTask numbers are ephemeral: Task numbers change when tasks are added, completed, or deleted. Always view the list first to get current numbers.\n\nHandle missing lists gracefully: If a user specifies a non-existent list name, the command will error. Always verify list names first with gtasks tasklists view.\n\nError Handling\n\nCommon errors and solutions:\n\n\"Failed to get service\" or Authentication errors:\nFirst, ensure environment variables are set: echo $GTASKS_CLIENT_ID\nIf variables are not set, export them (see Prerequisites section)\nThen run gtasks login to authenticate\n\"incorrect task-list name\": The specified list name doesn't exist. Use gtasks tasklists view to see available lists\n\"Incorrect task number\": The task number is invalid. Use gtasks tasks view to see current task numbers\n\"Date format incorrect\": The date string couldn't be parsed. Use formats like \"2024-12-25\", \"tomorrow\", or \"Dec 25\"\nExamples\nExample 1: Create a shopping list and add items\ngtasks tasklists add -t \"Shopping\"\ngtasks tasks add -l \"Shopping\" -t \"Milk\"\ngtasks tasks add -l \"Shopping\" -t \"Bread\"\ngtasks tasks add -l \"Shopping\" -t \"Eggs\"\n\nExample 2: Review and complete work tasks\ngtasks tasks view -l \"Work\" --sort=due\ngtasks tasks done 1 -l \"Work\"\n\nExample 3: Add task with deadline\ngtasks tasks add -l \"Work\" -t \"Submit proposal\" -n \"Include budget and timeline\" -d \"next Friday\"\n\nExample 4: Export completed tasks\ngtasks tasks view --completed --format=json -l \"Work\" > completed_work.json\n\nTips for Agents\nBefore Running Any Commands\n\nCheck gtasks installation first:\n\n# Try to run gtasks version check\ngtasks --version 2>/dev/null || gtasks.exe --version 2>/dev/null\n\n\nIf this fails, inform the user that gtasks is not installed and provide installation instructions from the Prerequisites section.\n\nVerify environment variables are set:\n\n# Check if variables exist (macOS/Linux)\n[ -n \"$GTASKS_CLIENT_ID\" ] && echo \"GTASKS_CLIENT_ID is set\" || echo \"GTASKS_CLIENT_ID is not set\"\n[ -n \"$GTASKS_CLIENT_SECRET\" ] && echo \"GTASKS_CLIENT_SECRET is set\" || echo \"GTASKS_CLIENT_SECRET is not set\"\n\n# Windows PowerShell\nif ($env:GTASKS_CLIENT_ID) { \"GTASKS_CLIENT_ID is set\" } else { \"GTASKS_CLIENT_ID is not set\" }\nif ($env:GTASKS_CLIENT_SECRET) { \"GTASKS_CLIENT_SECRET is set\" } else { \"GTASKS_CLIENT_SECRET is not set\" }\n\n\nCheck authentication status:\n\ngtasks tasklists view &>/dev/null && echo \"Authenticated\" || echo \"Not authenticated - run 'gtasks login'\"\n\nGeneral Tips\nWhen the user mentions \"tasks\" without specifying a tool, ask if they want to use Google Tasks\nIf the user asks about their tasks, first run gtasks tasklists view to see available lists\nAlways confirm which task list to use if not specified by the user\nWhen creating tasks with dates, prefer explicit date formats (YYYY-MM-DD) over relative terms for clarity\nRemember that task numbers are 1-indexed and change after modifications\nIf a command requires interaction but you're running non-interactively, use flags to provide all required information"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/BRO3886/gtasks-cli",
    "publisherUrl": "https://clawhub.ai/BRO3886/gtasks-cli",
    "owner": "BRO3886",
    "version": "1.0.2",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/gtasks-cli",
    "downloadUrl": "https://openagent3.xyz/downloads/gtasks-cli",
    "agentUrl": "https://openagent3.xyz/skills/gtasks-cli/agent",
    "manifestUrl": "https://openagent3.xyz/skills/gtasks-cli/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/gtasks-cli/agent.md"
  }
}