Pi is an AI coding agent for the command line. Entire integrates with Pi through a project-local TypeScript extension, automatically capturing sessions and checkpoints. The Pi integration is in preview and may contain bugs.Documentation Index
Fetch the complete documentation index at: https://docs.entire.io/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- Entire CLI installed
- Pi installed and configured
- A Git repository with Entire enabled
Enable
entire agent add pi installs a TypeScript extension at .pi/extensions/entire/index.ts. Pi loads the extension from the project and forwards lifecycle events to Entire.
How it works
How it works
Entire integrates with Pi through project-level extension hooks. The extension tracks the session lifecycle:
- Session Start —
session_startcreates a new Entire session. - Prompt Tracking —
before_agent_startcaptures each user prompt and the active transcript path. - Turn Completion —
agent_endfinalizes the turn and captures a stable transcript snapshot. - Session Cleanup —
session_shutdownclears the active session cache. - Transcript Capture — Entire reads Pi’s JSONL session transcript from
~/.pi/agent/sessions/orPI_CODING_AGENT_DIR. - Session Storage — data is saved to the
entire/checkpoints/v1branch.
What gets captured
What gets captured
| Data | Description |
|---|---|
| Conversation | Full transcript of prompts and responses |
| File changes | Files modified through Pi write and edit tools |
| Tool calls | Tool invocations with inputs and outputs |
| Token usage | Input, output, cache-read, and cache-write tokens |
| Timestamps | Session, turn, and checkpoint timing |
Features
Features
Rewind during sessions. Use
entire checkpoint rewind to restore to a previous checkpoint during or after a Pi session. When you rewind, Entire restores the checkpointed transcript state and shows the command to continue the Pi session. See the rewind command reference for full flag documentation.Resume previous sessions. Switch to a session’s branch with entire session resume <branch>. The CLI restores the session log if needed and prints pi --session <session-id>. See the resume command reference for full flag documentation.Explain commits. Inspect any commit or checkpoint with entire checkpoint explain. See the explain command reference for full flag documentation.Caveats and limitations
Caveats and limitations
- The integration is in preview. Pi support may have rough edges while the extension and transcript format settle.
- Hooks are extension-based. Pi loads Entire through
.pi/extensions/entire/index.tsinstead of a JSON hook config. - Transcript capture depends on Pi writing JSONL session files. Entire reads from Pi’s session store and caches snapshots under
.entire/tmp/pi/. - Subagent capture is not available. Pi does not currently expose a subagent transcript tree, so Entire captures the main Pi session.
- Shell-written files are less granular in transcript analysis. Entire extracts file paths from Pi’s
writeandedittools; shell commands that modify files are still represented by Git diffs at checkpoint time.
Best practices
Best practices
Enable Pi through Entire. Use
entire agent add pi instead of manually creating the extension. Entire preserves the expected extension shape and can reinstall it safely.Commit at logical points. Create checkpoints at natural stopping points: after implementing a feature, before risky refactors, or when you’d want to rewind later.Keep Pi session files available. If you plan to attach or resume older sessions, keep Pi’s session store under ~/.pi/agent/sessions/ or your configured PI_CODING_AGENT_DIR.Example workflow
Example workflow
Troubleshooting
Session not being captured
Session not being captured
- Verify Entire is enabled:
entire status - Check that
.pi/extensions/entire/index.tsexists in the repository - Ensure Pi is running from within the repository
- Reinstall hooks with
entire agent add pi --force
No checkpoints created
No checkpoints created
- Checkpoints require file changes — ensure Pi is modifying files
- Commit or stage work as part of your normal Git flow
- Check your settings in
.entire/settings.json - Verify the Pi extension was installed with
entire agent add pi
Transcript not captured
Transcript not captured
- Ensure Pi is writing JSONL files under
~/.pi/agent/sessions/orPI_CODING_AGENT_DIR - Check that the active session has a valid
.jsonltranscript file - Look for errors in Entire hook output with
entire doctor