Google Tasks Skill
Manage Google Tasks from all task lists using lightweight bash scripts.
Quick Start
View tasks
bash
bash scripts/get_tasks.sh
Create a task
bash
# Using default list (configured in google-tasks-config.sh) bash scripts/create_task.sh "Task title" ["due-date"] ["notes"] # Specifying list name bash scripts/create_task.sh "List Name" "Task title" ["due-date"] ["notes"]
Examples:
bash
# Simple task (uses default list) bash scripts/create_task.sh "Buy groceries" # Task with due date (uses default list) bash scripts/create_task.sh "Finish report" "2026-02-10" # Task with specific list bash scripts/create_task.sh "Work" "Finish report" "2026-02-10" # Task with list, due date, and notes bash scripts/create_task.sh "Personal" "Call mom" "2026-02-05" "Ask about her health"
Default list configuration:
Edit google-tasks-config.sh to set your default list:
bash
DEFAULT_LIST="Private" # Change to your preferred default
Delete a task
bash
bash scripts/delete_task.sh "List Name" <task-number-or-title>
Examples:
bash
# Delete by task number (position in list) bash scripts/delete_task.sh "Work" 2 # Delete by task title bash scripts/delete_task.sh "Inbox" "Buy groceries"
Requirements
- •
jq- JSON processor (usually pre-installed) - •
curl- HTTP client (usually pre-installed) - •Valid
token.jsonwith OAuth access token - •Scopes required:
https://www.googleapis.com/auth/tasks(read + write)
First-Time Setup
If token.json doesn't exist:
- •User needs OAuth credentials (
credentials.json) - See setup.md - •Run the Node.js authentication flow first to generate
token.json - •Then the bash script can be used for all subsequent calls
Output Format
code
📋 Your Google Tasks:
📌 List Name
──────────────────────────────────────────────────
1. ⬜ Task title (due: YYYY-MM-DD)
Note: Task notes if present
2. ⬜ Another task
📌 Another List
──────────────────────────────────────────────────
(no tasks)
File Locations
- •
token.json- Access/refresh tokens (workspace root) - •
google-tasks-config.sh- Configuration file (default list setting) - •
scripts/get_tasks.sh- Bash script to view tasks - •
scripts/create_task.sh- Bash script to create tasks - •
scripts/delete_task.sh- Bash script to delete tasks - •
references/setup.md- Detailed setup guide
Implementation
The bash script uses:
- •Google Tasks REST API directly
- •
curlfor HTTP requests - •
jqfor JSON parsing - •Bearer token authentication from
token.json
No Python dependencies required.
Troubleshooting
Token expired:
code
Error: Invalid credentials
Delete token.json and re-authenticate.
Missing jq:
code
bash: jq: command not found
Install jq: apt-get install jq or brew install jq
For more details, see setup.md.