> ## Documentation Index
> Fetch the complete documentation index at: https://docs.entire.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Set up Entire, create your first checkpoint, mirror a GitHub repository, and optionally create an Entire repository.

This quickstart will help you get started with Entire. You will learn how to create a checkpoint that links an agent session to a Git commit, mirror a GitHub repository on Entire, and optionally create an Entire repository.

A checkpoint stores the session context behind a change, such as the prompt, agent transcript, tool calls, and changed files. A mirror keeps GitHub as your source of truth while Entire serves the repository from a region you choose.

[Entire getting started flow](https://customer-0x5hsk8lh27fm00g.cloudflarestream.com/ccb5c6edd3aaa33ce80398c83bf20f9c/iframe?muted=true\&preload=true\&loop=true\&autoplay=true\&poster=https%3A%2F%2Fcustomer-0x5hsk8lh27fm00g.cloudflarestream.com%2Fccb5c6edd3aaa33ce80398c83bf20f9c%2Fthumbnails%2Fthumbnail.jpg%3Ftime%3D%26height%3D600\&controls=false)

## Before You Start

You need:

* Git installed and configured
* A GitHub account and a repository you can access
* An AI coding agent, such as Antigravity CLI, Claude Code, Codex, Copilot CLI, Cursor, Factory, OpenCode, or Pi
* macOS, Linux, or Windows
* Optional: GitHub CLI (`gh`) installed and authenticated, if you want to publish a new demo repository to GitHub

## 1. Install Entire

Entire ships two release channels:

* `stable`: recommended for most users.
* `nightly`: prerelease builds with newer changes.

Nightly is available through Homebrew, the Linux install script, and the Windows PowerShell installer. Scoop currently supports stable only.

**macOS (Homebrew)**

```bash theme={null}
# Stable
brew install --cask entireio/tap/entire

# Nightly
brew install --cask entireio/tap/entire@nightly
```

**Linux**

```bash theme={null}
# Stable
curl -fsSL https://entire.io/install.sh | bash

# Nightly
curl -fsSL https://entire.io/install.sh | bash -s -- --channel nightly
```

**Windows**

```powershell theme={null}
# Stable
irm https://entire.io/install.ps1 | iex

# Nightly
iex "& {$(irm https://entire.io/install.ps1)} -Channel nightly"
```

The script uses Scoop for stable installs when Scoop is available. See [Installation](/installation) for the Scoop commands and the script's options.

**From Source**

```bash theme={null}
go install github.com/entireio/cli/cmd/entire@latest
go install github.com/entireio/cli/cmd/git-remote-entire@latest
```

Check that Entire is installed:

```bash theme={null}
entire version
```

For other installation options, see [Installation](/installation).

## 2. Open a Repository and Enable Entire

Use an existing GitHub repository, or create a new folder for a demo.

**Existing repository**

Clone the repository, then enter it:

```bash theme={null}
git clone git@github.com:OWNER/REPOSITORY.git
cd REPOSITORY
```

**New demo repository**

Create and enter a folder:

```bash theme={null}
mkdir entire-demo
cd entire-demo
```

When you enable Entire in the next step, it initializes Git and creates an initial commit. It does not create or push to a remote — you publish it just after, before the mirror step.

Choose the agent you use and run its setup command:

> **Antigravity CLI**
>
> ```bash theme={null}
> entire enable -y --agent antigravity
> ```

> **Claude Code**
>
> ```bash theme={null}
> entire enable -y --agent claude-code
> ```

> **Codex**
>
> ```bash theme={null}
> entire enable -y --agent codex
> ```

> **Copilot CLI**
>
> ```bash theme={null}
> entire enable -y --agent copilot-cli
> ```

> **Cursor**
>
> ```bash theme={null}
> entire enable -y --agent cursor
> ```

> **Factory**
>
> ```bash theme={null}
> entire enable -y --agent factoryai-droid
> ```

> **OpenCode**
>
> ```bash theme={null}
> entire enable -y --agent opencode
> ```

> **Pi**
>
> ```bash theme={null}
> entire enable -y --agent pi
> ```

Entire installs hooks that capture your agent's work and link it to Git commits.

If you started from the new demo folder, publish it now. `entire enable` has initialized Git and made the first commit, and the mirror step needs a repository Entire can reach:

```bash theme={null}
gh repo create entire-demo --source . --private --push
```

> [!NOTE]
>
> `entire enable` creates `.entire/settings.json` and `.entire/.gitignore` so collaborators share project settings. Entire keeps `.entire/settings.local.json` local for personal overrides.

## 3. Create Your First Checkpoint

[How to Create Your First Checkpoint](https://www.youtube.com/embed/ehWDtXYFZ2Y)

Start your agent from the repository root and give it a small task:

```text theme={null}
Create a file named hello-entire.md with a short note explaining that this is my first Entire checkpoint.
```

When the agent finishes, commit the change:

```bash theme={null}
git add hello-entire.md
git commit -m "Add first Entire checkpoint"
```

Entire asks whether to link the commit to the agent session:

```text theme={null}
Entire: Active <agent> session detected

Link this commit to session context?
  [Y]es / [n]o / [a]lways (remember my choice):
```

Press `Enter` or type `y`.

You have created a checkpoint. It links the commit to the prompt, transcript, tool calls, and files from the agent session.

View it with:

```bash theme={null}
entire checkpoint list
```

> [!NOTE]
>
> Choose `always` at the commit prompt if you want Entire to link future agent-assisted commits automatically.

Checkpoint storage depends on the repository configuration. See [Session Storage](/guides/checkpoints/checkpoint-storage) for storage and push behavior.

## 4. Mirror Your Repository

[How to Mirror Your Repository](https://www.youtube.com/embed/-l0axVoGh_w)

A mirror lets agents clone and pull through Entire while GitHub remains the upstream repository.

Log in before you begin:

```bash theme={null}
entire login
```

Also make sure the [Entire GitHub App](/guides/repositories/github-app-access) can access the repository. An organization admin may need to approve the app.

Create a mirror:

```bash theme={null}
entire repo mirror add
```

Choose your repository and the region where you want Entire to host it. Choose a region close to your agents or one that meets your organization's data-residency requirements.

Then add the mirror as a remote in this checkout:

```bash theme={null}
entire repo remote add entire
```

Check the result:

```bash theme={null}
git remote -v
```

There should now be an `entire` remote on an `entire://` URL, with `origin` still pointing at GitHub. Fetch and push through it:

```bash theme={null}
git fetch entire
git push entire
```

Entire sends pushes through the mirror to GitHub. Your existing GitHub access, branch protection, and review rules still apply.

> [!NOTE]
>
> To send everyday Git commands through Entire without naming a remote, point `origin` at the mirror instead:
>
> ```bash theme={null}
> entire repo remote add origin --override
> ```
>
> `--override` is required because `origin` already exists. Entire prints the URL it replaces, and that printout is the only record of it, so copy it somewhere first if you want to restore it later.

## Optional: Create a New Repository on Entire

[Create an Entire repository on entire.io](https://customer-0x5hsk8lh27fm00g.cloudflarestream.com/9b73ec794491e34480a5599e8204599f/iframe)

You can now host your code on Entire.

A project holds your repositories. Create a project, replacing `readme` with an available project name and `nodo` with your organization's name:

```bash theme={null}
entire project create readme --owner nodo
```

If you already have a project, use its name in the next command. Create a repository replacing the name `documentation` in the project:

```bash theme={null}
entire repo create documentation --project readme
```

Entire waits for the repository to become active and displays its remote URL. By default, the repository uses the project's region.

Clone the repository using the remote URL from the output. For example:

```bash theme={null}
git clone entire://aws-us-east-2.entire.io/et/readme/documentation
cd documentation
```

You can now commit changes and use `git push` and `git pull` as usual.

> [!NOTE]
>
> You can also create a repository on [entire.io](https://entire.io): open or create a project, create a repository within it, then copy the clone command from the repository page.

To learn how to do it from entire.io and an agent prompt to automate setup, see [Entire Repositories](/guides/repositories/entire-native-repositories).

## Continue With

> **[Inspect Checkpoints](/guides/checkpoints/inspect-checkpoints)**
>
> Review the session and decisions behind a commit.

> **[Search Past Work](/guides/search/overview)**
>
> Search code, commits, and agent sessions together.

> **[Mirrors in the CLI](/guides/repositories/mirrors-in-cli)**
>
> Learn more about mirror regions and Git remotes.

> **[Set Up an Agent](/agents/setup)**
>
> Configure another supported coding agent.
