---
title: Quickstart
description: Install the CLI, run a session, and merge your first change request.
---

This page takes you from a fresh terminal to a merged change request (CR).
Every command below is copy-pasteable.

1. **Install the CLI**

    Run the install script. It downloads the `kortix` binary for your OS.

    ```sh
    curl -fsSL https://kortix.com/install | bash
    ```

    Kortix supports macOS and Linux. There is no Windows binary yet.

2. **Sign in**

    ```sh
    kortix login
    ```

    This opens your browser for sign-in. After you sign in, `kortix login` picks
    your account and a default [project](/docs/project) for you.

3. **Create or clone a project**

    A new account has no projects yet, so `kortix login` has none to pick. Run
    `kortix init` with a name to create your first project. This scaffolds a
    project directory on your machine.

    ```sh
    kortix init my-app
    cd my-app
    kortix ship
    ```

    `kortix ship` creates the project in Kortix Cloud on its first run, then
    pushes your code. Run `kortix ship` again any time to sync local changes.

    To work on a project that already exists in Kortix Cloud, clone it instead:

    ```sh
    kortix projects clone <project-id>
    ```

    Find `<project-id>` with `kortix projects ls`.

4. **Run a session**

    ```sh
    kortix sessions new --prompt "Build the login page"
    ```

    This starts a [session](/docs/work/sessions). The agent works in its own
    sandbox, on its own branch, so your project is not touched yet.

    Attach to the session to watch progress and reply:

    ```sh
    kortix sessions chat
    ```

5. **Review and merge the change request**

    When the agent finishes, it opens a change request with a summary and
    the exact diff.

    ```sh
    kortix cr ls
    ```

    This lists the open CRs in your project. Review the one the agent opened, then
    merge it to land the work on your default branch:

    ```sh
    kortix cr merge 1
    ```

    Replace `1` with the CR number from `kortix cr ls`. Nothing reaches your
    project's default branch until you merge.

## Next steps

<CardGroup>
  <Card icon="route" title="How the pieces fit" href="/docs/work">
    Projects, sessions, and change requests, explained.
  </Card>
  <Card icon="terminal" title="CLI command reference" href="/docs/cli">
    Every command, flag, and subcommand.
  </Card>
  <Card icon="terminal" title="The CLI dev loop" href="/docs/cli">
    Link a repo, ship code, and manage sessions from your terminal.
  </Card>
</CardGroup>
