From a3156a2f399ea03c645ee23b0099d9d722ce7e1e Mon Sep 17 00:00:00 2001 From: Peter Stone Date: Mon, 26 Jan 2026 20:55:50 -1000 Subject: Add Google Tasks integration (#43) - New GoogleTasksClient for fetching and managing Google Tasks - Tasks appear in Timeline view with yellow indicator dot - Tap checkbox to complete/uncomplete tasks via Google API - Shares credentials file with Google Calendar (GOOGLE_CREDENTIALS_FILE) - Configure task list via GOOGLE_TASKS_LIST_ID env var (default: @default) - Supports comma-separated list IDs for multiple lists New files: - internal/api/google_tasks.go - Google Tasks API client Co-Authored-By: Claude Opus 4.5 --- internal/models/types.go | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'internal/models/types.go') diff --git a/internal/models/types.go b/internal/models/types.go index 6dc8716..4bf8462 100644 --- a/internal/models/types.go +++ b/internal/models/types.go @@ -101,6 +101,19 @@ type CalendarEvent struct { HTMLLink string `json:"html_link"` } +// GoogleTask represents a task from Google Tasks +type GoogleTask struct { + ID string `json:"id"` + Title string `json:"title"` + Notes string `json:"notes,omitempty"` + DueDate *time.Time `json:"due_date,omitempty"` + Status string `json:"status"` // "needsAction" or "completed" + Completed bool `json:"completed"` + ListID string `json:"list_id"` + URL string `json:"url"` + UpdatedAt time.Time `json:"updated_at"` +} + // Bug represents a bug report type Bug struct { ID int64 `json:"id"` -- cgit v1.2.3