SnapBack

Security & Privacy

Your code never leaves your machine unless you explicitly opt-in.

SnapBack is built with a privacy-first, local-first architecture. We capture metadata for intelligenceβ€”not your source code.

Architecture Overview

Local-First Design

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    YOUR MACHINE                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚ VS Code     │───▢│ SnapBack    │───▢│ .snapback/  β”‚  β”‚
β”‚  β”‚ Extension   β”‚    β”‚ Engine      β”‚    β”‚ Local Store β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                            β”‚                             β”‚
β”‚                            β–Ό                             β”‚
β”‚                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                        β”‚
β”‚                   β”‚ Metadata    β”‚ (Optional cloud sync)  β”‚
β”‚                   β”‚ Only        │────────────────────────┼──▢ Cloud
β”‚                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

What stays local:

  • All source code and file contents
  • Protection states (full file snapshots)
  • Pattern learning data
  • Session history

What can optionally sync (metadata only):

  • AI tool usage patterns (anonymized)
  • Risk event frequencies
  • Aggregate statistics

Data Collection

What SnapBack Collects

βœ… Collected (Metadata Only)

  • β€’ Event types (save, protection state created)
  • β€’ AI tool identifiers (which assistant was active)
  • β€’ Timestamps and session durations
  • β€’ File extensions (not names or paths)
  • β€’ Aggregate change metrics (lines changed)
  • β€’ Risk event counts

❌ Never Collected

  • β€’ Source code or file contents
  • β€’ File names or paths
  • β€’ Diff contents or patches
  • β€’ Personal identifiers
  • β€’ IP addresses or location data
  • β€’ Proprietary algorithms or logic

Example: What Gets Sent (If Opted In)

{
  "event": "protection_state_created",
  "timestamp": "2025-01-14T15:30:00Z",
  "metadata": {
    "ai_tool": "cursor",
    "ai_contribution": 0.78,
    "file_extension": ".ts",
    "lines_changed": 45,
    "risk_level": "medium",
    "session_duration_minutes": 12
  }
}

Notice: No file paths, no code, no personal data.

Detection Accuracy & Methodology

AI Detection Performance

Our detection system has been validated across diverse codebases:

89%
Overall Detection
AI vs Human edits
98%
Cursor Detection
Highest accuracy
97%
Copilot Detection
Inline completions
94%
Risk Detection
Secrets, mocks, deps

Detection Methodology

SnapBack uses multiple signals to detect AI activity:

SignalMethodPrivacy Impact
Editor API hooksVS Code extension APILocal only
Change velocityTiming patternsMetadata only
Code patternsHeuristic analysisLocal processing
Tool metadataAI extension signalsWhen available

How it works:

  1. Extension monitors editor events (local)
  2. Analyzes change patterns (local)
  3. Applies ML-based classification (local)
  4. Stores attribution with protection state (local)

No code is sent to external services for AI detection.

Data Retention

Local Storage

Protection states are stored in .snapback/ with configurable retention:

// .snapbackrc
{
  "retention": {
    "maxAge": "30d",           // Keep states for 30 days
    "maxStates": 1000,         // Maximum states per file
    "compressionLevel": "high" // Binary compression
  }
}

Default retention: 30 days or 1000 states per file (whichever comes first)

Cloud Sync (Optional)

If you enable cloud features:

  • Metadata syncs with AES-256 encryption in transit
  • Data retained for 90 days by default
  • Can request deletion at any time
  • GDPR-compliant data handling

Enterprise Security

Compliance

πŸ” SOC 2 Type II

Security controls audited annually

πŸ‡ͺπŸ‡Ί GDPR

Data processing with EU compliance

πŸ₯ HIPAA Ready

BAA available for healthcare

Enterprise Features

FeatureDescription
SSO/SAMLIntegrate with your identity provider
Audit logsComplete activity trail for compliance
Data residencyChoose where metadata is stored
Air-gapped modeFully offline operation
Custom retentionConfigure per organizational policy

Air-Gapped Deployment

For maximum security, SnapBack can run fully offline:

// .snapbackrc
{
  "offline": true,
  "telemetry": false,
  "cloudSync": false
}

In this mode:

  • Zero network requests
  • All processing local
  • No analytics or telemetry
  • Full functionality preserved

Vulnerability Disclosure

Reporting Security Issues

If you discover a security vulnerability:

  1. Email: security@snapback.dev
  2. Include: Description, steps to reproduce, impact assessment
  3. Response: We’ll acknowledge within 24 hours
  4. Timeline: Fix deployed within 7 days for critical issues

Bug Bounty

We offer rewards for responsible disclosure:

SeverityReward
Critical$1,000 - $5,000
High$500 - $1,000
Medium$100 - $500
LowRecognition

Open Source Components

SnapBack uses audited open-source libraries:

ComponentPurposeLicense
better-sqlite3Local storageMIT
jsdiffDiff generationBSD
PostHogAnalytics (optional)MIT
zodSchema validationMIT

We regularly audit dependencies for vulnerabilities using automated scanning.

Transparency

What We Believe

  • Your code is yours. We never access, read, or store your source code.
  • Privacy by default. Cloud features are opt-in, local is the default.
  • Minimal data. We collect only what’s needed for intelligence features.
  • User control. You can export, delete, or disable data collection anytime.

Data Export

Export all your data at any time:

# Export all local data
snap export --format json > my-data.json

# Export cloud data (if opted in)
snap cloud export --all

Data Deletion

Delete your data completely:

# Delete local data
snap reset --all

# Delete cloud data
snap cloud delete --confirm

Frequently Asked Questions

Does SnapBack read my code?

SnapBack processes your code locally for protection states and pattern learning. This data never leaves your machine. Cloud sync only sends anonymized metadata.

Can I use SnapBack in a secure environment?

Yes. Enable offline mode for zero network requests. SnapBack works fully locally without any external dependencies.

How is AI detection done without sending code?

Detection uses local heuristics: change velocity, editor API signals, and pattern matching. All processing happens on your machine.

What happens if I delete SnapBack?

Uninstalling removes all local data in .snapback/. If you opted into cloud sync, that data remains until you request deletion.

Contact

For security questions or concerns:


Security is foundational to SnapBack.

We built with privacy-first principles because we believe intelligence shouldn’t require compromising your code security.

View our Privacy Policy β†’ | Contact Security Team β†’

Privacy First: SnapBack works 100% offline on the Free plan. MCP is optional and requires explicit consent on paid plans. Learn more β†’