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

# Quickstart

> Install ChatCLI, connect a provider and run your first chat, context-aware question and coder task in about five minutes.

This page takes you from nothing to a working ChatCLI. Every step links to the full guide when you want the details.

<Steps>
  <Step title="Install ChatCLI">
    <Tabs>
      <Tab title="Homebrew">
        ```bash theme={"system"}
        brew tap diillson/chatcli && brew install chatcli
        ```
      </Tab>

      <Tab title="go install">
        ```bash theme={"system"}
        go install github.com/diillson/chatcli@latest
        ```

        Needs Go 1.27 or newer.
      </Tab>

      <Tab title="Binary">
        Download the binary for your platform from [Releases](https://github.com/diillson/chatcli/releases), then:

        ```bash theme={"system"}
        chmod +x chatcli && sudo mv chatcli /usr/local/bin/
        ```
      </Tab>

      <Tab title="Docker">
        ```bash theme={"system"}
        docker pull ghcr.io/diillson/chatcli:latest
        ```
      </Tab>
    </Tabs>

    Check that it runs:

    ```bash theme={"system"}
    chatcli --version
    ```

    Building from source, Helm and every other option: [Installation](/start/installation).
  </Step>

  <Step title="Connect a provider">
    ChatCLI reads its settings from a `.env` file: `./.env` first, then `~/.chatcli/.env`, then `~/.env`. Pick a provider and add its key:

    <CodeGroup>
      ```bash OpenAI theme={"system"}
      echo 'LLM_PROVIDER=OPENAI' > .env
      echo 'OPENAI_API_KEY=sk-xxx' >> .env
      ```

      ```bash Claude theme={"system"}
      echo 'LLM_PROVIDER=CLAUDEAI' > .env
      echo 'ANTHROPIC_API_KEY=sk-ant-xxx' >> .env
      ```

      ```bash Gemini theme={"system"}
      echo 'LLM_PROVIDER=GOOGLEAI' > .env
      echo 'GOOGLEAI_API_KEY=AIza...' >> .env
      ```

      ```bash Ollama (local) theme={"system"}
      echo 'LLM_PROVIDER=OLLAMA' > .env
      echo 'OLLAMA_BASE_URL=http://localhost:11434' >> .env
      echo 'OLLAMA_MODEL=llama3.1' >> .env
      ```

      ```bash OpenRouter theme={"system"}
      echo 'LLM_PROVIDER=OPENROUTER' > .env
      echo 'OPENROUTER_API_KEY=sk-or-xxx' >> .env
      ```
    </CodeGroup>

    <Tip>
      Have a ChatGPT, Claude or GitHub Copilot plan? Skip the key: start ChatCLI and run `/auth login openai-codex`, `/auth login anthropic` or `/auth login github-copilot`. See [OAuth authentication](/providers/oauth-authentication).
    </Tip>

    Each provider has a default model; set `<PROVIDER>_MODEL` to choose another. All fourteen providers and their models are in [Supported models](/providers/supported-models).
  </Step>

  <Step title="Start your first chat">
    ```bash theme={"system"}
    chatcli
    ```

    Type a question and press Enter. Inside the prompt, `/config` shows the active provider and model, `/switch` changes them without a restart, and `/help` lists every command.
  </Step>

  <Step title="Give it your project's context">
    `@` commands pull your environment into the prompt:

    ```text theme={"system"}
    @file ./cmd explain how the CLI starts up
    @git write a commit message for the staged changes
    @command go test ./... > why is this failing?
    ```

    More in [Context commands](/usage/context-commands).
  </Step>

  <Step title="Hand it a coding task">
    Coder mode reads, edits, runs tests and rolls back in a loop, asking before anything risky:

    ```text theme={"system"}
    /coder fix the failing tests
    ```

    See [Coder mode](/usage/coder-mode) for the approval flow and safety rules.
  </Step>
</Steps>

## Next steps

<CardGroup cols={2}>
  <Card title="Basic usage" icon="terminal" href="/usage/basic-usage">
    The prompt, essential commands and keyboard navigation.
  </Card>

  <Card title="Agent mode" icon="robot" href="/usage/agent-mode">
    Delegate multi-step tasks that run commands with your approval.
  </Card>

  <Card title="Persistent context" icon="layer-group" href="/context/persistent-context">
    Attach a project once and reuse it across sessions.
  </Card>

  <Card title="Cookbook" icon="kitchen-set" href="/cookbook/agent-refactoring">
    Step-by-step recipes for real workflows.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.