Prerequisites
- Google OAuth credentials configured (see Google OAuth setup)
- Completed the initial OAuth consent flow — the
tasksscope is included by default
Setup
No additional setup is required beyond the shared Google OAuth flow. Thehttps://www.googleapis.com/auth/tasks scope is part of the default scope
list in google/auth.py. Once you’ve completed the
Google integration setup, Tasks is ready to use.
Usage
- CLI
- Agent
The Shows incomplete tasks from your default task list. Each line displays the
task ID, due date, status checkbox, and title:To include completed and hidden tasks:
Due dates are stored as midnight UTC (At least one of Permanently deletes the task from your Google Tasks list.
ollim-bot tasks subcommand provides five operations.List tasks
Add a task
| Argument | Required | Description |
|---|---|---|
title (positional) | Yes | Task title |
--due | No | Due date in YYYY-MM-DD format |
--notes | No | Task notes or description |
YYYY-MM-DDT00:00:00.000Z).Complete a task
Update a task
--title, --due, or --notes must be provided.Delete a task
All operations use your default task list (
@default). ollim-bot does not
support multiple task lists.API helpers
Two functions are exported fromgoogle/tasks.py for use by Discord button
handlers in views.py:
| Function | Signature | Returns |
|---|---|---|
complete_task | complete_task(task_id: str) -> str | Task title |
delete_task | delete_task(task_id: str) -> str | Task title |
asyncio.to_thread in the button handlers to avoid
blocking the Discord event loop.
Troubleshooting
Tasks commands return an auth error
Tasks commands return an auth error
Your OAuth token may have expired or been revoked. Delete
~/.ollim-bot/state/token.json and run any tasks command to trigger
re-authentication.How do I find a task ID?
How do I find a task ID?
Task IDs are displayed as the first column in
ollim-bot tasks list
output. When using embed buttons, the agent encodes the ID into the
button action automatically.Due dates show the wrong day
Due dates show the wrong day
Due dates are stored as midnight UTC. The Google Tasks API and CLI both
use
YYYY-MM-DD format. If your local timezone is ahead of UTC, a task
due “today” may display as yesterday in some Google interfaces.