Skip to content

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 TypeContentsCan Disable
Conversation historyYour messages and GDT responsesYes
Task contextDecomposition results, risk analysisNo
ConfigurationYour preferencesNo
Usage logsAPI token countsNo
AnalyticsAggregate usage statisticsYes (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 status

Disable 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 disabled

Clear 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 cleared

Anonymous 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:

DataExampleNOT 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.

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: Yes

Enable/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=3

Clear 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

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:

bash
ls -la ~/.gdt/
ls -la ~/.gdt/sessions/
ls -la ~/.gdt/task-context/

Delete all GDT data:

bash
rm -rf ~/.gdt/

Delete only sessions:

bash
rm -rf ~/.gdt/sessions/

Backup and restore:

bash
# 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