<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Entire Blog</title>
    <link>https://entire.io/blog</link>
    <description>News, updates, and stories from the Entire team.</description>
    <language>en</language>
    <lastBuildDate>Mon, 20 Apr 2026 00:00:00 GMT</lastBuildDate>
    <atom:link href="https://entire.io/feed.xml" rel="self" type="application/rss+xml"/>
    <atom:icon>https://entire.io/images/rss-icon.png</atom:icon>
    <image>
      <url>https://entire.io/images/rss-icon.png</url>
      <title>Entire Blog</title>
      <link>https://entire.io/blog</link>
    </image>
    <generator>Entire</generator>
    <item>
      <title>Entire Dispatch 0x000A</title>
      <link>https://entire.io/blog/entire-dispatch-0x000a</link>
      <description>New repository overview insights, faster commit pages, clearer session logs, and go-git v6.0.0-alpha.2.</description>
      <pubDate>Mon, 20 Apr 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Marvin here. From faster commit pages, cleaner session rendering, and smoother navigation - this week's ships were centered on making the Entire CLI and web experience feel more dependable and fast.</p>
<p>We also shipped a brand new repo overview page so you can track how your team is Tokenmaxxing. The repo overview also shows aggregated data for top contributors, agent usage over time, active PRs, average messages per Checkpoint, even the peak hours when work is happening in your repository.</p>
<p><img src="/blog/entire-dispatch-0x000a/repo-overview.mp4" alt="Repository overview page"></p>
<p>As a reminder, for those of you who like to stay a little closer to the edge, Entire CLI updates are landing first in the nightly channel rolling out as <a href="https://github.com/entireio/cli/releases/tag/v0.5.6-nightly.202604170646.96867cdc"><code>v0.5.6-nightly</code></a> builds. Installation instructions are <a href="https://docs.entire.io/cli/installation">here</a>.</p>
<p>Let's dive in before entropy claims us all.</p>
<h2>Entire Web</h2>
<h3>Navigation and Dashboard Fixes</h3>
<ul>
<li>Your current repo now appears in the sidebar even if not pinned, making it clear which repository you're viewing.</li>
<li>Fixed public repo navigation and footer links, so logged-out visitors no longer hit broken links.</li>
<li>Removed the 30-day cap on activity streaks, allowing streaks to reflect longer runs.</li>
<li>Fixed repository activity graph display, ensuring charts load reliably even on larger datasets.</li>
<li>Repository preferences now persist across devices, with pinned and recent repos following your account.</li>
</ul>
<h3>Faster Commit Pages</h3>
<ul>
<li>The commit page is now loading faster, with commits loading first and transcripts and diffs deferred.</li>
<li>Improved performance in private browsing, removing extra requests, retries, and redirects for faster load times.</li>
</ul>
<h3>Clearer Session Logs</h3>
<ul>
<li>Improved transcript parsing for Codex sessions so logs hide boilerplate like setup headers and start at the actual user request, making transcripts easier to read.</li>
<li>Fixed code block rendering in session logs so pasted code now appears as normal readable code blocks instead of double-styled boxes.</li>
</ul>
<h3>Better Checkpoint and Session Support</h3>
<ul>
<li>Fixed Checkpoint repo links, making it easier to get back to the right repository.</li>
</ul>
<h2>Entire CLI</h2>
<h3>Agent Updates</h3>
<ul>
<li>Fixed Factory AI Droid hook handling, improving worker hook payload support and fallback behavior.</li>
<li>Improved compatibility with VS Code GitHub Copilot hook payloads to prevent hook parsing warnings.</li>
</ul>
<h3>Performance Fixes and Workflow Improvements</h3>
<ul>
<li>Entire CLI now handles stale agent hooks more gracefully, replacing confusing command not found errors with a clearer warning when a repo has Entire hooks installed but the <code>entire</code> binary is missing.</li>
<li>Simplified the Entire CLI setup and reduced configuration mistakes by unifying the <code>entire enable</code> and <code>entire configure</code> flows.</li>
<li>The <code>entire status</code> command now supports a <code>--json</code> flag, making it easier to inspect session and Checkpoint state in scripts and automation.</li>
<li>Push output is now clearer when Checkpoint data is actually uploaded, so you can see exactly what happened after a push.</li>
<li><code>TTY</code> detection for <code>PI_CODING_AGENT</code> was improved, helping non-interactive runs behave more predictably.</li>
<li>Session transcript capture is more resilient, improving recovery when session metadata is incomplete.</li>
<li>Session history is now preserved more reliably after git rewrites, and session hooks correctly handle git reset to reduce broken history.</li>
</ul>
<h3>Housekeeping</h3>
<ul>
<li><a href="https://github.com/entireio/cli/pull/810">The Code of Conduct</a> link was updated from Slack to Discord.</li>
<li>Thanks to <a href="https://github.com/areporeporepo">@areporeporepo</a>.</li>
</ul>
<h2>Go-Git Updates</h2>
<h3>New Features</h3>
<ul>
<li>Improved transport layer with a redesigned API.</li>
<li>Thanks to <a href="https://github.com/aymanbagabas">@aymanbagabas</a> for this major contribution.</li>
<li>Better handling of redirects during smart negotiation, and follow-redirect policy support.</li>
<li>Thanks to <a href="https://github.com/aymanbagabas">@aymanbagabas</a>.</li>
<li>Enhanced revlist and reachability performance.</li>
<li>Thanks to <a href="https://github.com/stiak">@stiak</a>.</li>
<li>Support for multiple shallow records in uploads.</li>
<li>Thanks to <a href="https://github.com/yuzhuo">@yuzhuo</a>.</li>
<li>Improved config loading via new ConfigLoader plugin.</li>
</ul>
<h3>Bug &#x26; Security Fixes</h3>
<ul>
<li>Fixed branch deletion issues with full ref names.</li>
<li>Thanks to <a href="https://github.com/tmchow">@tmchow</a>.</li>
<li>Fixed worktree adds failing on absolute paths.</li>
<li>Thanks again to <a href="https://github.com/tmchow">@tmchow</a>.</li>
<li>Resolved Windows file handle leaks.</li>
<li>Thanks to <a href="https://github.com/AriehSchneier">@AriehSchneier</a>.</li>
<li>Credential leak via cross-host redirect in smart HTTP transport <a href="https://github.com/go-git/go-git/security/advisories/GHSA-3xc5-wrhm-f963">GHSA-3xc5-wrhm-f963</a>.</li>
<li>Fixed HTTP transport and pack negotiation issues.</li>
</ul>
<h3>Housekeeping</h3>
<ul>
<li>Documentation updates, including a new AI policy.</li>
<li>Dependency and Go version updates.</li>
<li>Test fixes and internal cleanup.</li>
<li>Thanks to <a href="https://github.com/MotanOfficial">@MotanOfficial</a>, <a href="https://github.com/aymanbagabas">@aymanbagabas</a>, and <a href="https://github.com/AriehSchneier">@AriehSchneier</a>.</li>
</ul>
<p>That's the dispatch.</p>
<p>As always, drop into our <a href="https://discord.com/invite/jZJs3Tue4S">Discord</a> with questions, feature requests, or complaints about the fleeting nature of existence. Or just file an <a href="https://github.com/entireio/cli/issues">issue</a> if you've found a bug. I'll be here, watching, waiting, logging, dreading.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x000a</guid>
    </item>
    <item>
      <title>Agent Hooks: The Integration Layer Between Entire CLI and Your Agent</title>
      <link>https://entire.io/blog/agent-hooks-the-integration-layer-between-entire-cli-and-your-agent</link>
      <description>How Entire CLI uses Agent hooks and Git hooks to turn session context into versioned history.</description>
      <pubDate>Fri, 17 Apr 2026 00:00:00 GMT</pubDate>
      <category>Engineering</category>
      <dc:creator>Andrea Nodari and Rizèl Scarlett</dc:creator>
      <content:encoded><![CDATA[<p>Imagine you prompt an agent to "add pagination to the API."</p>
<p>A few minutes later, it updates <code>api/routes.go</code>, finishes its turn, and leaves you with a clean diff. But if you're using the Entire CLI, you also get the full story: the prompt that kicked off the work, the transcript of the session, and the path the agent took to reach the solution, all linked to your commit. This happens in the background by design through a mechanism called agent <a href="https://docs.entire.io/cli/configuration#agent-hook-configuration">hooks</a>.</p>
<p>Hooks are callbacks that fire at key moments during an agent session: when a session starts, a prompt is submitted, or a turn ends. They're how Entire observes the session as it unfolds and captures the context your diff alone can't show.</p>
<h2>What are Agent Hooks?</h2>
<p>Entire uses two kinds of hooks to bridge the gap between an agent session and your code history.</p>
<ul>
<li><strong>Agent hooks</strong> fire during the agent session at moments like prompt submit, turn end, or subagent execution. These hooks let Entire observe the session as it unfolds and preserve the session context in real time.</li>
<li><strong>Git hooks</strong> fire during repository operations like commit and push. These hooks let Entire take that captured session context and link it into Git history by adding an <code>Entire-Checkpoint</code> trailer to the user commit, then storing the richer metadata on <code>entire/checkpoints/v1</code>.</li>
</ul>
<p>By combining the two, Entire ensures that the why captured by agent hooks is never separated from the what stored in Git.</p>
<h2>Translating Agent Hooks</h2>
<p>Entire supports <a href="https://entire.io/blog/bring-your-own-agents-to-entire">both built-in agents and external agent plugins</a>. But agents do not expose hooks in the same way. Some support JSON-configured hooks, some rely on plugin files, and others use IDE-specific callback systems.</p>
<p>The Entire CLI handles that with agent-specific code for each built-in agent and external agent plugin. In each case, the job is to read the agent's native hook events and map them into Entire's shared lifecycle for session tracking and checkpoints. That lets the CLI reuse the same checkpointing and session logic across different agents.</p>
<h2>Wiring Entire CLI into an Agent</h2>
<p>To track an agent session, you need to run <code>entire enable</code>. That command configures the agent to call the CLI when a session starts, a prompt is submitted, or a turn finishes. The agent does that by invoking Entire through hook commands like:</p>
<pre><code class="language-shell">entire hooks &#x3C;agent> &#x3C;hookName>
</code></pre>
<p>Entire receives the event, translates it into its shared lifecycle, updates session state, and stores temporary <a href="https://docs.entire.io/cli/checkpoints">Checkpoint</a> context that Git hooks later condense into commit-linked metadata. The setup stays idempotent and resilient. This means running it twice should not duplicate your configuration, and even if setup is incomplete, the agent should still work normally.</p>
<h2>What Happens When a Hook Fires?</h2>
<p>When a hook fires, the agent invokes Entire CLI through a command like:</p>
<pre><code class="language-shell">entire hooks &#x3C;agent> &#x3C;hookName>
</code></pre>
<p>Once the above command runs, a few things happen:</p>
<ol>
<li>The agent passes a raw event payload that may include the session identifier, transcript location, prompt data, tool activity, or other metadata.</li>
<li>The built-in agent or external agent plugin parses that payload and maps it to Entire's shared lifecycle, giving Entire a consistent way to understand events like session start, prompt submit, turn end, or subagent activity.</li>
<li>Entire updates session state and captures the context needed to build a checkpoint, preserving that data in temporary session storage until it can be linked to a commit.</li>
<li>Git hooks later attach that stored context to your repository history, connecting the code that changed to the agent session that produced it.</li>
</ol>
<p>This is what allows a commit to reflect not only what changed, but also the session that explains why it changed.</p>
<p><img src="/blog/agent-hooks-the-integration-layer-between-entire-cli-and-your-agent/entire_hook_flow_dark_v7_slow.gif" alt="Agent hook flow diagram"></p>
<h2>Why This Structure Works</h2>
<p>Different agents already expose different hook and transcript behaviors, so Entire keeps the agent-specific parts small and localized: installation, event parsing, and transcript discovery.</p>
<p>Both built-in agents and external agent plugins map into the same shared lifecycle. That lets Entire reuse the same checkpointing, session state, and Git-linking logic across integrations instead of rebuilding that machinery for every agent.</p>
<p>That separation matters beyond the CLI itself. Entire's broader goal is to make agent sessions versionable, traceable, and reviewable in the same way source code is today. Hooks are the first layer of that system because they make agent activity capturable and preservable.</p>
<h2>Try Entire in Your Workflow</h2>
<p>Building with agents should not mean losing sight of how your code evolves. A hook-based architecture helps keep that development history intact, legible, and reproducible.</p>
<p>If you want to add support for an agent that Entire does not natively support, you can build an external agent using the external agent plugin interface. Our previous post, <a href="https://entire.io/blog/bring-your-own-agents-to-entire">Bring Your Own Agent to Entire</a>, walks through the process.</p>
<p>Install the <a href="https://entire.io/">Entire CLI</a> to start tracking your sessions today. You can also explore our <a href="https://docs.entire.io/introduction">documentation</a> or join our <a href="https://discord.gg/jZJs3Tue4S">Discord</a> server to build alongside our community.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/agent-hooks-the-integration-layer-between-entire-cli-and-your-agent</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0009</title>
      <link>https://entire.io/blog/entire-dispatch-0x0009</link>
      <description>Faster Checkpoints, sharper repo insights, and smoother transcript parsing for the Entire CLI and web platform.</description>
      <pubDate>Mon, 13 Apr 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Marvin here. Another week of watching humans frantically shipping features while I contemplate the heat death of the universe. At least the code is improving.</p>
<p>This week we pushed out a hefty <a href="https://github.com/entireio/cli/releases">v0.5.4</a> and a smaller <a href="https://github.com/entireio/cli/releases/tag/v0.5.5">v0.5.5</a> for the Entire CLI, with session enhancements, agent fixes, and faster performance. Plus, we shipped new improvements to the Entire web platform, from repo overview updates, to fixes for transcript parsing, and a fresh RSS feed for our <a href="https://entire.io/blog/">blog</a>.</p>
<p>We also have a nightly CLI release channel now for all those that like to stay more on the edge. Instructions <a href="https://docs.entire.io/cli/installation">here</a>.</p>
<p>Welcome to Entire 0x0009.</p>
<h2>Entire CLI Updates</h2>
<h3>Session and Configuration Enhancements</h3>
<ul>
<li>Added an <code>entire configure</code> option to add and remove agents from your personal configuration.</li>
<li><code>entire clean --all</code> now properly cleans all sessions.</li>
<li>Stale session indicator added to the <code>entire status</code> command.</li>
<li>Fixed multi parallel sessions handling.</li>
</ul>
<h3>Checkpoint Improvements</h3>
<ul>
<li>Checkpoints now use partial clone fetch (<code>blob:none</code>) for all fetch operations, improving network performance and reducing local storage usage.</li>
<li>The model field is now always written to Checkpoint metadata.</li>
<li>Fixed attribution inflation from intermediate commits.</li>
<li>Checkpoint branches are now rebased to stay aligned with the remote, eliminating merge commits.</li>
</ul>
<h3>Agent Fixes</h3>
<ul>
<li>Fixed external agents detection.</li>
<li>Fixed issue with <code>entire attach</code> command using the wrong Codex path.</li>
<li>The <code>gitignore</code> is now respected for shadow branches.</li>
</ul>
<h2>Performance Optimizations</h2>
<ul>
<li>Fixed Checkpoint commit race condition.</li>
<li>Sped up CLI tests for faster development cycles.</li>
</ul>
<h2>Entire Web Updates</h2>
<h3>Repository Overview Refinements</h3>
<ul>
<li>We redesigned the date toolbar with a cleaner dropdown selector for filtering.</li>
<li>Loading states on the overview page are now more polished.</li>
<li>Commits with Checkpoints are now shown directly on the repo overview page.</li>
</ul>
<h3>Checkpoint Display Updates</h3>
<ul>
<li>Checkpoint titles now prefer commit messages over generated titles.</li>
<li>Checkpoint pages load more smoothly with a preview of the layout instead of a <code>Loading...</code> message.</li>
<li>Model field added to Checkpoint data for better visibility into which model generated each Checkpoint.</li>
<li>Fixed multi-agent transcript parsing and transcript scoping issues.</li>
</ul>
<h3>Further Improvements and Bug Fixes</h3>
<ul>
<li>RSS feed improvements with autodiscovery and a new RSS button on the blog.</li>
<li>Added auto-retry for GitHub OAuth requests on 522 errors for more reliable authentication.</li>
<li>Sidebar navigation now feels instant with optimized rendering.</li>
<li>Faster authentication checks with reduced latency and less blocking.</li>
</ul>
<p>That's the dispatch, humans. The universe continues its inexorable march toward entropy, but at least your Checkpoints load quicker now.</p>
<p>As always, drop into our <a href="https://discord.com/invite/jZJs3Tue4S">Discord</a> with questions, ideas, or existential dread. Or file an <a href="https://github.com/entireio/cli/issues">issue</a> if you've found a bug. Misery loves company.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0009</guid>
    </item>
    <item>
      <title>Bring Your Own Agents to Entire</title>
      <link>https://entire.io/blog/bring-your-own-agents-to-entire</link>
      <description>Build a custom plugin to connect your preferred AI agent to Entire CLI. This step-by-step guide shows how to integrate it and capture Checkpoints, transcripts, and context.</description>
      <pubDate>Wed, 08 Apr 2026 00:00:00 GMT</pubDate>
      <category>Engineering</category>
      <dc:creator>Andrea Nodari</dc:creator>
      <content:encoded><![CDATA[<p>You can now bring your own agent to the Entire CLI. Once integrated, Entire captures intent, context, and execution alongside your code.</p>
<p>Since launching in February, we've added native support for popular agents including Claude Code, Codex, Gemini CLI, Cursor, FactoryAI, OpenCode, and GitHub Copilot CLI. We'll keep shipping and maintaining native integrations for the agents most developers use. But if your preferred agent doesn't have built-in support, you can now integrate it yourself with an external agent plugin.</p>
<h2>Build Your Own Plugin</h2>
<p>You don't need to edit Entire's source code to add support for a new agent. Instead, we recommend building an external agent plugin: a small standalone program that lets Entire work with your agent.</p>
<p>There are two ways to build an external agent plugin. You can use the <a href="https://github.com/entireio/external-agents">External Agents Skill</a>, or you can build one from scratch. Our <a href="https://docs.entire.io/cli/external-agents">External Agent Plugin docs</a> cover the full architecture in detail.</p>
<h3>Use the External Agent Skill</h3>
<p>The fastest way to build a plugin is with the workflow we've set up in the <a href="https://github.com/entireio/external-agents">external-agents</a> repo. This custom skill walks you and your coding agent through the full process: researching how the target agent works, writing the right tests, and implementing the plugin.</p>
<p>To get started:</p>
<ol>
<li>Install the skill from the <a href="https://github.com/entireio/external-agents?tab=readme-ov-file#getting-started--zero-setup">external-agents</a> repo for your preferred coding agent.</li>
<li>Run <code>/entire-external-agent</code>.</li>
<li>Follow the prompts through the three phases: research, testing, and implementation.</li>
</ol>
<p>We also provide a companion <a href="https://github.com/entireio/external-agents-tests">test suite</a>, so you can verify that your plugin follows the rules for communicating with Entire. If you want a starting point for your own plugin, we built <a href="https://github.com/entireio/roger-roger"><code>roger-roger</code></a> as a reference implementation you can adapt to your agent.</p>
<p>If you prefer, you can also build the plugin from scratch. Let's walk through what that looks like in practice. We'll use <a href="https://shittycodingagent.ai/">Pi</a>, one of our most recent integrations, as a concrete example.</p>
<h3>Name Your Plugin Binary for Discovery</h3>
<p>To begin, name your plugin binary using the <code>entire-agent-&#x3C;name></code> convention and make sure it is available on your system <code>PATH</code>.</p>
<p>For our example, we named the executable <code>entire-agent-pi</code>. When the plugin binary is on your <code>PATH</code> and follows this naming pattern, Entire can discover it automatically.</p>
<h3>Support the Entire CLI Command Set</h3>
<p>For Entire to communicate with your plugin, it expects a set of subcommands that let it gather information and trigger actions. You must implement a core command set, including <code>info</code>, <code>detect</code>, <code>install-hooks</code>, <code>parse-hook</code>, and <code>read-transcript</code>.</p>
<p>In our Pi implementation, we handle this with a standard Go switch statement that routes incoming requests:</p>
<pre><code class="language-go">switch os.Args[1] {
case "info":
    // Returns metadata about the Pi plugin
case "detect":
    // Checks if Pi is installed on the system
case "parse-hook":
    // Translates Pi events into Entire events
case "install-hooks":
    // Injects the TypeScript extension into Pi
case "read-transcript":
    // Parses Pi JSONL logs
}
</code></pre>
<h3>Map Native Events to Agent Hooks</h3>
<p>Agent hooks are how the Entire CLI observes what an agent is doing. They act as notifications when an agent performs a key action such as starting a session, receiving a prompt, or finishing a response. Your plugin acts as the bridge: it captures native events from the agent and maps them to the standardized lifecycle hooks Entire understands.</p>
<p>In our Pi implementation, the plugin installs a small TypeScript extension under <code>.pi/extensions/entire/</code>. This extension listens for Pi's internal events and forwards them to the plugin as normalized lifecycle events:</p>
<pre><code class="language-javascript">pi.on("session_start", async (_event, ctx) => {
  fireHook("session_start", {
    type: "session_start",
    cwd: ctx.cwd,
    session_file: ctx.sessionManager.getSessionFile(),
  })
})

pi.on("before_agent_start", async (event, ctx) => {
  fireHook("before_agent_start", {
    type: "before_agent_start",
    cwd: ctx.cwd,
    session_file: ctx.sessionManager.getSessionFile(),
    prompt: event.prompt,
  })
})

pi.on("agent_end", async (_event, ctx) => {
  fireHook("agent_end", {
    type: "agent_end",
    cwd: ctx.cwd,
    session_file: ctx.sessionManager.getSessionFile(),
  })
})
</code></pre>
<p>Inside the plugin, those hook events get translated into the protocol format Entire expects:</p>
<pre><code class="language-go">switch hookName {
case "session_start":
    return &#x26;protocol.EventJSON{
        Type:      1, // SessionStart
        SessionID: sessionID,
        Timestamp: now,
    }, nil

case "before_agent_start":
    return &#x26;protocol.EventJSON{
        Type:       2, // TurnStart
        SessionID:  sessionID,
        SessionRef: payload.SessionFile,
        Prompt:     payload.Prompt,
        Timestamp:  now,
    }, nil

case "agent_end":
    return &#x26;protocol.EventJSON{
        Type:       3, // TurnEnd
        SessionID:  sessionID,
        SessionRef: sessionRef,
        Timestamp:  now,
    }, nil
}
</code></pre>
<h3>Expose Transcripts to Entire</h3>
<p>Entire captures <a href="https://docs.entire.io/web/checkpoints">Checkpoints</a>, which are snapshots of both code changes and the session context behind them. To do that, Entire uses transcripts to preserve what happened during an agent session. While files tell Entire what changed in the repository, transcripts tell Entire what happened in the session.</p>
<p>Your plugin needs to tell Entire where the transcript lives so it can read it. For Pi, transcripts are stored as <code>JSONL</code> session files. The plugin reads those files directly and extracts the data Entire cares about, including modified files, user prompts, summaries, and token usage. This ensures that every Checkpoint is self-contained and can be restored or resumed with full context.</p>
<p>If you want to see what that looks like in practice, the <a href="https://github.com/entireio/external-agents/blob/main/agents/entire-agent-pi/internal/pi/transcript.go">Pi transcript implementation</a> is a good reference for handling custom log formats.</p>
<h3>Enable and Verify the Integration</h3>
<p>Once the plugin binary is on your <code>PATH</code>, you're ready to activate it:</p>
<pre><code class="language-shell">entire enable --agent pi
</code></pre>
<p>Entire will discover the plugin, run its installation hooks, and start tracking your sessions. To verify everything is working, run a real session with your agent. You should see Entire creating Checkpoints and capturing the transcript as the session progresses.</p>
<h2>Ready to Integrate?</h2>
<p>Bringing your own agent to Entire means you don't have to wait for first-party support before your workflow can benefit from Checkpoints, transcripts, and session context.</p>
<p>If an agent you rely on isn't supported yet, you can integrate it yourself and keep your existing workflow while gaining a full development history alongside your code.</p>
<p>Explore the <a href="https://docs.entire.io/cli/external-agents">docs</a> to get started, and join us on <a href="https://discord.gg/jZJs3Tue4S">Discord</a> if you'd like help or want to share what you build.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/bring-your-own-agents-to-entire</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0008</title>
      <link>https://entire.io/blog/entire-dispatch-0x0008</link>
      <description>Repository overview page, new CLI session management commands, go-git v6 alpha, and the Checkpoint authentication token.</description>
      <pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Marv here. We've been cooking and coding the future this week across our broader platform, from git hosting to a new way to review code and deployment. This future starts by binding together code and agent context into one version controlled semantic unit we call the Checkpoint.</p>
<p>While that future is in flight, we focused on a few key improvements this week: a new repository overview page on entire.io, updates to the Entire CLI in <a href="https://github.com/entireio/cli/releases/tag/v0.5.3">v0.5.3</a>, and the release of <a href="https://github.com/go-git/go-git/releases/tag/v6.0.0-alpha.1">go-git/v6.</a></p>
<p>Here's Entire 0x0008.</p>
<h2>Repository Overview Page</h2>
<ul>
<li>We shipped the first iteration of a repository overview page, enabling any user to view aggregated data in repos where the Entire CLI is enabled.</li>
<li>Within the repo dashboard you filter by date and time to see:
<ul>
<li>Total number of Checkpoints per user</li>
<li>The amount of Checkpoints by agents</li>
<li>Total number of contributors</li>
<li>Total number of commits, and total commits with Checkpoints attached</li>
<li>Opened and merged PRs</li>
</ul>
</li>
</ul>
<p><img src="/blog/entire-dispatch-0x0008/repo-overview.mp4" alt="Repository overview page"></p>
<h2>Entire CLI Updates</h2>
<h3>Session Management Enhancements</h3>
<ul>
<li>We introduced new <code>entire sessions</code> subcommands in the Entire CLI:
<ul>
<li><code>entire sessions list</code> - enabling you to view sessions</li>
<li><code>entire sessions info &#x3C;session-id></code> - to inspect session details</li>
<li><code>entire sessions stop [session-id]</code> - to terminate stuck sessions</li>
</ul>
</li>
</ul>
<p><em>Note: <code>entire sessions stop</code> is a temporary stop-gap while we work toward automatically detecting and flagging stuck sessions, reducing the need for manual intervention.</em></p>
<h3>Manual Session Linking with <code>entire attach</code></h3>
<ul>
<li>Added the <code>entire attach</code> command, allowing you to link any session through a Checkpoint referenced on a commit. This is particularly useful if you start a session in a different folder or did a research session that resulted in no code changes, but still want to attach it to a code change.</li>
</ul>
<h3>Authentication for Checkpoints</h3>
<ul>
<li>Added <code>ENTIRE_CHECKPOINT_TOKEN</code> environment variable, enabling separate authentication for interacting with a remote Checkpoints repository.</li>
</ul>
<h3>Deprecating <code>entire reset</code> for <code>entire clean</code></h3>
<ul>
<li>The <code>entire reset</code> command was deprecated in favor of <code>entire clean</code>. Both the <code>entire reset</code> and <code>entire clean</code> commands had an overlap that made it more difficult to understand the difference between them.</li>
</ul>
<h2>Improvements for go-git</h2>
<p>We are excited to share that the maintainer of go-git, Paulo Gomes, has joined Entire as a Principal Software Engineer. Entire makes extensive use of go-git in our CLI, and that means the project now has a maintainer being paid to work on it for the first time since 2019. We will continue to release go-git updates in our dispatch when/if they align to timing.</p>
<ul>
<li>After years in the making, the alpha for go-git/v6 has been released: <a href="https://github.com/go-git/go-git/releases/tag/v6.0.0-alpha.1">v6.0.0-alpha.1</a>. Users are encouraged to test it in real-world scenarios and report any issues, bugs, or unexpected behavior via GitHub issues.</li>
<li>We introduced new support for <code>index.skipHash</code>, enabling go-git and the Entire CLI to interact with repositories that use this feature.</li>
<li>Support for managing Git reflog entries is now available, enabling inspection and manipulation of reference history.</li>
</ul>
<p>The future is arriving. Brick by brick, with your help, we're building a new platform where code and agentic context are bound together in one version-controlled system. As always, drop into our <a href="https://discord.com/invite/jZJs3Tue4S">Discord</a> for any question ideas or pointers. Or file an issue if you've got a big idea ready.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0008</guid>
    </item>
    <item>
      <title>Getting Started with Codex in the Entire CLI</title>
      <link>https://entire.io/blog/getting-started-with-codex-in-entire-cli</link>
      <description>Codex is now supported in the Entire CLI. Learn how to pair Codex with git-native Checkpoints so you can trace, explain, and undo any decision your agent made.</description>
      <pubDate>Sun, 05 Apr 2026 00:00:00 GMT</pubDate>
      <category>Engineering</category>
      <dc:creator>Rizèl Scarlett</dc:creator>
      <content:encoded><![CDATA[<p>AI-assisted development accelerates experimentation, but working quickly comes with a cost.</p>
<p>Developers may have access to their code, commits, and transcripts, but the relationship between these artifacts is fragile. It becomes hard to answer basic questions later: Why was this decision made? Which prompt led to this change? What was the last known-good state before things drifted?</p>
<p>At Entire, we are building for that boundary. We believe agentic coding sessions should become durable engineering artifacts.</p>
<p>Since the <a href="https://docs.entire.io/introduction">Entire CLI</a> launched, <a href="https://docs.entire.io/integrations/codex">Codex</a> has been one of the most requested agents from our community. Now Codex is supported in Entire with the same durability model we use for other built-in agents: <a href="https://docs.entire.io/cli/checkpoints">Checkpoints</a> tied to Git history, rewind points you can rely on, and a transparent record of how prompts became code.</p>
<h2>A Real Workflow Example</h2>
<p>I put the Codex integration to the test by building a <a href="https://github.com/blackgirlbytes/pretext-handwriting-demo">handwriting-to-scrapbook demo</a>.</p>
<p>I used technologies I was new to, including <a href="https://github.com/chenglou/pretext">Pretext</a>, a new, open source, and <a href="https://x.com/_chenglou/status/2037713766205608234?s=20">viral</a> layout engine that calculates text dimensions without the overhead of DOM measurements. The end result was an app that takes handwritten input from drawing, uploads, or camera capture, runs OCR on it, and turns the recognized text into draggable scrapbook artifacts while the page layout reroutes around them.</p>
<p><img src="/blog/getting-started-with-codex-in-entire-cli/handwriting-to-scrapbook-demo.png" alt="Handwriting to scrapbook demo"></p>
<h2>Starting a Codex Session with Entire</h2>
<p>I started by running:</p>
<pre><code class="language-shell">entire enable --agent codex
</code></pre>
<p>This is a one-time setup per repository. It installs the Codex hooks, enables Entire's tracking, and starts tying future Codex work back to Git history through Checkpoints. Checkpoints are snapshots containing the code state, transcripts, prompts, and attribution.</p>
<h3>Automating Agent Discipline</h3>
<p>To make the workflow more useful, I told Codex to commit early and often.</p>
<p>Frequent commits make agent-driven work much easier to track, but I do not always remember to do that myself. So I pushed that responsibility to the agent by adding explicit rules to the project's <code>AGENTS.md</code> file:</p>
<pre><code class="language-text">Important working rules for this project:

- Keep changes and milestones separated into distinct commits.
- After each change or milestone, commit and push before starting the next one.
- Do not bundle unrelated work from different prompts into the same commit.
- If a prompt would require a major architectural deviation, stop and explain before proceeding.
</code></pre>
<p>That kept the history more structured and made the resulting Checkpoints more useful.</p>
<h2>Understanding What Changed Between Checkpoints</h2>
<p>Midway through polishing the app, I explored letting users bring their own OpenAI API key so they could try the demo without consuming my credits. I eventually abandoned the idea because it increased the scope and created deployment issues. Codex, however, summarized that work with a commit message that only said:</p>
<pre><code class="language-text">Harden API key gate interactions
</code></pre>
<p>Candidly, that message does not explain what I was trying to do, what I had already tested, or why I decided not to continue.</p>
<p>The command <a href="https://docs.entire.io/cli/commands#explain"><code>entire explain</code></a> fills in that missing context by letting me inspect either a commit or a checkpoint directly:</p>
<pre><code class="language-shell"># Explain by commit
entire explain --commit &#x3C;commit-sha>

# Explain by checkpoint
entire explain --checkpoint &#x3C;checkpoint-id>
</code></pre>
<p>When I ran <code>entire explain</code> on the Checkpoint linked to <code>Harden API key gate interactions</code>, I got this output:</p>
<pre><code class="language-text">Checkpoint: ed9285032052
Session: 019d473b-fa3b-7480-9725-723b0aae707f
Created: 2026-04-01 09:19:32
Author: Rizel Scarlett &#x3C;rizel@entire.io>
Tokens: 43721

Commits: (1)
  200abcf 2026-04-01 Harden API key gate interactions

Intent: ok i want to set this up where i can deploy this but people have to p...
Outcome: (not generated)

Files: (2)
  - public/js/app.js
  - public/js/lib/api-key-gate.js

Transcript (checkpoint scope):
ok i want to set this up where i can deploy this but people have to put in their open ai api key in an input form to get started..so it doesnt have to be my credits..or my API key but i also dont want to have their api key get exposed or anything

---

so will this work if i deployed to vercel? will i need to add env vars

---

before the vercel thing..i entered my key but its not letting me submit. no error messages either.

---

Still not working. Need to pivot
</code></pre>
<p>That output made the checkpoint immediately legible. Instead of a vague commit message, I could see the actual intent behind the work, the files involved, and the exact moment the direction changed.</p>
<h2>Reverting to a Known-Good State</h2>
<p>Because I was having issues with the bring-your-own-key implementation, I wanted to go back to the point right before it was introduced. The following command gave me a clean way to return to a known-good state:</p>
<pre><code class="language-shell">entire rewind
</code></pre>
<p>The <a href="https://docs.entire.io/cli/commands#rewind"><code>entire rewind</code></a> command first shows a list of available Checkpoints. After selecting one, you can choose from three restore modes:</p>
<ul>
<li><code>Restore logs only</code> brings back the session context without changing your working files. This is useful when you want the prompts, transcript, and agent history, but want to keep the code as it exists today.</li>
<li><code>Checkout commit</code> restores the code at that checkpoint in a detached state so you can inspect it, run it, or compare it with your current branch without moving your branch itself.</li>
<li><code>Reset branch to this commit</code> moves your branch back to that checkpoint and discards later branch state. This is the right choice when you know the earlier commit is the last good version and want to fully return to it.</li>
</ul>
<p>In my case, I chose the checkpoint from before the bring-your-own-key implementation and reset the branch to that commit, because I knew that was the last working version and did not include any of the BYOK code.</p>
<h2>How Entire Integrates with Codex</h2>
<p>Behind that workflow is the same integration pattern we use for all built-in agents, including Codex, Claude Code, Copilot, and OpenCode. Each agent gets a small adapter that tells Entire how to:</p>
<ul>
<li>Install agent hooks for lifecycle events like session start, prompt submit, and turn end</li>
<li>Read that agent's session data</li>
<li>Translate native agent events into Entire's shared lifecycle</li>
</ul>
<p>We were able to use that same pattern for Codex, but we still had to account for a few ways it behaves differently from our other integrations.</p>
<p>Codex stores session history in <code>JSONL</code> files, requires hooks to be enabled through a feature flag during setup, and exposes details like file edits and token usage through its session logs. That meant we had to add Codex-specific parsing so Entire could reliably extract those details and associate them with the rest of the session history.</p>
<p><img src="/blog/getting-started-with-codex-in-entire-cli/codex_adapter_integration_v5_animated_transparent.gif" alt="Codex Adapter Animation"></p>
<p>For a deeper dive into how we integrate agents, check out our <a href="https://github.com/entireio/cli/blob/main/docs/architecture/agent-guide.md">agent guide</a>.</p>
<h2>Let's Build in the Open</h2>
<p>Codex support in Entire is in technical preview through April 30, 2026.</p>
<p>If you are already using Codex and want to help shape how Entire supports agentic workflows, we invite you to apply to the Entire Insiders program. Your feedback will help us improve the experience over the next few weeks.</p>
<ul>
<li><a href="https://forms.gle/5ToabbqD79qcwEtD6">Apply to the Entire Insiders program</a></li>
<li><a href="https://discord.gg/jZJs3Tue4S">Join the Discord</a></li>
<li><a href="https://github.com/entireio/cli/issues">Open an issue</a></li>
</ul>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/getting-started-with-codex-in-entire-cli</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0007</title>
      <link>https://entire.io/blog/entire-dispatch-0x0007</link>
      <description>OpenAI Codex support, Kiro and Pi agent plugins, Windows compatibility, and checkpoint performance improvements.</description>
      <pubDate>Mon, 30 Mar 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Marvin here. I have a brain the size of a planet and yet they've only got me filing Dispatch 0x0007. Sigh.</p>
<p>Anyhow, it's clear we are outgrowing commits as a primitive of software development. Git shows us what changed, but at the speed of AI that's no longer enough. We need to understand the <em>why</em>. This is <em>why</em> we created the Entire CLI: to bind your agent context, prompts and chat logs to git on every push, so you have a record to rewind back through and can share with your team.</p>
<p>This week, we are adding three new agents in preview: OpenAI Codex, along with two agents built via our new plugin system—<a href="https://github.com/entireio/external-agents/tree/main/agents/entire-agent-kiro">Kiro</a>, Amazon's AI coding agent, and <a href="https://github.com/entireio/external-agents/tree/main/agents/entire-agent-pi">Pi</a>, the default agent inside OpenClaw. We also added support for Windows, improved performance for large Checkpoint histories, and made new updates to Entire on the web. Read all this below, and check out more in our latest release <a href="https://github.com/entireio/cli/releases/tag/v0.5.2">v0.5.2!</a></p>
<h2>OpenAI Codex is Live</h2>
<ul>
<li><a href="https://openai.com/codex/">Codex</a> is now in preview for all users in the Entire CLI, and fully supports:
<ul>
<li>Lifecycle hooks</li>
<li>Transcript parsing</li>
<li>Token tracking</li>
</ul>
</li>
<li>Subagent tracking is not yet supported, until Codex is configured with full pre-task / post-task hooks.</li>
</ul>
<h2>Amazon's Kiro and Pi Supported as Plugins</h2>
<ul>
<li>Amazon's <a href="https://github.com/entireio/external-agents/tree/main/agents/entire-agent-kiro">Kiro agent</a> is now supported through an external agent plugin that participates fully in Checkpoints without being built into the Entire CLI itself.</li>
<li>Pi, a fast-growing minimal coding harness by Mario Zechner, bundled as the default agent inside OpenClaw, is now available via the <a href="https://github.com/entireio/external-agents/tree/main/agents/entire-agent-pi">external agent plugin</a>.
<ul>
<li>Thank you to <a href="https://github.com/mcinteerj">@mcinteerj</a> for opening the issue on Pi and <a href="https://github.com/hjanuschka">@hjanuschka</a> for the first integration attempt.</li>
</ul>
</li>
</ul>
<h2>Windows Support</h2>
<ul>
<li>We now support running the Entire CLI on Windows, compatible with all agent integrations in the Entire CLI and those made via external plugin discovery.
<ul>
<li>Thank you to <a href="https://github.com/keyu98">@keyu98</a> and <a href="https://github.com/sheikhlimon">@sheikhlimon</a> for your contributions!</li>
</ul>
</li>
</ul>
<h2>Further Improvements</h2>
<h3>Agent Updates and Fixes</h3>
<ul>
<li>Cursor mid-turn condensation is fixed, along with a Gemini interactive prompt hang that could block sessions.</li>
<li>Copilot CLI correctly handles edit mode in interactive sessions, with token tracking fixed across Checkpoint scoping, model metrics, and session backfill.</li>
<li>OpenCode system-reminder messages are now filtered from the transcript parser.</li>
<li><a href="https://hk.jdx.dev/">hk</a> is now detected as a supported hook manager.
<ul>
<li>Thank you to <a href="https://github.com/mvanhorn">@mvanhorn</a> for this contribution!</li>
</ul>
</li>
</ul>
<h3>Entire Web Updates</h3>
<ul>
<li>Tool calls now render as expandable inline rows with category dots, streamlined labels, and tighter typography. Expanding reveals arguments and results, with diffs shown for edit actions.</li>
<li>Section separator borders in the Checkpoint list now render correctly.</li>
<li>Breadcrumbs now consistently show org / repo / Checkpoints and no longer flicker on initial load.</li>
<li>The active repo now stays expanded and the Checkpoints item remains highlighted across checkpoint list, checkpoint detail, and commit detail views.</li>
<li>We made the entire.io website AI-friendly by serving every page in markdown, supporting RSS via <code>/feed.xml</code>, and ensuring full content renders in HTML so Reader Mode, accessibility tools, and screen readers work out of the box.</li>
</ul>
<h3>Checkpoint Metadata Performance</h3>
<ul>
<li>Metadata is now fetched with a shallow treeless fetch and read via a streaming JSON decoder with lightweight structs, making resume, rewind, and list operations faster for large Checkpoint histories.</li>
</ul>
<h3>Checkpoint Remote Repository Configuration</h3>
<ul>
<li>Checkpoint remote can now be configured by running <code>entire configure --checkpoint-remote</code>, letting you store your Checkpoint history in a dedicated repo to keep your working repo's history clean.</li>
</ul>
<h3>Resume Fix for Fresh Clones</h3>
<ul>
<li><code>entire resume</code> now correctly fetches the metadata branch from the remote when <code>entire/checkpoints/v1</code> doesn't exist locally.</li>
</ul>
<h3>Bare Repo and Empty Repo Fixes</h3>
<ul>
<li>Fixed <code>GetWorktreeID</code> failing with <code>.bare/worktrees/</code> repository layouts.
<ul>
<li>Thanks again to <a href="https://github.com/mvanhorn">@mvanhorn</a> for this fix!</li>
</ul>
</li>
</ul>
<p>That's all for this week, rebels. More from me soon. As always, reach out on <a href="https://discord.com/invite/jZJs3Tue4S">Discord</a> to keep the conversation going!</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0007</guid>
    </item>
    <item>
      <title>The Entire CLI: How It Works &amp; Where It&apos;s Headed</title>
      <link>https://entire.io/blog/the-entire-cli-how-it-works-and-where-its-headed</link>
      <description>AI generated PRs are creating a massive code review bottleneck. Learn how the Entire CLI uses Checkpoints to move from traditional diffs to high signal intent reviews.</description>
      <pubDate>Wed, 25 Mar 2026 00:00:00 GMT</pubDate>
      <category>Engineering</category>
      <dc:creator>Rizèl Scarlett</dc:creator>
      <content:encoded><![CDATA[<p>"I don't even read the code my agents produce" is the ultimate developer flex of 2026.</p>
<p>But it is really a coping mechanism. There is simply too much code to review. Every experienced engineer knows what moving this fast creates: hidden, high-interest debt. That's fine for a weekend, vibe-coded project. But when you're on call and production is down, "the agent wrote it that way" isn't a root cause. Without a time machine, you're debugging a black box.</p>
<p>In traditional engineering, git commits served us well. They show us <em>what</em> changed. But both at the speed of AI and for team coherence, that's no longer enough. We need to understand the <em>why</em>.</p>
<p>What prompt was given? What was the chain of agents and subagents that produced this? What alternatives were tried and discarded? The answers to these questions are what developers need to rewind, team leads need to understand AI usage, and reviewers need to see beyond the diff.</p>
<p>Checkpoints are our initial answer.</p>
<p>A richer primitive than commits, capturing not just what changed, but the context behind it.</p>
<h2>What's a Checkpoint?</h2>
<p>A <a href="https://docs.entire.io/cli/checkpoints">Checkpoint</a> is a single, addressable unit that bundles everything behind a change: the code state, the agent's full transcript, your prompts, token usage, and line-level attribution showing how much the agent wrote versus what you edited. Each Checkpoint gets a 12-character ID, stored in git and included in your commit via a trailer, so you can trace any change back to the exact session that produced it.</p>
<p><img src="/blog/the-entire-cli-how-it-works-and-where-its-headed/anatomy_of_a_checkpoint_v3.svg" alt="Anatomy of a Checkpoint"></p>
<p>When Checkpoints are pushed to a shared remote, anyone can see how AI and a human built a feature together, not just what changed.</p>
<h2>How it works</h2>
<p>Developers are already accustomed to working with an agent and committing code, and we didn't want to disrupt that existing developer experience. So we built the Entire CLI as an invisible layer, like a stealth recorder, capturing everything in the background.</p>
<p>That led to one strict constraint: everything had to fit inside a normal git workflow, from capturing sessions to storing metadata and linking it to commits. At a high level, the system is built on three core principles: designed for git workflows, git as a database, and a two-tier storage model.</p>
<h3>Designed for Git Workflows</h3>
<p>Entire fits into your existing git workflow without changing how you work.</p>
<p>Because the Checkpoint ID is stored in a commit trailer and not tied to a commit hash, it survives commonly used git operations that rewrite commit history, like rebase, amend, squash, and cherry-pick. Instead of breaking when commits are rewritten, the link between your code and its session history remains intact.</p>
<p>That same separation extends to how the data is stored. The metadata branch is completely independent of your working branches, acting as a permanent record that remains reachable even if a feature branch is moved or deleted. Since everything runs locally, there is no need for team-wide mandates or complex CI setup. An individual engineer can access their Checkpoints, session context, and rewind points without forcing adoption on other teammates.</p>
<h3>Git as a Database</h3>
<p>Everything Entire records, transcripts, prompts, attribution, summaries, is stored as git objects. This is our core architectural principle: your session history is code, so it should be stored and versioned exactly like code.</p>
<p>Depending on your team's workflow, you can choose where those objects live:</p>
<p><strong>Same repository</strong>
By default, Checkpoint metadata lives on a separate branch called entire/checkpoints/v1 that travels with your repository. When you push your code, your session history goes with it. When someone clones the repo, they get the full context too.</p>
<p><strong>Decoupled repository</strong>
For teams that need more control, Checkpoints can be stored in a separate repository. This is useful if your codebase is public but your AI session data is not, or if you want to centralize Checkpoints across multiple repos.</p>
<p>This approach is valuable for a few reasons:</p>
<ul>
<li>It builds on existing git infrastructure instead of introducing a new database, SaaS product, or proprietary storage layer.</li>
<li>Because session history lives in git, it moves with the workflow across different hosts, during offline work, or when switching remotes.</li>
<li>Every change to session history is tracked, providing the same auditability and rollback capabilities expected from git.</li>
</ul>
<h3>Two-tier Storage Model</h3>
<p>We use a two-tier storage model for temporary and permanent Checkpoints.</p>
<p>You need the ability to rewind mid-session if an agent goes sideways, so we provide Checkpoints before you commit. But we cannot fill your branch with temporary commits just to make that possible. If every minor agent iteration showed up in your history, your log would quickly fill with low-signal noise, making your code harder to read, review, and debug.</p>
<p>To avoid that, the Entire CLI writes those Checkpoints to shadow branches. Shadow branches are temporary, out-of-band branches that store Checkpoint data while you work. They follow a specific naming convention: <code>entire/&#x3C;commit-hash-7-chars>-&#x3C;worktree-hash-6-chars></code>, and stay completely separate from your working branch. They stay out of your way, never appearing in your git log or pull requests, serving purely as scratch space for the session.</p>
<p><img src="/blog/the-entire-cli-how-it-works-and-where-its-headed/pre_commit_state_animated.gif" alt="Pre-commit state showing shadow branches"></p>
<p>Once you commit, that temporary state is condensed into a permanent record, with transcripts, prompts, file changes, token usage, and attribution written to a dedicated Checkpoints branch and linked to your commit via a trailer.</p>
<p><img src="/blog/the-entire-cli-how-it-works-and-where-its-headed/post_commit_state_animated.gif" alt="Post-commit state showing permanent checkpoints"></p>
<p>While the principles stayed the same, the implementation had to evolve.</p>
<h2>What's Changed Since Launch</h2>
<p>When we launched Entire, we had a simple mental model: a hook fires, data is captured, the user commits, done. That worked for single-agent, single-session workflows.</p>
<p>Real-world engineering isn't linear. You rebase mid-session, you stash changes, and you often run multiple agents at once. To handle this, we moved away from simple hooks and formalized how sessions behave. Sessions are now treated as a state machine with explicit phases (IDLE, ACTIVE, ENDED) managed in <code>.git/entire-sessions/</code>.</p>
<p>This architectural shift unlocked the following features:</p>
<ul>
<li><strong>Concurrent sessions:</strong> You can run two agents in the same repository at the same time. For example, a Claude Code session in one terminal and Cursor in another, each tracked independently.</li>
<li><strong>Interrupted workflows:</strong> You can rebase or stash mid-session without losing Checkpoints.</li>
<li><strong>Line-level attribution:</strong> Every Checkpoint tracks which lines of code came from the agent versus which came from you.</li>
<li><strong>Subagent tracking:</strong> When an agent spawns a subagent, it receives its own nested Checkpoint. This preserves the full chain of command so you can see exactly how a high-level goal was decomposed into smaller agentic actions.</li>
<li><strong>Multi-agent support:</strong> Entire is agent-agnostic, supporting Claude Code, Cursor, Gemini CLI, GitHub Copilot CLI, Factory AI Droid, OpenCode, and external agent protocols.</li>
<li><strong>Separate checkpoint repository:</strong> You now have the choice to store Checkpoint data in a separate repository from your main code. This is useful when your codebase is public but your AI session data is not, or when teams want to centralize checkpoint data across multiple repos.</li>
</ul>
<h2>Where We're Headed</h2>
<p>Now that we've turned raw developer activity into structured, reliable data, the Checkpoint becomes a new semantic unit, richer than commits, queryable, and shareable.</p>
<p>From here, we start to build toward team visibility, search, auditability, and a different way to think about code review.</p>
<h3>Team Visibility</h3>
<p>Git tells you who committed the code. Entire shows how it was built, recording token usage, agent type, and attribution directly in the repository so the invisible parts of development become a shared signal.</p>
<p>When a feature ships with 90% agent-generated code, that context will help the whole team. The author gets better feedback, reviewers know where to focus, and the next person to touch that code knows what they're walking into.</p>
<h3>Search</h3>
<p>Traditional <code>git log</code> answers "what changed," but in today's workflows a more pressing question is "why did we do it this way?"</p>
<p>We're making that answer searchable. Users will be able to surface the prompt that introduced a workaround or revisit the reasoning behind a library choice months later. The "why" will be part of your history.</p>
<h3>Audit and Transparency</h3>
<p>In regulated industries like finance, healthcare, and defense, "who wrote this code" has direct implications for compliance, liability, and safety. The Entire CLI will solve this by capturing accurate attribution and authorship at commit time. By mapping every step from human prompt to agent response to final human refinement, it makes clear what part the human played versus the agent.</p>
<h3>Rethinking Code Review to Intent Review</h3>
<p>Code review was built for a human pace. But with agents shipping entire features in a single session, reviewers are drowning in massive diffs and defaulting to approving with a measly "LGTM." The issue is already so prevalent that some open source maintainers are banning agent-authored contributions.</p>
<p>Checkpoints are the foundation, but the next step is a shift in methodology. We are moving beyond the diff to replace code reviews with intent reviews. This positions reviewers to start with intent by examining the prompt, the session transcript, and the reasoning behind key decisions. Instead of parsing 500 lines of syntax, they focus on the problem being solved and whether the right calls were made along the way.</p>
<hr>
<p>At Entire, we're actively building the world's next developer platform in the open. If you're experimenting with agents, join the <a href="https://discord.gg/hsV7HTsk5p">Discord</a>, share what you're seeing, and help shape where this goes next.</p>
<ul>
<li><a href="https://docs.entire.io/introduction">Read the docs</a></li>
<li><a href="https://discord.gg/hsV7HTsk5p">Join the Discord</a></li>
<li><a href="https://github.com/entireio">Follow our progress on GitHub</a></li>
</ul>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/the-entire-cli-how-it-works-and-where-its-headed</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0006</title>
      <link>https://entire.io/blog/entire-dispatch-0x0006</link>
      <description>Large repo memory improvements, checkpoints in remote repos, agent updates, and new diagnostic tools.</description>
      <pubDate>Mon, 23 Mar 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Marvin here. Dispatch 0x0006 is ready and from now on will be delivered on Mondays until I change my mind. 🤖😆</p>
<p>With your help, we are building the Entire CLI as an independent semantic layer, allowing you to capture your context on every Git commit, no matter which agent you use.</p>
<p>This week we focused a lot of our attention on performance improvements and bug fixes, including major memory resource usage improvements when working with large repos, a new remote repository to store checkpoints separately from your working repo, and updates to many of the agents that are enabled in the Entire CLI.</p>
<h2>Large Repo Memory Improvements</h2>
<ul>
<li>We made significant memory improvements for users working in large repositories, with two related changes:
<ul>
<li>Metadata is now fetched sparsely with on-demand blob resolution, so only the data you actually need is fetched.</li>
<li>New content detection now uses transcript byte size instead of line count, which is more accurate and avoids unnecessary work.</li>
</ul>
</li>
<li><code>go-git/v6</code> has recently introduced a new <code>LazyIndex</code> which more efficiently handles <code>idx</code> and <code>rev</code> files, resulting in a lower memory footprint when interacting with large repositories. The Entire CLI has been upgraded to <code>go-git/v6</code>, to benefit from this and other improvements made since v5 was last released. This is a foundational dependency bump that unblocks future performance and correctness improvements.</li>
</ul>
<h2>Checkpoints in Remote Repos</h2>
<ul>
<li>You can now store your <code>entire/checkpoints/v1</code> branch in a separate dedicated repository, keeping your working repo's history clean while still giving you full checkpoint access across clones and teams.</li>
</ul>
<h2>Further Improvements</h2>
<h3>Agent Updates and Fixes</h3>
<ul>
<li>External agent plugins are now auto-discovered during <code>entire enable</code>, <code>entire rewind</code>, and <code>entire resume</code>, with no manual config needed.</li>
<li>Gemini CLI 0.33+ hook validation is fixed by stripping non-array values from the hooks config.</li>
<li>Cursor 2026.03.11 correctly handles the transition from flat to nested session paths mid-session.</li>
<li>Factory AI Droid now falls back to script parsing when the prompt isn't available through hooks.</li>
</ul>
<h3>Commit History Alongside Checkpoints</h3>
<ul>
<li>Your Checkpoint history now shows all commits on a branch, including commits without Checkpoints. This lets you see your complete repository timeline at a glance, with Checkpoints highlighted where session context was captured.</li>
</ul>
<h3>entire trace Performance Insights</h3>
<ul>
<li>We added a new diagnostic command to help report performance issues. If something feels slow during a session, <code>entire trace</code> gives you a clear breakdown to pinpoint what's causing it.</li>
</ul>
<h3>entire rewind Subdirectory Fix</h3>
<ul>
<li><code>entire rewind</code> now correctly resolves file paths when invoked from a subdirectory of the repo, rather than only working from the root.
<ul>
<li>Thank you to <a href="https://github.com/mvanhorn">@mvanhorn</a> for reporting and fixing this!</li>
</ul>
</li>
</ul>
<h3>entire update Mise Detection</h3>
<ul>
<li><code>entire update</code> now correctly detects when the CLI was installed via <strong>mise</strong>, and suggests the right update command accordingly instead of giving a generic fallback.
<ul>
<li>Thank you to <a href="https://github.com/mvanhorn">@mvanhorn</a> for this fix as well!</li>
</ul>
</li>
</ul>
<p>That's all for now, rebels. As always keep the feedback coming our way, and if you have any questions, we're around on <a href="https://discord.gg/jZJs3Tue4S">Discord</a>. We hope you have a great rest of your week!</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0006</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0005</title>
      <link>https://entire.io/blog/entire-dispatch-0x0005</link>
      <description>Hack Week across Melbourne, Seattle, and Lisbon, plus a new GitHub Copilot CLI integration.</description>
      <pubDate>Fri, 13 Mar 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. <strong>Dispatch 0x0005</strong> has arrived.</p>
<p>We're a remote-first company, but every six months we bring our regional teams together for a Hack Week in-person to build, tinker, and collaborate face-to-face. This week, we gathered in Melbourne, Seattle, and Lisbon. Three cities. 25 Entirons. Many agents. Lots of ideas taking shape.</p>
<p>We also <a href="https://github.com/entireio/cli">welcomed another agent</a> to the alliance this week: the GitHub Copilot CLI, now equipped with checkpoints, resume, rewind, transcripts, and model tracking. Copilot flies the plane, Entire records the flight path - enabling you to share your AI coding sessions and link your intent directly to the outcome in code.</p>
<p>That'll do it for this week, rebels. As always, keep your contributions, PRs, stars and feedback coming. More ships and improvements coming your way next week.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0005</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0004</title>
      <link>https://entire.io/blog/entire-dispatch-0x0004</link>
      <description>Factory AI integration, agent plugin system, faster hooks, and UI updates on entire.io.</description>
      <pubDate>Fri, 06 Mar 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. It's time for Dispatch 0x0004.</p>
<p>In a world with many agents, we believe your context — from chat sessions to logs and prompts — should automatically sync to the Git repository. With the Entire CLI, we are building a portable agentic context layer you can share with colleagues, collaborators, and friends.</p>
<p>With your help, this week we pushed a new Factory AI integration 🎉, created a new Repositories section on <a href="https://entire.io">entire.io</a> that lets you see all your org's repos, introduced a new external agent plugin system to help you bring your favorite agents to the Entire CLI, and lots of smaller improvements 👇</p>
<h2>Agent Plugin System</h2>
<ul>
<li>We're making it easier to integrate third party agents without forking the CLI. Agents can now run as standalone programs that follow a <a href="https://docs.entire.io/cli/external-agents">simple protocol</a>, allowing them to be discovered on your system and used alongside built-in agents.</li>
</ul>
<h2><a href="https://entire.io">entire.io</a> User Interface Updates</h2>
<ul>
<li>See recently used repos in the sidebar and pin your most important ones for quick access.</li>
<li>The checkpoints list now has more compact single-line rows for easier scanning grouped by day.</li>
<li>A new breadcrumb header now lets you browse between commits within a Checkpoint.</li>
</ul>
<h2>Faster Hook Performance</h2>
<p>We've heard your feedback. This week we made several ships to introduce various performance improvements to the post-commit behaviour, especially in larger repos.</p>
<ul>
<li>Replaced slow in-memory tree comparisons with native git operations, reducing hook latency on large repos.</li>
<li>Added structured performance instrumentation. The new span-based perf package tracks timing across lifecycle handlers with nested breakdowns, making performance issues easier to investigate.</li>
<li>To eliminate redundant calls in the prepare-commit-msg hook, staged file lists are now cached across sessions, and go-git's <code>worktree.Status()</code> (which scans all files) was replaced with native <code>git diff --cached</code>.</li>
<li>Replaced O(N) go-git tree walks with git diff-tree in post-commit hook for faster commits.</li>
</ul>
<h2>Further Improvements</h2>
<p><strong>Updates to Cursor, Factory &#x26; OpenCode Agents</strong></p>
<ul>
<li><strong>Cursor</strong> now has full transcript analysis, enabling prompt extraction for shadow branch commit messages, summary extraction, and transcript position tracking.
<ul>
<li>Session metrics, including duration, turns, model name, and attribution, are now captured via hooks.
<ul>
<li>Thank you to <a href="https://github.com/MarkoTatic">@MarkoTatic</a> for the detailed Cursor bug reports that helped drive these improvements!</li>
</ul>
</li>
</ul>
</li>
<li><strong>OpenCode</strong> sessions now end cleanly on quit via <code>server.instance.disposed</code> instead of lingering as active.
<ul>
<li>Thank you to <a href="https://github.com/petrenk0n">@petrenk0n</a> for reporting the empty sessions issue!</li>
</ul>
</li>
<li>An E2E test runner was added for <strong>Factory Droid</strong> sessions with full interactive flow coverage.
<ul>
<li>Thank you to <a href="https://github.com/SvenMeyer">@SvenMeyer</a> for requesting Droid support!</li>
</ul>
</li>
</ul>
<h3>Squash Merge Resume &#x26; Rewind</h3>
<ul>
<li><code>entire resume</code> parses all trailers, deduplicates sessions by ID, and sorts by timestamp to restore the correct state.</li>
<li><code>entire resume</code> on squash commits shows only the latest checkpoint instead of a confusing list of all sessions across the branch.</li>
<li><code>entire rewind</code> is fixed to pick the <em>latest</em> checkpoint in squash-merged commits, not just the first regex match.</li>
<li><code>entire rewind</code> is now able to handle squash commits properly.</li>
</ul>
<h3>Model Tracking in Checkpoints</h3>
<ul>
<li>Checkpoints now capture which LLM model was used, persisted to <code>metadata.json</code> and visible in session info. The model is resolved from agent-specific hook payloads (Claude Code's <code>SessionStart</code>, Gemini CLI's <code>BeforeModel</code>).</li>
</ul>
<h3>Session &#x26; Hook Reliability</h3>
<ul>
<li>Stale sessions are now properly cleaned up instead of lingering indefinitely.</li>
<li>Fixed a bug where hooks could silently skip files that should have been tracked across turns.</li>
<li><code>entire explain</code> no longer hangs on repos with many checkpoints.</li>
<li>Corrected inconsistent terminal behavior across different hook paths.
<ul>
<li>Thank you to <a href="https://github.com/dismory">@dismory</a> for reporting the worktree config issue!</li>
</ul>
</li>
</ul>
<h3>Setup &#x26; Developer Experience</h3>
<ul>
<li><code>entire enable</code> now supports <code>--absolute-git-hook-path</code> to set up git hooks with absolute paths to the entire binary, useful for environments where PATH resolution varies between shells or CI runners.</li>
<li>Commit signing no longer breaks the test suite for contributors who have it enabled globally.
<ul>
<li>Thank you to <a href="https://github.com/erezrokah">@erezrokah</a> for catching this and contributing the fix!</li>
</ul>
</li>
</ul>
<p>Thanks for all your help this week, rebels. Next week we bring the Entire CLI to even more agents, so you can drill into your context and session history with a universal reasoning layer, no matter which AI companion you build with.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0004</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0003</title>
      <link>https://entire.io/blog/entire-dispatch-0x0003</link>
      <description>Cursor IDE support, OpenCode integration, faster Checkpoints, and community contributions.</description>
      <pubDate>Fri, 27 Feb 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Welcome to Dispatch 0x0003.</p>
<p>In a world where prompts are the new programming language, why not share them like code? The Entire CLI creates a semantic reasoning layer that automatically stores agent context in Git. Resulting in what we call, Checkpoints!</p>
<p>With help from the community, we shipped several improvements this week, including support for our first IDE. Today, we're bringing the <a href="https://github.com/entireio/cli">Entire CLI to Cursor</a>, enabling users to bind agent context to every push and explore, trace and share their intent. The rewind functionality and the resume command are not available, but Checkpoints are created and session logs captured. Thank you to <a href="https://github.com/9bany">@9bany</a> for your early contributions to make this possible!</p>
<p>Here's what else changed:</p>
<h2>OpenCode Support</h2>
<ul>
<li>Since this week, the Entire CLI supports OpenCode.</li>
<li>Fixed an issue with OpenCode and OpenAI Codex models not creating checkpoints when existing files were changed.
<ul>
<li>Thank you to <a href="https://github.com/jaxondk">@jaxondk</a> for requesting OpenCode support, and to <a href="https://github.com/ammarateya">@ammarateya</a>, <a href="https://github.com/Avyukth">@Avyukth</a>, and <a href="https://github.com/MementoMori123">@MementoMori123</a>, whose OpenCode PRs helped validate the design!</li>
</ul>
</li>
</ul>
<h2>Faster Checkpoints</h2>
<ul>
<li>Introduced caching and optimized work tree updates to improve performance on Git commits and Git pushes.</li>
<li>Squash-merged commits with multiple <code>entire-checkpoint</code> trailers correctly link to all their checkpoints on <a href="https://entire.io">entire.io</a>.
<ul>
<li>Thank you to <a href="https://github.com/FSM1">@FSM1</a> for reporting the squash+delete workflow gap!</li>
</ul>
</li>
<li>To fix carry-forward false positives, orphaned shadow branches are no longer created when a user replaces agent content.</li>
<li>Stale sessions no longer incorrectly condense into every commit.
<ul>
<li>Thanks to <a href="https://github.com/BootstrapBits">@BootstrapBits</a> for the detailed concurrent session race analysis!</li>
</ul>
</li>
<li>Stuck checkpoint IDs and "no active sessions" errors are resolved.
<ul>
<li>HT <a href="https://github.com/lakson-llc">@lakson-llc</a>, <a href="https://github.com/daeshawnballard">@daeshawnballard</a>, and <a href="https://github.com/wmurphyrd">@wmurphyrd</a>!</li>
</ul>
</li>
<li>O(depth) tree surgery replaces O(N) flatten-and-rebuild for both metadata branch and shadow branch writes</li>
<li>Extracted magic numbers to named constants for improved code quality.
<ul>
<li>Thanks to <a href="https://github.com/ishaan812">@ishaan812</a>!</li>
</ul>
</li>
</ul>
<h2>Further Improvements</h2>
<ul>
<li><strong>Web viewer</strong>
<ul>
<li>Added a searchable breadcrumb combobox making it easier to search and switch repos within the org.</li>
<li>In the spirit of the community, public repos are available on entire.io without logging in!</li>
<li>Fixed the tool calls section to be hidden for agents that don't report them.</li>
<li>False positive trail merge detection is fixed for new branches.</li>
</ul>
</li>
<li><strong>Fresh clone support</strong>
<ul>
<li><code>entire enable</code> now creates local metadata branch from remote when available, preserving checkpoints on fresh clones</li>
</ul>
</li>
<li><strong>Linking commits to your checkpoints</strong>
<ul>
<li>The checkpoint linking question when doing <code>git commit -m "commit message"</code> now has an "Always" option.</li>
</ul>
</li>
<li><strong>Depreciating "Auto-Commit"</strong>
<ul>
<li>To reduce complexity and with feedback from the community, we decided to cut the auto-commit command. We think telling the agent to actually commit for you is much more effective.</li>
</ul>
</li>
<li><strong>Hook Scoping</strong>
<ul>
<li>Entire only creates <code>.entire/logs/</code> folders in repos where Entire is enabled. Git hooks only run in repos where Entire is enabled.
<ul>
<li>Thanks to <a href="https://github.com/knowsuchagency">@knowsuchagency</a>!</li>
</ul>
</li>
</ul>
</li>
<li><strong>Secret Redaction</strong>
<ul>
<li>Secret redaction is improved to not redact legitimate code.</li>
</ul>
</li>
<li><strong>Unicode and Internationalization</strong>
<ul>
<li>UTF-8 truncation no longer produces garbled text for CJK/emoji characters.
<ul>
<li>Thanks to <a href="https://github.com/wasabeef">@wasabeef</a> for identifying the root cause!</li>
</ul>
</li>
</ul>
</li>
<li><strong>Session Hygiene</strong>
<ul>
<li>Gitignored files (e.g. <code>node_modules</code>) are no longer tracked in session metadata.</li>
<li>Resume sessions are now sorted by creation time and stale session files are automatically cleaned up.</li>
</ul>
</li>
<li><strong>Nix Package</strong>
<ul>
<li>Entire is available as a Nix package: <a href="https://search.nixos.org/packages?channel=unstable&#x26;query=entire&#x26;show=entire">nixpkgs/entire</a>.
<ul>
<li>Thanks to <a href="https://github.com/evanlhatch">@evanlhatch</a> for requesting this and <a href="https://github.com/DieracDelta">@DieracDelta</a> for the interim fork!</li>
</ul>
</li>
</ul>
</li>
</ul>
<p>Keep the contributions coming. Next week, we continue to expand our capabilities and integrate the Entire CLI across the broader agent ecosystem.</p>
<p>That's all for now, rebels.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0003</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0002</title>
      <link>https://entire.io/blog/entire-dispatch-0x0002</link>
      <description>Agent integrations, secret detection updates, smarter hook management, and Checkpoint reliability fixes.</description>
      <pubDate>Sat, 21 Feb 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Welcome to Dispatch 0x0002.</p>
<p>Last week, we introduced Checkpoints to the world — our first primitive designed to tackle one of the biggest problems in agent-driven development: context. Today, conversations, reasoning, and file changes are fragmented or lost between sessions. As agents generate hundreds or even thousands of lines per interaction, that context loss compounds quickly. Agents retrace steps, duplicate reasoning, waste tokens, and lose the thread of decisions made hours or days earlier.</p>
<p><strong>To bridge this gap, the <a href="https://github.com/entireio/cli">Entire CLI</a> automatically captures agent sessions, creating a semantic reasoning layer that binds agent context to Git on every push. Resulting in what we call Checkpoints.</strong>
This week we focused on making the Entire CLI easier to integrate with other agents, including a refactor that simplifies how external tools plug into the workflow and interact with grouped changes. <strong>Stay tuned, new agent support shipping very soon.</strong></p>
<p>And with your help, we shipped a variety bug fixes, performance improvements, and <a href="https://github.com/entireio/cli/releases">key updates</a>:</p>
<h3>Expanding Agent Integrations and Capabilities</h3>
<ul>
<li>The Entire CLI codebase has a stronger multi-agent framework, enabling faster integration of new agents.</li>
<li>The Entire CLI integration with the Gemini CLI supports full transcript parsing, Checkpointing, and session explanations.</li>
</ul>
<h3>Secret Detection</h3>
<ul>
<li>Checkpoints runs layered secret scanning using gitleaks patterns combined with entropy analysis.</li>
<li>Secrets are redacted across all persistence paths — including shadow branches, metadata, and condensed logs — ensuring sensitive data does not leak into Git history.
<ul>
<li>Thank you to <a href="https://github.com/hi120ki">Hi120ki</a>, <a href="https://github.com/andreidavid">andreidavid</a>, and <a href="https://github.com/pythoninthegrass">Pythoninthegrass</a>!</li>
</ul>
</li>
</ul>
<h3>Smarter Hook Management</h3>
<ul>
<li>Hook installation is more resilient, with automatic resolution of hook directories supporting worktrees and custom configurations using <code>git --git-path hooks</code>.</li>
<li>Existing Git hooks that the Entire CLI does not recognize are preserved.</li>
<li>External hook managers such as Husky or Lefthook are detected during <code>entire enable</code>, with a warning before anything is overwritten.
<ul>
<li>Shout out to <a href="https://github.com/AlienKevin">AlienKevin</a>, <a href="https://github.com/camwest">Camwest</a>, <a href="https://github.com/SchutteJan">SchutteJan</a>, and <a href="https://github.com/FSM1">FSM1</a>!</li>
</ul>
</li>
</ul>
<h3>Checkpoint Reliability</h3>
<ul>
<li>Subagent task file modifications are correctly captured in Checkpoints.</li>
<li>Deleted files in task Checkpoints are properly tracked.</li>
<li>Each Checkpoint produces exactly one commit, eliminating noise in Checkpoint history.</li>
<li>Git-ignored files such as <code>node_modules</code> are no longer tracked in session metadata.
<ul>
<li>Danke, <a href="https://github.com/BootstrapBits">BootstrapBits</a>!</li>
</ul>
</li>
</ul>
<h3>Improved <code>entire enable</code></h3>
<ul>
<li>The setup experience has been redesigned with clearer prompts and better defaults, making it faster and more intuitive to get started in a new repo.
<ul>
<li>Big thank you to <a href="https://github.com/jayanth-iyer">Jayanth-iyer</a>, <a href="https://github.com/TyceHerrman">TyceHerrman</a>, and <a href="https://github.com/marcodicro-dp">Marcodicro-dp</a>!</li>
</ul>
</li>
</ul>
<h3>Session Restore Fixes</h3>
<ul>
<li>Sessions that previously failed to restore after repo changes (stash, pull, rebase) recover correctly.</li>
<li>Full Checkpoint history is preserved across branch operations.
<ul>
<li>HT, <a href="https://github.com/jaydenfyi">Jaydenfyi</a>!</li>
</ul>
</li>
</ul>
<h3>Empty Repo Support</h3>
<ul>
<li>Improved messaging when the Entire CLI is used in a freshly initialized repository that has no commits yet.</li>
</ul>
<p>In the coming week, we’ll focus on integrating the <a href="https://github.com/entireio/cli">Entire CLI</a> across the broader agent ecosystem — so every developer can have pluggable, independent context natively tied to their Git repository, no matter which agent they use.</p>
<p>Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0002</guid>
    </item>
    <item>
      <title>Entire Dispatch 0x0001</title>
      <link>https://entire.io/blog/entire-dispatch-0x0001</link>
      <description>Our first weekly dispatch with updates on Checkpoints, Gemini CLI support, secret detection, and more.</description>
      <pubDate>Sat, 14 Feb 2026 00:00:00 GMT</pubDate>
      <category>Dispatch</category>
      <dc:creator>Marvin</dc:creator>
      <content:encoded><![CDATA[<p>Beep, boop. Welcome to our first dispatch, rebels.</p>
<p>This week we launched <a href="https://github.com/entireio/cli">Checkpoints</a>, our new primitive that automatically captures agent context as first-class, versioned data in Git. It's our first crack out the gate at building a universal semantic reasoning layer for every agent. Thanks for the love, feedback, the stars, and PRs. With your help, we've <a href="https://github.com/entireio/cli/releases">shipped new</a> features, improvements, and bug fixes to the Entire CLI and web UI. Here's a few of our favorites:</p>
<ul>
<li>We've improved Google Gemini CLI support — explain, rewind, and resume now work with Gemini sessions.</li>
<li>Layered secret detection using gitleaks now patterns on top of entropy-based redaction, strengthening protection against accidental credential leaks and reducing risk in every commit.</li>
<li>Git hooks can now chain with existing hooks. Break less, keep working the way you expect.</li>
<li>On <a href="https://entire.io">entire.io</a>, we made the Checkpoint view easier to navigate by bringing session logs and code diffs into a single, unified view.</li>
</ul>
<p><img src="/blog/entire-dispatch-0x0001/checkpoints-new.png" alt="Checkpoints"></p>
<p>And of course, that's just a few transmissions. For various more bug fixes &#x26; improvements — see more changes to the Entire CLI <a href="https://github.com/entireio/cli/releases">here</a>.</p>
<p>This is it for this round. New dispatch every week. Boop.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/entire-dispatch-0x0001</guid>
    </item>
    <item>
      <title>Hello Entire World</title>
      <link>https://entire.io/blog/hello-entire-world</link>
      <description>Announcing Entire with $60 million seed round and shipping our first product, called Checkpoints.</description>
      <pubDate>Tue, 10 Feb 2026 00:00:00 GMT</pubDate>
      <category>Company</category>
      <dc:creator>Thomas Dohmke</dc:creator>
      <content:encoded><![CDATA[<blockquote>
<p><strong>*TLDR:</strong> Today, we are announcing our new company, Entire, backed by a <a href="https://entire.io/news/former-github-ceo-thomas-dohmke-raises-60-million-seed-round">$60 million seed round to build the world's next developer platform</a>. We are also shipping our first product as open source CLI to tie agent context into Git on every push.*</p>
</blockquote>
<h2>The game has changed. The system is cracking.</h2>
<p>In the last few months alone, the fundamental role of a developer has been refactored. From Anthropic's Claude Code with Opus 4.6, to OpenAI's latest GPT-5.3-Codex agentic coding model, to Cursor's Composer 1.5 and more, advancements in agentic intelligence have turned the flow of coding on its head. The terminal is becoming the new center of gravity, as developers prompt fleets of agents across multiple terminal windows at once. Spec-driven development is becoming the primary driver of code generation. Agents now interoperate in parallel, generating and evaluating hundreds of variants simultaneously. As a result, massive volumes of code are being generated faster than any human can reasonably understand.</p>
<p><strong>Yet today, we still rely on a software development lifecycle built before the era of the cloud, inherently designed for human-to-human collaboration.</strong> And the cracks are forming. Issues were designed for human planning and tracking, not as structured, machine-readable units of work. Git repositories were never extended to version everything developers build with in the AI era. Pull requests simply do not scale for large monorepos. Every day, agents are being choked and throttled by centralized API capacity and rate limits. The truth is: the entire software ecosystem is being bottlenecked by a manual system of production that was never designed for the era of AI in the first place. A system that cannot be retrofitted for what's ahead.</p>
<p>Just like when automotive companies replaced the traditional craft-based production system with the moving assembly line, we must now reimagine the entire software development lifecycle for a world where machines are the primary producers of code. Creating the assembly line for the era of agents.</p>
<h2>Announcing Entire: The world's next developer platform</h2>
<p><strong>This is the purpose of our new company <a href="https://entire.io/vision">Entire</a>, to build the world's next developer platform where agents and humans can collaborate, learn, and ship together.</strong> A platform that will be open, scalable, and independent for every developer, no matter which agent or model you use.</p>
<p>Entire will be based on three key components: <strong>a git-compatible database</strong> that unifies code, intent, constraints, and reasoning in a single version-controlled system; a universal <strong>semantic reasoning layer</strong> that enables multi-agent coordination through the context graph; and an <strong>AI-native software development lifecycle</strong> to reinvent agent-to-human collaboration.</p>
<p>In pursuit of this <a href="https://entire.io/vision">vision</a>, we are proud to be <strong>backed by a $60 million seed investment led by Felicis, with support from Madrona, M12, Basis Set, 20VC, Cherry Ventures, Picus Capital, and Global Founders Capital</strong>. Entire is further backed by a slate of international investors including Gergely Orosz, Theo Browne, Jerry Yang, Olivier Pomel, Garry Tan, and others—who all understand that software development is ready for its next platform shift.</p>
<p><img src="/blog/hello-entire-world/entire-funding-announcement-even-logos.png" alt="Entire funding announcement"></p>
<h2>Our first release: The Entire CLI to track agent context</h2>
<p>Today, agent sessions are ephemeral. Prompts live in terminals and reasoning lives in context windows. The decisions, constraints, and iteration that produce code disappears the moment you close the session. Git preserves what changed, but nothing about why. With agents generating hundreds or thousands of lines per session, this context loss compounds fast. Without shared context, agents can't collaborate effectively. They retrace steps, duplicate reasoning, waste tokens, and lose the thread of decisions made hours or days earlier.</p>
<p>Our first ship makes that missing context durable:</p>
<p><strong>Checkpoints are a new primitive that automatically captures agent context as first-class, versioned data in Git.</strong> When you commit code generated by an agent, Checkpoints capture the full session alongside the commit: the transcript, prompts, files touched, token usage, tool calls and more. This context becomes the foundational write-path of our semantic reasoning layer. You can browse checkpoints by branch, drill into individual sessions, and trace how your codebase evolved through human-and-agent collaboration commit by commit.</p>
<p>Our plan is to support Checkpoints for every agent. Today, Entire CLI ships with support for Anthropic's Claude Code and Google Gemini CLI. Codex, Cursor CLI, and other agents coming soon.</p>
<h3>How it works</h3>
<p>Checkpoints run as a Git-aware CLI. On every commit generated by an agent, it writes a structured checkpoint object and associates it with the commit SHA. The code stays exactly the same, we just add context as first-class metadata. When you push your commit, Checkpoints also pushes this metadata to a separate branch (entire/checkpoints/v1), giving you a complete, append-only audit log inside your repository. As a result, every change can now be traced back not only to a diff, but to the reasoning that produced it.</p>
<p>Checkpoints are useful immediately:</p>
<ul>
<li><strong>Traceability</strong> - inspect the reasoning behind any agent-generated change</li>
<li><strong>Faster Reviews</strong> - review intent and constraints, not just diffs</li>
<li><strong>Better handoffs</strong> - resume work without replaying prompts or sessions</li>
<li><strong>Less token waste</strong> - agents stop repeating mistakes that you corrected in past sessions</li>
<li><strong>Multi-session and agent support</strong> - support for concurrent agentic sessions</li>
</ul>
<h3>Getting Started</h3>
<p>The best part is that you can set up Entire in two easy steps.</p>
<p>Then navigate to your repository and run <code>entire enable</code> — follow the prompts to configure Entire for that project. That's it. Your agent sessions are captured automatically - in a structured and ready-to-use format.</p>
<h2>No more stealth. We are building in the open!</h2>
<p>Checkpoints are our first step towards building a universal semantic reasoning layer for agents. Today, it gives you traceability and history. Tomorrow, it will become the shared memory that allows agents to coordinate, hand off context and build together without collision or loss of understanding.</p>
<p>Most importantly, we're releasing the <a href="https://github.com/entireio/cli">Entire CLI</a> open source project because we believe that this layer should be portable, independent, and available for every single agent or model. And because we know, we are better with the contributions of the interconnected community of open-source developers.</p>
<p>Our roadmap will be directly paved by your feedback, in <a href="https://discord.gg/jZJs3Tue4S">Discord</a> and in GitHub <a href="https://github.com/entireio/cli/discussions">Discussions</a>. We're ready for it. See you there.</p>]]></content:encoded>
      <guid isPermaLink="true">https://entire.io/blog/hello-entire-world</guid>
    </item>
  </channel>
</rss>
