Open
Conversation
Add Google Tasks API support as an opt-in feature via ENABLE_TASKS=true env var or --enable-tasks CLI flag. - Add dynamic OAuth scope configuration (src/auth/scopes.ts) - Add scope tracking in tokenManager for re-auth detection - Create BaseTaskHandler with Tasks API client - Implement 7 task tools: list-task-lists, list-tasks, get-task, create-task, update-task, complete-task, delete-task - Add conditional tool registration in registry - Add 44 unit tests for task handlers - Update documentation (README, CLAUDE.md, CLI help)
- Add comprehensive integration tests for all Task tools - Remove CompleteTaskHandler in favor of update-task with status - Update docs to reflect complete-task removal
Contributor
📊 Tool Description Token AnalysisSummary
Full token breakdown by tool
Analysis generated at 2026-01-08T06:18:12.065Z |
This commit addresses the three limitations identified in issue #147: 1. **Time-specific tasks limitation documented** - Added clear documentation that Google Tasks API only supports date-level due dates - Updated tool descriptions and schemas to warn users that time component is ignored - Explained that this is a fundamental API limitation, not an implementation issue - Provided workarounds for users who need time-specific tasks 2. **Recurring task creation now supported** - Implemented recurring task creation in create-task tool - Supports daily, weekly, monthly, and yearly frequencies - Supports custom intervals (e.g., every 2 weeks) - Supports count (max 365) and until date options - Creates multiple individual tasks with sequential due dates - Tasks are numbered (e.g., "Task Title (#1/5)") - Added comprehensive unit tests for all recurrence patterns 3. **Task list creation now available** - Added new create-task-list tool - Allows users to create custom task lists - Includes full unit test coverage - Supports multi-account management Changes: - Added CreateTaskListHandler with full error handling - Extended CreateTaskHandler to support recurrence parameter - Updated task-schemas.ts with recurrence validation schema - Updated task-responses.ts to support both single and multiple tasks - Added comprehensive documentation in docs/tasks.md - Added 15 new unit tests for recurring tasks - Added 7 unit tests for task list creation - All 763 tests passing Technical notes: - Google Tasks API doesn't natively support recurring tasks; we create multiple individual tasks - Maximum 365 occurrences per recurrence pattern to prevent API abuse - Each recurring task is independent (completing one doesn't affect others)
- Add getAccountId, jsonResponse, normalizeDueDate helpers to BaseTaskHandler - Reduce handler code by ~35% using new helpers - Add integration tests for create-task-list and recurring tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
list-task-lists,list-tasks,get-task,create-task,update-task,delete-taskENABLE_TASKS=trueenvironment variable or--enable-tasksCLI flagChanges
docs/tasks.mdwith setup guide and troubleshootingTest Plan
npm test)ENABLE_TASKS=true npm test -- src/tests/integration/tasks-integration.test.ts)