# Getting started

Source: https://cohalen.com/docs/getting-started



Six steps, a few minutes end to end. Each one is something you do in the app.

<Steps>
  <Step>
    ## Install and open [#install-and-open]

    Cohalen is a desktop app for Windows, macOS, and Linux, currently in early
    access. [Join the waitlist](/#waitlist) and we'll send you a build. Download
    it, open it, and sign in.
  </Step>

  <Step>
    ## Connect GitHub [#connect-github]

    A GitHub connection lets Cohalen push, open pull requests, and merge as your
    account, so your commits are authored by you. Authorize it once.

    You only need it before you push. Skip it now and the app asks you inline at your
    first push.
  </Step>

  <Step>
    ## Connect a repository [#connect-a-repository]

    A repository is the git source your workspaces branch from. Connect one: **Open** a
    folder that's already a git repository, or **Clone** from a remote. Your clone stays
    on your machine.
  </Step>

  <Step>
    ## Launch your first workspace [#launch-your-first-workspace]

    A workspace is one unit of parallel work, an isolated git worktree with one agent
    working in it. Launch one, pick the agent, and give it a task. For example:

    ```text
    Add a rate limiter to the /api/waitlist route:
    - 5 requests per minute per IP
    - return 429 with a Retry-After header
    - cover it with a test
    ```

    The agent works in the background. Launch more workspaces to run several agents at
    once. Each has its own worktree, so they never step on each other's files.

    <Callout type="warn">
      Every workspace has a spend cap, on by default. When it hits the cap the agent
      stops, so a runaway loop can't become a runaway bill.
    </Callout>
  </Step>

  <Step>
    ## Read the changeset [#read-the-changeset]

    When the agent finishes, open **Review**. It shows the changeset: everything the
    task changed, as one whole.

    Leave a note on a diff line for the agent to fix, or edit the file yourself.
  </Step>

  <Step>
    ## Check and ship [#check-and-ship]

    **Checks** gathers everything that decides whether the workspace can merge and
    boils it down to one verdict. A blocked workspace reads as blocked, with a count of
    what's left. The verdict gives you one action at a time:

    1. Commit and push
    2. Create the pull request
    3. Merge

    Cohalen merges through your GitHub connection, so branch protection still applies.
  </Step>
</Steps>
