Privacy Controls
GDT keeps your data local and under your control. This page explains what's stored, where, and how to manage it.
Design Principles
Local first. All data stays on your computer. There's no cloud sync, no account system, no data uploaded anywhere except the LLM API calls themselves.
User control. You decide whether to save conversation history. You can disable it, clear it, or delete everything at any time.
Minimal collection. GDT doesn't track usage behavior or collect telemetry. The only data transmitted is what you send to the LLM during conversations.
What Gets Stored
All GDT data lives in ~/.gdt/:
~/.gdt/
├── config.json # Your settings
├── privacy.json # Privacy preferences
├── sessions/ # Conversation history
│ ├── current.json # Current session
│ └── <session-id>.json
├── task-context/ # Task analysis data
│ └── <task-uuid>.json
├── usage/ # API usage logs
│ └── <date>.json
└── analytics/ # Usage statistics (opt-in)
├── device-id # Anonymous UUID
├── config.json # Analytics preferences
└── cache/ # Pending statistics| Data Type | Contents | Can Disable |
|---|---|---|
| Conversation history | Your messages and GDT responses | Yes |
| Task context | Decomposition results, risk analysis | No |
| Configuration | Your preferences | No |
| Usage logs | API token counts | No |
| Analytics | Aggregate usage statistics | Yes (opt-in) |
Task data itself is stored by TaskWarrior in ~/.task/, separate from GDT.
Encryption
Conversation history is encrypted by default:
- Algorithm: AES-256-GCM
- Key derivation: PBKDF2
- Scope: Each session encrypted independently
Managing Privacy Settings
View current settings:
> /privacy
📋 Privacy Settings
Conversation history: Enabled
Encryption: Enabled
Data location: ~/.gdt/
Storage usage:
- Sessions: 2.3 MB (15 sessions)
- Task context: 156 KB (42 tasks)
- Usage logs: 12 KB
Commands:
/privacy disable history Stop saving conversations
/privacy enable history Resume saving conversations
/privacy clear history Delete all conversation history
/privacy clear all Delete all GDT data
/privacy status Detailed statusDisable conversation history:
> /privacy disable history
⚠️ Confirm disable conversation history?
After disabling:
- Each startup begins fresh
- Cannot continue previous conversations
- Existing history will be kept (not auto-deleted)
Confirm? [Yes/No]
> Yes
✅ Conversation history disabledClear all history:
> /privacy clear history
⚠️ This will delete:
- 15 session files
- Total 2.3 MB
This cannot be undone. Confirm? [Yes/No]
> Yes
✅ All conversation history clearedAnonymous Usage Statistics (Analytics)
GDT offers optional, privacy-respecting analytics to help improve the product. This feature is opt-in and requires explicit consent.
What Gets Collected
If you enable analytics, GDT collects aggregate counts only:
| Data | Example | NOT Collected |
|---|---|---|
| Daily launch count | "3 launches today" | When you launched |
| Message count | "15 messages" | Message content |
| Task operation counts | "5 created, 2 completed" | Task descriptions |
| Command usage | "/calendar used 4 times" | Command parameters |
Also included:
- Anonymous device ID (UUID, not linked to identity)
- GDT version
- Operating system type (e.g., macOS, Linux)
- Country (from IP, not stored)
Never collected:
- Conversation content — your messages and AI responses stay local
- Task descriptions — your task content, due dates, and tags are never transmitted
- Schedule details — your calendar events and appointments are never transmitted
- Personal information
- File paths or names
- Specific timestamps
Important: Analytics only sends aggregate numbers (e.g., "15 messages today"). Your conversations, task descriptions, and schedule details are never transmitted to our servers.
First-Time Consent
On first launch, GDT asks if you'd like to participate:
📊 Help Improve GDT
Would you like to share anonymous usage statistics?
What we collect:
• Daily launch and message counts
• Task operation counts (created/completed)
• Command usage frequency
What we never collect:
• Task content or descriptions
• Conversation messages
• Personal information
[Yes, I'll help] [No thanks] [Ask me later]Choosing "No thanks" permanently disables analytics (you won't be asked again). Choosing "Ask me later" will prompt you on the next launch.
Managing Analytics
Check status:
> /analytics status
📊 Analytics Status: Disabled
Consent asked: YesEnable/disable:
> /analytics enable
✅ Analytics enabled. Thank you for helping improve GDT!
> /analytics disable
✅ Analytics disabled.View pending data before sending:
> /analytics show
📊 Pending Analytics Data
Today (2026-01-21):
• Launches: 3
• Messages: 15
• Tasks: created=5, completed=2
• Commands: calendar=4, tasks=3Clear all analytics data:
> /analytics clear
✅ All analytics data cleared.Data Storage and Transmission
- Local storage:
~/.gdt/analytics/ - Transmission: HTTPS POST to analytics.getdone.today
- Frequency: Once per session (daily active ping), accumulated stats sent when available
- Retention: Pending data kept locally for up to 30 days if offline
What Gets Sent to the API
Each LLM call transmits:
- System prompt (GDT's role definition)
- Current conversation messages
- Recent history (if enabled)
- Current task list (formatted summary)
Not transmitted:
- Your full TaskWarrior database
- Historical session files
- Local file contents
- System information
API Provider
GDT uses the Anthropic Claude API:
- Privacy policy: anthropic.com/privacy
- Training: Commercial API data is not used for model training
- Retention: See Anthropic's data retention policy
First-Run Consent
On first launch, GDT asks for explicit consent:
Welcome to GDT!
Before we start, please understand how GDT uses data:
1. Conversation History
GDT can save conversations to maintain context across sessions.
Conversations are encrypted and stored locally, never uploaded.
2. API Calls
Conversation content is sent to Anthropic API for responses.
See Anthropic's privacy policy for details.
Allow saving conversation history? [Yes/No]
> Yes
✅ Setup complete! You can change settings anytime with /privacy.Manual Data Management
View data files:
ls -la ~/.gdt/
ls -la ~/.gdt/sessions/
ls -la ~/.gdt/task-context/Delete all GDT data:
rm -rf ~/.gdt/Delete only sessions:
rm -rf ~/.gdt/sessions/Backup and restore:
# Backup
cp -r ~/.gdt/ ~/gdt-backup/
# Restore
cp -r ~/gdt-backup/ ~/.gdt/FAQ
Does GDT track my usage behavior?
Only if you opt in. GDT offers optional anonymous analytics that you can enable during first-run setup or via /analytics enable. If you decline, no usage data is collected. See the Analytics section for details.
Will my conversations train the AI?
GDT uses Anthropic's commercial API. Per their policy, API data is not used for model training.
How do I keep my data secure?
- Conversations are encrypted with AES-256-GCM
- Data stays on your machine
- Clear history regularly if concerned
Is it safe to use on a work computer?
GDT only transmits data to the Anthropic API. However:
- Conversation content is sent for AI responses
- Check your company's data security policies
- Consider disabling history to minimize local storage
Next Steps
- Configuration — More configuration options
- Commands Reference — Privacy-related commands