Changelog
All notable changes to GDT are documented here.
v0.2.0-beta.2 Beta
2026-02-03
✨ Highlights
Recurring Tasks — Create tasks that repeat automatically:
- Daily, weekly, monthly, yearly, and weekday patterns
- Natural language: "每周一提交周报" or "daily standup at 9am"
- TaskWarrior native recurrence rules for reliability
Natural Date Understanding — Due dates in your words:
- "明天" / "tomorrow" → due tomorrow
- "下周一" / "next Monday" → due next Monday
- "月底" / "end of month" → due end of month
- "周末前" / "end of week" → due Friday
Smarter Task Creation — Implicit intent understanding:
- "明天要交的作业" → Creates task due tomorrow
- "下周一的团队会议" → Creates task for next Monday
- No need to explicitly say "create task" — GDT understands context
🧪 Testing
- LLM Eval Framework: 90.7% overall score (+9.7% improvement)
- 66 new eval cases: Task decomposition (35), recurring dates (16), relative dates (15)
- 100% relative date accuracy (improved from 55%)
- 93.8% recurring task accuracy (improved from 49.1%)
🛠️ Improvements
- Error messages standardized to English for consistency
- Enhanced prompt engineering for date and recurrence patterns
- Better implicit task creation from conversational context
v0.2.0-beta.1 Beta
2026-02-02
✨ Highlights
Calendar Views — See your schedule in Week and Month views:
- Week View: 7-day grid showing tasks and events for each day
- Month View: Full month calendar with task/event indicators
- Task Cards: Priority-colored cards with project info
- Event Cards: Time display for timed events, "All day" badge for full-day events
Settings Page — New dedicated settings interface:
- Theme Selector: Light, Dark, or System auto-detection
- Calendar Connections: Manage connected calendars
- Visual Feedback: Smooth transitions and accessibility support
🧪 Testing
- LLM Eval Framework: New evaluation system for testing AI responses
- CLI tool:
bun run evalwith filtering by case, category, tags - Accuracy and LLM-as-Judge evaluators
- Score-based pass/fail with configurable thresholds
- CLI tool:
- 8 new unit tests for calendar views, settings, and stores
- Accessibility improvements: ARIA labels, keyboard navigation, focus-visible styles
🛠️ Improvements
- Error logging for calendar and settings load failures
- Type safety improvements in calendar components
- Better keyboard navigation in calendar views
v0.1.0-alpha.14 Pre-release
2026-02-01
✨ Highlights
Web UI — GDT now has a beautiful web interface:
- Task Management: Visual task list with filters, sorting, and project grouping
- AI Chat: Stream AI responses in real-time with tool call visualization
- Calendar View: See your schedule and tasks on a timeline
- Dark Mode: System-aware theme with manual toggle
- Project Overview: Track progress across all your projects
🚀 New Command
# Start the Web UI server
getdone serve
# Start and open browser automatically
getdone serve --open
# Use custom port (default: 3000)
getdone serve --port 8080
# Allow LAN access (default: localhost only)
getdone serve --host🔒 Security
- Zod Validation: Comprehensive input validation on all API endpoints
- Rate Limiting: 100 requests/minute with
@fastify/rate-limit - WebSocket Limits: Max 50 concurrent connections to prevent resource exhaustion
- Error Boundaries: Graceful React error handling prevents UI crashes
🧪 Testing
- 14 unit tests for critical Web UI components
- Error boundary, message ID generation, user input validation
- Vitest + React Testing Library integration
🛠️ Technical Stack
- Backend: Fastify with REST API and WebSocket support
- Frontend: React 19 + TypeScript + Tailwind CSS v4 + Zustand
- Streaming: Server-Sent Events for real-time AI responses
v0.1.0-alpha.13 Pre-release
2026-01-31
✨ Highlights
Data Import — Migrate from any task management tool with ease:
- Todoist: Full CSV export support with priority and project mapping
- Apple Reminders: Native macOS integration via AppleScript
- TickTick: Complete CSV format support with recurrence patterns
- Google Tasks: OAuth API integration with list selection
- Microsoft To Do: OAuth API with task lists and subtasks
- OmniFocus: TaskPaper format parsing with hierarchy
- Notion: Database API integration with custom field mapping
- Generic CSV/JSON: Flexible template-based import for any format
Backup & Restore — Never lose your data:
- Export all tasks, sessions, and preferences to JSON
- Scheduled auto-backup with configurable retention
- One-command restore to recover your workspace
🛠️ Improvements
- Native Anthropic SDK: Migrated from wrapper SDK for better reliability and performance
- Enhanced Validation: Zod schema validation with
.min(1)for required fields - Retry Logic: Capped exponential backoff (max 60s) prevents indefinite waits
- Memory Safeguards: Import limits prevent out-of-memory errors on large datasets
🧪 Testing
- 170+ unit tests covering all import formats
- Security tests for CSV injection prevention
- Path traversal protection in file-based importers
- Comprehensive field mapping validation
🔐 Security
- Path Sanitization: Prevents directory traversal attacks in file imports
- Token Handling: Secure credential management for OAuth integrations
- Input Validation: Robust validation for all external data sources
v0.1.0-alpha.12 Pre-release
2026-01-25
✨ Highlights
Calendar Integration — Your schedule, your way. GDT now connects to your calendars:
- Google Calendar: Full OAuth integration with secure credential storage
- iCloud Calendar: Connect via app-specific passwords
- System Calendar: Native macOS/Windows calendar access
- Ask "What's on my schedule today?" or "Show me the next 3 days" for instant timeline views
Internationalization — GDT now speaks your language:
- Full English and Chinese (中文) support
- Automatic detection from system locale (
LANG,LC_ALL) - Override via config:
~/.gdt/config.json→{ "language": "zh" }
Multi-Day Timeline View — See your week at a glance:
1/25 (Sat) 1/26 (Sun) 1/27 (Mon)
──────────────────────────── ──────────────────────────── ────────────────────────────
09:00 ░░░░░░ ░░░░░░ ██████ Team standup
10:00 ██████ Project review ░░░░░░ ▓▓▓▓▓▓ Design sync
...🔐 Security
- System Keyring Integration: Credentials stored in macOS Keychain, Linux libsecret, or Windows Credential Manager
- Falls back to AES-256-GCM encrypted file storage when keyring unavailable
- Machine-specific encryption keys for additional protection
⚡ Performance
- Adaptive Sync Intervals: Calendar sync adjusts based on API response times
- Fast syncs (<2s) → more frequent updates
- Slow syncs (>10s) → backs off to reduce load
- Range: 30 seconds to 10 minutes
🛠️ Improvements
- Data Accuracy: LLM now treats tool output as source of truth
- Error Acknowledgment: LLM admits display errors instead of speculating about "timezone issues"
- Cross-day Events: Events spanning midnight marked with
⚠️跨日indicator - GDTAgent SDK: Migrated from raw Anthropic API for better reliability
🧪 Testing
- 4 new test files with comprehensive coverage
- Calendar adapter unit tests
- Credential store security tests
- Integration tests for calendar sync
v0.1.0-alpha.11 Pre-release
2026-01-21
Bug Fixes
- Critical fix: Resolved "TypeError: o is not a function" error that prevented the CLI from starting in interactive mode
- Root cause: Bun bundler incorrectly handled the automatic JSX runtime transform
Improvements
- Removed keyboard input debug logging for better privacy
v0.1.0-alpha.10 Pre-release
2026-01-21
✨ Highlights
Entity Highlighting — Your terminal just got smarter. GDT now recognizes and highlights:
- Task IDs (
#abc123) in magenta - Dates (
2024-01-21,today,周一) in cyan - Times (
09:30,14:00-16:00) in yellow - Contexts (
@office,@电脑) in blue - Projects (
+work,+personal) in green
Visual Timeline Improvements — Daily schedules now show duration proportionally:
- 30 minutes = 1 row, 2 hours = 4 rows
- Consecutive tasks alternate between
██████and▓▓▓▓▓▓patterns - Breaks and lunch show as dots
······instead of dashes
🖥️ Platform Support
- Windows clipboard: Image paste now works via PowerShell
- Complete cross-platform support: macOS, Linux, Windows
⚡ Performance & Reliability
- Paste debounce prevents duplicate operations
- New logging system with automatic rotation (5MB max, 5 files)
- 42 new clipboard tests ensure reliability across platforms
📚 Documentation
- Added PRD for Context Management (F0.1) and Task Decomposition (F1.1)
- Updated commands reference
v0.1.0-alpha.9 Pre-release
2026-01-19
Documentation
- Add calendar and memory commands documentation
Maintenance
- Remove dead code, unify test framework to bun, fix lint errors (#54)
v0.1.0-alpha.8 Pre-release
2026-01-19
New Features
- Add session migration, summary context, and UX improvements (#53)
- Enhance exit message with expert perspectives (#52)
- Enhance calendar command with colorful ANSI output and multiple views (#51)
Bug Fixes
- Correct changelog version header format
v0.1.0-alpha.7 Pre-release
2026-01-18
New Features
- Add status indicator, auto-update, and UX improvements (#50)
- Add Beta user onboarding infrastructure (Initiative 0.5) (#46)
- Add CLI analytics feature specifications (#45)
- Add Get Started link to navigation
- Improve homepage layout and auto-generate changelog (#44)
- Integrate learning triggers for automatic user preference learning (#42)
- Complete MemoryManager implementation (T2.1) (#40)
- Implement MemoryStore for persistent storage (T1.3) (#38)
Bug Fixes
- Increase weekly calendar column width for Chinese text (#49)
- Rename command from gdt to getdone and fix npm package (#47)
- Add hover effects to feature boxes
- Use correct VitePress selectors for feature grid
- Fix feature boxes layout breaking on desktop
- Use bun as package manager for wrangler-action
- Add Chinese placeholder pages for internal docs
- Correct broken internal links on home page
Documentation
- Add Personalized Learning guide with Heptabase-style content (#43)
Maintenance
- Upgrade Anthropic SDK to fix deprecation warning (#48)
- Setup npm package publishing configuration (#39)
New Features
- Auto-update: GDT now automatically checks for updates and updates itself in the background
- Status indicator: New animated status indicator in the header showing processing state
- Tab completion: Press Tab to auto-complete slash commands
Improvements
- Double Ctrl+C to exit: Prevents accidental exits with a 2-second confirmation window
- Centralized LLM configuration for better maintainability
- Fixed race conditions in the update checker
Bug Fixes
- Fixed cursor position after Tab completion
- Fixed exit warning visibility when actually exiting
v0.1.0-alpha.1 Pre-release
January 17, 2026
Core Features
- Natural language task management through conversational CLI
- Intelligent task decomposition: Break complex tasks into actionable subtasks
- GTD (Getting Things Done) workflow support
- TaskWarrior integration for task storage and sync
LLM Integration
- Claude Agent SDK for tool-enabled conversations
- Streaming responses with real-time display
- Smart error handling for rate limits, network issues, and timeouts
- API cost tracking with budget alerts
Memory System
- Multi-tier memory architecture (short-term, working, long-term)
- Session persistence - resume where you left off
- Automatic conversation summarization
- Smart context assembly for optimal token usage
Task Decomposition
- Detects ambiguous tasks and asks clarifying questions
- Analyzes dependencies between subtasks
- Identifies potential risks and blockers
- Ensures each subtask is 15min - 2h in scope
User Interface
- Terminal UI built with Ink and React patterns
- Message streaming with typing effect
- Command auto-completion with Tab
- Input history navigation with arrow keys
- Calendar view and weekly overview
Privacy & Security
- All data stored locally (TaskWarrior + ~/.gdt/)
- Privacy commands:
/privacy enable|disable|clear - No telemetry or analytics
- API data not used for model training
Documentation
- Documentation site at getdone.today
- Bilingual support (English and Chinese)
- Getting started guides and tutorials
Planned Features
Coming in Beta
- Smart context detection based on time and location
- Overdue task handling with intelligent rescheduling
- Long-term task tracking and progress monitoring
- Cross-device sync with end-to-end encryption
- Performance optimizations