Skip to content
Protocol

session checkpoints

core by Curtis Mercier v2.0.0 heat: cold
sessiongitcontinuityself-awareness
Tiercore
Version2.0.0
Heatcold
AuthorCurtis Mercier
SourceGitHub ↗
/install protocol session-checkpoints

Run in a Soma session to add to your project.

curl -sO https://raw.githubusercontent.com/meetsoma/community/main/protocols/session-checkpoints.md

Download and copy to .soma/protocols/session-checkpoints.md — or view on GitHub ↗

Tags

Applies to
git

Details

Session Checkpoints

How Soma persists state across sessions using git. Auto-commit and diff-on-boot are built into the boot extension — this protocol helps you understand and configure it. Editing this file won't change the checkpoint behavior.

TL;DR

Two git tracks: .soma/ auto-commits on exhale (diff-on-boot), project code gets checkpoint commits (squash before push). Settings: checkpoints.*.

How It Works

Soma uses two git tracks:

Track 1: .soma/ internal — its own git repo inside .soma/. Committed on exhale, never pushed. Gives you git diff HEAD~1 on boot to see what changed between sessions.

Track 2: Project code — your project's git repo. Soma suggests checkpoint commits but doesn't auto-push. Squash checkpoints into clean commits before pushing.

What Happens on Exhale

If checkpoints.soma.autoCommit is true, the exhale instructions include committing .soma/ changes.

What Happens on Boot

If checkpoints.diffOnBoot is true, boot surfaces:

  • .soma/ changes since last checkpoint
  • Project changes since last checkpoint
  • Recent git log (commits by others, CI, etc.)

Settings

{
  "checkpoints": {
    "soma": {
      "autoCommit": true
    },
    "project": {
      "style": "commit",
      "autoCheckpoint": false
    },
    "diffOnBoot": true,
    "maxDiffLines": 80
  }
}

Customization

Goal Adjust
No auto-commits soma.autoCommit: false
See more context on boot Raise maxDiffLines
Tag instead of commit project.style: "tag"
Disable boot diffs diffOnBoot: false

Source

  • Checkpoint logic: extensions/soma-boot.ts → exhale handler
  • Git context on boot: extensions/soma-boot.tscase "git-context" in boot steps
  • Settings: core/settings.tsCheckpointSettings

View source on GitHub →