Quickstart

Install the CLI and run your first agent.

Go from zero to a running agent in three commands, then learn how to shape one to your workflow. This page is for anyone trying Ellipsis for the first time.

Install the CLI

The Ellipsis CLI is a single binary named agent. Install it with Homebrew:

brew install ellipsis-dev/cli/agent

See the CLI reference for other install and authentication options.

Log in

Authenticate once with the device-code flow. It opens a verification URL in your browser and stores a user token under ~/.config/ellipsis/config.json:

agent login

Run your first agent

Start the welcome agent and follow it until it finishes:

agent run start --template welcome-to-ellipsis --watch

The agent runs in the Ellipsis cloud, not on your machine. --watch streams its steps to your terminal so you can see what it does in real time.

Customize an agent

Agents are defined in YAML and live in your repository under agents/. Here is one of the built-in templates, the Linear Issue Implementer, which drafts an implementation PR whenever a Linear issue is opened:

ellipsis:
  version: v1
  name: Linear Issue Implementer
  description: Draft implementation PRs from new Linear issues

enabled: true

triggers:
  - type: react
    events:
      - event: linear_issue_open

sandbox:
  repositories:
    - name: beacon-web
    - name: beacon-api

limits:
  run: 2.00
  day: 10.00
  week: 40.00

claude:
  model: claude-opus-4-8
  system: |
    You implement well-scoped Linear issues.

    Read the issue, inspect the relevant code, and make the smallest coherent
    change. If the issue is missing product or technical detail, stop and write
    the exact questions needed before implementation.

Three parts of the file decide how the agent fits your workflow:

  • Triggers decide when it runs. Swap the react trigger for a cron schedule to run on a timer, or a mention trigger to answer @ellipsis. See triggers.
  • Integrations decide where it acts. List the repositories it checks out under sandbox, and pull secrets in by name with sandbox.variables so they stay out of the file. See sandbox.
  • Instructions and limits decide what it does and how much it can spend. Write the task in claude.system, pick a model, and cap cost with limits. See the agent config reference.