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

# Quickstart

> Add Driftless to your coding agent and watch your first piece of team context show up in about a minute.

Driftless is one workspace where a team and its agents share durable state: the Knowledge you keep, the Operations you run, and the Work in flight. This quickstart starts where builders feel it first: your agent reads the relevant context before it touches an area and writes back what it learns. You don't learn a system. Your agent does. Here's the whole setup.

<Steps>
  <Step title="Install and log in">
    ```bash theme={"theme":"github-light"}
    npm install -g @driftless-sh/cli
    driftless login
    ```

    <Tip>
      For CI or non-interactive setup, pass a key instead: `driftless login --key drift_your_api_key_here` (create one at [driftless.icu](https://driftless.icu) → Settings → API Keys).
    </Tip>
  </Step>

  <Step title="Teach your agent">
    ```bash theme={"theme":"github-light"}
    driftless install-skill
    ```

    This writes `AGENTS.md` and `CLAUDE.md` into your repo. From now on, any coding agent that opens the repo knows the loop: pull team context before editing, persist what it learns after.
  </Step>

  <Step title="Go code">
    Work as you normally would. Your agent pulls context before it touches an area, and saves new gotchas and decisions as it learns them. Come back to [your dashboard](https://driftless.icu) and watch your first memory show up.
  </Step>
</Steps>

That's it. Pull before, persist after. That's Driftless.

## The whole loop, in one prompt

Prefer not to install the skill, or want to drop the behavior into any agent directly? This is all it needs:

```text theme={"theme":"github-light"}
This repository uses Driftless for shared team memory.

BEFORE you edit code, pull what the team already knows about the files
you're touching:
    driftless context get --files "<files you're about to change>"
Read the gotchas, decisions and invariants before writing anything.

AFTER you learn something durable, a gotcha that cost you time, a decision
you made, a constraint that must hold, write it back:
    driftless context update <topic> --gotcha "..." --decision "..."
    # or, if no topic fits the area yet:
    driftless context add <name> --pattern "<glob>" --what "..." --how "..."

That's the whole loop: pull before, persist after. Do it as part of your work.
```

## Going deeper

You don't need any of this to start. Reach for it once you have a few topics and want more out of them:

* [The Driftless loop](/concepts/core-loop): the whole model, Knowledge, Operations, and Work, and the loop between them.
* [Topics](/concepts/topics): the content, anchors, and fields each one carries.
* [Drift & freshness](/concepts/drift): how a topic flags itself when its code moves underneath it.
* [The CLI](/cli/context): anchoring topics to files, file-matched retrieval, relations.
* [Agent setup in depth](/agents/setup): wiring Driftless into specific coding agents.
