Skip to content
Back to skills

Google Tasks

ASecurity

Fetch, display, create, and delete Google Tasks using the Google Tasks API. Use when the user asks to check, view, list, get, add, create, remove, or delete their Google Tasks, to-do lists, or task items. Handles OAuth authentication automatically using bash script with curl and jq.

  • 33 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 5, 2026
securitypythongobashnodeapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 13 files and shows the line behind each finding

Scanned September 5, 2026

npx -y skills add dvcrn/openclaw-skills-marketplace --skill google-tasks --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Google Tasks?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Google Tasks
[![Security: A โ€” Skills Directory](https://www.skillsdirectory.com/api/skills/dvcrn-google-tasks/badge)](https://www.skillsdirectory.com/skills/dvcrn-google-tasks)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: google-tasks
description: "Fetch, display, create, and delete Google Tasks using the Google Tasks API. Use when the user asks to check, view, list, get, add, create, remove, or delete their Google Tasks, to-do lists, or task items. Handles OAuth authentication automatically using bash script with curl and jq."
---

# 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.json` with OAuth access token
- **Scopes required:** `https://www.googleapis.com/auth/tasks` (read + write)

## First-Time Setup

If `token.json` doesn't exist:

1. User needs OAuth credentials (`credentials.json`) - See [setup.md](references/setup.md)
2. Run the Node.js authentication flow first to generate `token.json`
3. Then the bash script can be used for all subsequent calls

## Output Format

```
๐Ÿ“‹ 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
- `curl` for HTTP requests
- `jq` for JSON parsing
- Bearer token authentication from `token.json`

No Python dependencies required.

## Troubleshooting

**Token expired:**
```
Error: Invalid credentials
```
Delete `token.json` and re-authenticate.

**Missing jq:**
```
bash: jq: command not found
```
Install jq: `apt-get install jq` or `brew install jq`

For more details, see [setup.md](references/setup.md).

Files in this skill

  • CLAWHUB_CHECKLIST.md5.6 KB
  • README.md4.1 KB
  • SKILL.md3.4 KB
  • google-tasks-config.sh153 B
  • package.json395 B
  • references/setup.md1.2 KB
  • scripts/auth.mjs3.8 KB
  • scripts/auth.py2.6 KB
  • scripts/create_task.sh3.3 KB
  • scripts/delete_task.sh2.7 KB
  • scripts/get_tasks.sh2.3 KB
  • scripts/refresh_token.js3.9 KB
  • scripts/refresh_token.sh2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading commentsโ€ฆ