Data Privacy
ThinkCode is designed with data privacy as a core principle. This document outlines the privacy features available in ThinkCode and provides guidance on configuring privacy settings to match your requirements.
Data Privacy Principles
ThinkCode follows these key principles for data privacy:
- Transparency: Clear communication about what data is collected and how it's used
- Control: User control over what data is shared and processed
- Minimization: Collection of only necessary data for functionality
- Security: Strong protection of all collected data
- Compliance: Adherence to applicable privacy regulations
Data Collection Overview
ThinkCode may collect different types of data depending on your settings:
Code Content
- Project Files: Source code and project-related files
- Code Context: Information about code structure and dependencies
- Execution Data: Results from code execution (when using debugging features)
User Behavior
- Feature Usage: Which features you use and how frequently
- Settings: Your configuration preferences
- Extension Usage: Which extensions you install and use
System Information
- Environment Data: Operating system, hardware specifications
- Performance Metrics: Resource usage and application performance
- Error Reports: Information about crashes and errors
Privacy Settings
ThinkCode provides extensive privacy settings to control data collection and processing:
General Privacy Settings
Configure basic privacy options:
AI Data Privacy
Control how data is used with AI features:
Workspace Privacy
Configure privacy settings for workspaces:
Data Storage and Retention
ThinkCode stores different types of data in various locations:
Local Storage
- Settings: Stored in user profile directory
- Cached Data: Temporary data stored in the system cache
- Workspace State: Information about open workspaces
- Local AI Models: Downloaded models for offline use
View and manage local storage:
- Open Command Palette
- Type "ThinkCode: Open Data Directory"
- Browse stored data files
Cloud Storage (if enabled)
When using cloud features, some data may be stored in the cloud:
- Sync Data: Settings and state for synchronization
- AI Usage Data: Information for improving AI models (if opted in)
- Profile Information: User account details
Control cloud storage:
Data Transmission Security
All data transmitted by ThinkCode is protected:
- TLS Encryption: All connections use TLS 1.3+
- Secure Endpoints: Communication only with verified endpoints
- Authentication: Secure token-based authentication
- Data Minimization: Only essential data is transmitted
AI Privacy Features
ThinkCode includes special privacy features for AI functionality:
Context Filtering
The AI context filtering system prevents sensitive data from being included in AI requests:
- Pattern-Based Filtering: Identifies and removes API keys, passwords, etc.
- File-Based Exclusion: Excludes sensitive files like
.env
orsecrets.json
- Custom Patterns: Define your own patterns for filtering
Configure context filtering:
Local Processing
For sensitive projects, ThinkCode supports local AI processing:
- On-Device Models: AI models run entirely on your machine
- Offline Operation: No data sent to external services
- Resource Management: Controls for CPU and memory usage
Enable local processing:
Privacy Best Practices
Follow these recommendations for optimal data privacy:
- Review Settings: Regularly audit privacy settings
- Use Context Filtering: Enable AI context filtering
- Consider Local Processing: Use local AI processing for sensitive projects
- Limit Telemetry: Reduce telemetry to minimal or off if concerned
- Exclude Sensitive Files: Use
.thinkcodeignore
to exclude sensitive files - Update Regularly: Keep ThinkCode updated for latest privacy features
- Use Workspace Trust: Be cautious with untrusted workspaces
- Check Extensions: Review extension privacy policies and permissions