SnapBack

Timeline vs Git History

Git tracks what changed. SnapBack understands who changed it and why.

They’re complementary toolsβ€”use both for complete development visibility.

The Fundamental Difference

AspectGitSnapBack Timeline
What it tracksCommits you explicitly makeEvery save, automatically
GranularityCommit-level (you decide when)Save-level (continuous)
AI awarenessNoneFull attribution and context
Context capturedCommit message (optional)Cursor, open files, AI tool, risk score
History modelLinear commitsGraph-based timeline with sessions
Primary purposeVersion control & collaborationUnderstanding AI-assisted development

Visual Comparison

Git History

commit a1b2c3d (HEAD -> main)
Author: you@email.com
Date:   Tue Jan 14 15:30:00 2025

    Add user authentication

    - Implemented login/logout
    - Added session management
    - Fixed security issues

Git shows: What you committed and when

SnapBack Timeline

πŸ“ src/auth/login.ts
β”œβ”€β”€ 3:30 PM (Cursor ⚠️) - Async conversion, 78% AI contribution
β”‚   └── Risk: High - Pattern match: async_without_error_handling
β”œβ”€β”€ 3:28 PM (Manual βœ“) - Added error logging
β”œβ”€β”€ 3:25 PM (Copilot) - Generated boilerplate, 92% AI contribution
β”œβ”€β”€ 3:20 PM (Manual βœ“) - Initial function signature
└── 3:15 PM (Session Start)

SnapBack shows: Every change, who made it, and context

When to Use Each

Use Git When

βœ… Creating checkpoints

Meaningful milestones you want to name and share

βœ… Collaborating with team

Sharing code, pull requests, code review

βœ… Deployment history

Tracking what shipped to production

βœ… Long-term history

Understanding project evolution over months/years

Use SnapBack Timeline When

πŸ€– Understanding AI changes

”What did Cursor just do to my auth module?”

⏱️ Navigating between saves

”Go back to 5 minutes ago, before I accepted that suggestion”

πŸ“Š Comparing AI behavior

”Does Cursor or Copilot work better for this file?”

πŸ” Debugging AI-introduced bugs

”When did this break, and which AI tool caused it?”

Real-World Scenarios

Scenario 1: Multi-File AI Refactor

What happened: Claude suggested refactoring your component library. You accepted. Tests are failing.

Git’s view:

# No commits yetβ€”you haven't committed
git status: 4 files changed

SnapBack’s view:

Session: Component Library Refactor (Claude)
β”œβ”€β”€ Button.tsx - Styling changes (low risk)
β”œβ”€β”€ Input.tsx - API changes (medium risk) ⚠️
β”œβ”€β”€ Form.tsx - Prop renames (medium risk)
└── validation.ts - Logic error (high risk) πŸ”΄
    └── Pattern: async_conversion_without_await

SnapBack advantage: You can navigate back to before the refactor, or selectively explore each file’s changes with full context about what Claude changed and why it might be risky.

Scenario 2: Debugging a Production Issue

What happened: Users report login failures. Last deploy was 2 hours ago.

Git’s view:

git log --oneline -5
a1b2c3d Add user dashboard
e4f5g6h Update dependencies
i7j8k9l Fix header styling
m1n2o3p Add authentication # <-- Probably this one

SnapBack’s view:

πŸ“ src/auth/login.ts (last 2 hours)
β”œβ”€β”€ 1:45 PM - Copilot async conversion (91% AI) πŸ”΄
β”‚   └── Changed: sync validateCredentials β†’ async
β”‚   └── Missing: await on return value
β”œβ”€β”€ 1:30 PM - Manual edit (your change)
└── 1:15 PM - Copilot suggestion accepted

SnapBack advantage: You can see exactly which AI-generated change introduced the bug, even within a single Git commit.

Scenario 3: Learning from AI Behavior

What happened: You want to know which AI tool works best for your codebase.

Git’s view:

# Git has no AI awareness
# You'd need to manually track this

SnapBack’s view:

πŸ“Š AI Tool Performance (last 30 days)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Cursor:     85% success | Best for: TypeScript refactoring
Copilot:    89% success | Best for: Boilerplate, common patterns
Claude:     92% success | Best for: Architecture, comprehensive edits

Files with AI issues:
  src/auth/login.ts      - 3 issues (all Cursor)
  src/db/queries.ts      - 2 issues (mixed)

SnapBack advantage: You can make data-driven decisions about which AI tool to use for specific tasks.

How They Complement Each Other

1. Work on feature with AI assistance
   └── SnapBack captures every change with context

2. Review SnapBack timeline
   └── Understand what AI changed
   └── Navigate back if needed

3. Commit to Git when ready
   └── Clean, intentional checkpoint
   └── Only vetted changes included

4. Continue development
   └── SnapBack timeline continues
   └── Git history stays clean

Best Practices

πŸ“ Git Best Practices

  • β€’ Commit after verifying AI changes work
  • β€’ Write clear commit messages about intent
  • β€’ Don’t commit known broken code
  • β€’ Use branches for experimental AI work

🧒 SnapBack Best Practices

  • β€’ Review timeline before committing
  • β€’ Use sessions to group related changes
  • β€’ Check AI attribution on failing tests
  • β€’ Let pattern learning build over 30+ days

Technical Comparison

Storage Model

AspectGitSnapBack
Storage location.git/ directory.snapback/ directory
Data formatObject database (blobs, trees)Binary state.bin + indexes
CompressionDelta compressionState-based deduplication
Typical sizeGrows with historyCapped with retention policy
SyncRemote repositoriesLocal-first, optional cloud

Context Captured

ContextGitSnapBack
File contentsβœ… Full diffβœ… Full state
Commit messageβœ… Requiredβšͺ Optional note
Timestampβœ… Commit timeβœ… Save time
Authorβœ… Committerβœ… + AI tool attribution
Cursor positionβŒβœ…
Open filesβŒβœ…
AI contribution %βŒβœ…
Risk scoreβŒβœ…
Pattern analysisβŒβœ…

Query Capabilities

Git queries:

git log --oneline           # List commits
git show abc123             # Show commit details
git diff HEAD~5             # Compare with 5 commits ago
git blame file.ts           # Line-by-line history

SnapBack queries:

snap timeline               # Show protection states
snap show state_abc         # Show state details
snap diff --time 5m         # Compare with 5 minutes ago
snap blame file.ts          # Line-by-line with AI attribution
snap patterns tools         # AI tool performance
snap sessions               # View session groupings

Migration and Coexistence

They Don’t Conflict

SnapBack and Git operate independently:

  • SnapBack stores data in .snapback/ (add to .gitignore)
  • Git stores data in .git/
  • Neither modifies the other’s data
  • Both can run simultaneously
# SnapBack local state (add this)
.snapback/

Summary

Use Git for:

  • Version control and collaboration
  • Deployment and release management
  • Long-term project history
  • Code review and pull requests

Use SnapBack for:

  • Understanding AI-assisted development
  • Navigating between saves with context
  • Debugging AI-introduced issues
  • Learning which AI tools work best

Together, they give you complete visibility into your development process.

Next Steps

πŸ“ˆ Pattern Learning

How SnapBack learns your codebase patterns over time.

Learn more β†’

⏱️ Sessions

How sessions group related changes in your timeline.

Explore sessions β†’

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