How It Works
- Start an AI coding session (Claude Code, Codex, Gemini, OpenCode)
- When you or the agent run
git commit, the session data is attached to your commit - The checkpoint ID is added as a commit trailer. For example:
- The session log and other metadata are stored in a checkpoint in the
entire/checkpoints/v1branch - On your next
git push, theentire/checkpoints/v1branch will be automatically pushed too
Manual Attach
If Entire did not capture a session automatically, you can attach it later:- Hooks were not installed when the session started
- Hooks failed to fire
- The session was research-only and did not produce file changes
- The session started in another folder but turned out to be relevant somewhere else
entire attach reads the transcript, writes the session into entire/checkpoints/v1, and links it to your latest commit.
- If the last commit already has an
Entire-Checkpointtrailer, the session is added to that checkpoint - If the last commit has no checkpoint yet, Entire creates one and asks whether to amend the commit
- In non-interactive flows, Entire prints the
Entire-Checkpoint: ...trailer so you can add it manually
Benefits
- Clean Git history - No extra commits from Entire
- Safe everywhere - Can be used on
mainor any branch - Rewind support - You can rewind file changes and session state
- Resume support - You or a coworker can resume a branch / commit session
Best Practices
- Make commits at logical stopping points or ask your agent to make granular commits
- Use meaningful commit messages—they become checkpoint labels
- Commit before major changes if you want a rewind point
Auto-Summarize
When enabled, Entire uses AI to automatically generate summaries of your sessions when you commit. These summaries are stored with your checkpoint metadata.Auto-summarize requires Claude CLI to be installed and authenticated. The
summary generation happens in the background and won’t block your commit.
- A brief description of what was accomplished
- Key decisions made during the session
- Files that were modified
Checkpoint Remote
By default, Entire pushes theentire/checkpoints/v1 branch to the same remote as your code. If you want to push checkpoint data to a separate repository, you can configure a checkpoint remote.
This is useful for keeping checkpoint data off your main repository on GitHub, centralizing checkpoints across multiple repositories, or separating audit trails from production code.
Setup
Configure the checkpoint remote via the CLI:Currently, only
github is supported as a provider. When using a
checkpoint remote, commit and push
.entire/settings.json to your
default branch so entire.io can locate your checkpoint data.How It Works
When you push code, Entire automatically:- Derives the checkpoint URL — Uses the same protocol (SSH or HTTPS) as your push remote
- Pushes checkpoints separately — The
entire/checkpoints/v1branch goes to your checkpoint remote
Fork Detection
Entire includes built-in fork detection to prevent contributors from accidentally pushing to an organization’s private checkpoint repository. If the push remote owner differs from the checkpoint remote owner, the checkpoint push is skipped:- You’re pushing to
alice/main-repo(your fork) - Checkpoint remote is configured as
org/checkpoints-private - Since
alice≠org, checkpoints fall back to your fork’s origin
Error Handling
If the checkpoint remote is unreachable, Entire warns you but continues:Troubleshooting
GitLab squash merges
By default, GitLab squash merges do not preserve commit trailers from the original commits. This removes theEntire-Checkpoint trailer that Entire uses to link commits to Checkpoint metadata.
To preserve it, configure the Squash commit message template under Settings > Repository > Merge requests.
Use a template that includes the squashed commit content, for example: