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

# Regeln & AGENTS.md

> Stellen Sie immer aktive Anweisungen und Kontext bereit, die den Agenten in jeder Sitzung leiten

Regeln sind dauerhafte Anweisungen, die festlegen, wie sich Devin CLI in Ihrem Projekt verhält. Sie werden zu Beginn jeder Sitzung in den Kontext des Agenten eingebunden und sorgen so für ein konsistentes Verhalten in Ihrem Team.

Häufige Einsatzmöglichkeiten für Regeln sind Code-Standards, Architekturleitlinien, bevorzugte Bibliotheken, Testkonventionen und projektspezifische Einschränkungen.

**Um die Programmierfähigkeit zu verbessern, Aufgaben schneller abzuschließen und Kosten zu senken**, empfehlen wir dringend, **stattdessen nach Möglichkeit Skills zu verwenden**. Skills werden nur dann in den Kontext eingebunden, wenn sie relevant sind. **Regeln und AGENTS sollten so klein wie möglich gehalten werden.**

**Unser empfohlener Ansatz** ist, eine Regel zu verwenden, um auf Skills zu verweisen, die das Modell in bestimmten Szenarien nutzen soll.

***

<div id="agentsmd">
  ## AGENTS.md
</div>

Am einfachsten fügen Sie Regeln über eine `AGENTS.md`-Datei im Stammverzeichnis Ihres Projekts hinzu:

```markdown theme={null}
# Project Rules

- Use TypeScript for all new files
- Follow the existing patterns in src/components/
- Always run `npm run lint` before committing
- Use pnpm, not npm or yarn
- Write tests for all new utility functions
```

Devin CLI liest diese Datei automatisch.

<Tip>
  `AGENTS.md` ist die empfohlene Methode für Projektregeln. Sie ist leicht lesbar, versionskontrolliert und funktioniert mit mehreren KI-Tools.
</Tip>

***

<div id="global-rules">
  ## Globale Regeln
</div>

Sie können auch Regeln erstellen, die für **jedes Projekt** gelten, indem Sie eine `AGENTS.md`-Datei in Ihrem Benutzer-Konfigurationsverzeichnis ablegen:

<Tabs>
  <Tab title="Linux / macOS">
    ```
    ~/.config/devin/AGENTS.md
    ```
  </Tab>

  <Tab title="Windows">
    ```
    %APPDATA%\devin\AGENTS.md
    ```
  </Tab>
</Tabs>

Globale Regeln werden zu Beginn jeder Sitzung geladen, unabhängig davon, an welchem Projekt Sie gerade arbeiten. Verwenden Sie sie für persönliche Einstellungen, die überall gelten:

```markdown theme={null}
# My Global Rules

- Commit-Nachrichten immer im Conventional-Commit-Format verfassen
- Funktionale Patterns gegenüber imperativem Code bevorzugen
- Tests ausführen, bevor ein Task als abgeschlossen vorgeschlagen wird
```

Globale Regeln gelten parallel zu Projektregeln — beide werden gleichzeitig geladen und sind zugleich aktiv. `AGENT.md` wird an diesem Speicherort ebenfalls unterstützt.

<Tip>
  Wenn Sie Claude Code verwenden, liest Devin CLI auch `~/.claude/CLAUDE.md` als globale Regel.
</Tip>

***

<div id="personal-rules-with-agentslocalmd">
  ## Persönliche Regeln mit AGENTS.local.md
</div>

Wenn du persönliche Anweisungen hast, die du nicht mit anderen Beteiligten teilen möchtest — zum Beispiel deinen bevorzugten Arbeitsstil, Testgewohnheiten oder Präferenzen bei Reviews — erstelle eine Datei namens `AGENTS.local.md` neben deiner `AGENTS.md`:

```markdown theme={null}
# My Personal Rules

- Always start by writing failing tests before implementing a fix
- Prefer functional patterns over imperative code
- Run the full test suite before marking a task as complete
```

Diese Datei wird zusammen mit `AGENTS.md` geladen und ist dabei ebenfalls immer aktiv. Fügen Sie sie zu Ihrer `.gitignore` hinzu, damit sie lokal bleibt:

```gitignore theme={null}
AGENTS.local.md
```

<Tip>
  Dies folgt derselben Konvention wie `.devin/config.local.json` — das Suffix `.local.` kennzeichnet eine persönliche Überschreibung, die nicht ins Repository eingecheckt werden sollte.
</Tip>

***

<div id="supported-file-names">
  ## Unterstützte Dateinamen
</div>

Devin CLI liest Regeln aus allen folgenden Dateien:

| Datei             | Hinweise                         |
| ----------------- | -------------------------------- |
| `AGENTS.md`       | Empfohlen                        |
| `AGENTS.local.md` | Persönliche Regeln (gitignored)  |
| `AGENT.md`        | Alternative im Singular          |
| `.windsurfrules`  | Legacy Windsurf-Workspace-Regeln |
| `CLAUDE.md`       | Kompatibel mit Claude Code       |

Alle diese Dateien werden gleich behandelt — ihr Inhalt wird als immer aktive Regeln geladen.

Diese Dateien können auf mehreren Ebenen Ihres Projekts vorhanden sein (nicht nur im Stammverzeichnis). Dateien im Workspace-Stammverzeichnis werden zu Beginn der Sitzung geladen. Dateien in Unterverzeichnissen werden erst erkannt, wenn der Agent auf Dateien in diesem Verzeichnis zugreift. So bleibt der Kontext auf den relevanten Teil der Codebasis fokussiert.

Sie können auch im [globalen Konfigurationsverzeichnis](#global-rules) abgelegt werden, damit sie für alle Projekte gelten. Eine Ausnahme ist `CLAUDE.md`, das global aus `~/.claude/CLAUDE.md` gelesen wird.

***

<div id="rules-from-other-tools">
  ## Regeln aus anderen Tools
</div>

Wenn du von einem anderen KI-Coding-Tool kommst, kann Devin CLI deine vorhandenen Regeln lesen:

<AccordionGroup>
  <Accordion title="Cursor">
    Devin CLI liest aus `.cursor/rules/*.md` und `.cursor/rules/*.mdc`.

    Cursor-Regeln unterstützen Frontmatter zur Steuerung der Aktivierung:

    ```markdown theme={null}
    ---
    description: "React component guidelines"
    globs: "src/components/**/*.tsx"
    alwaysApply: false
    ---

    Use functional components with hooks. Never use class components.
    ```

    **Aktivierungsverhalten:**

    * `alwaysApply: true` — Immer aktiv
    * `globs` angegeben — Aktiv, wenn an passenden Dateien gearbeitet wird
    * Nur `description` — Der Agent entscheidet, wann die Regel angewendet wird
    * Nichts davon — Der Nutzer muss sie manuell anwenden
  </Accordion>

  <Accordion title="Windsurf">
    Devin CLI liest aus `.windsurf/rules/*.md` und `.windsurf/global_rules.md`.

    **Unterstützung für Unterverzeichnisse:** `.windsurf/rules/`-Verzeichnisse können auf mehreren Ebenen in deinem Projekt vorhanden sein, nicht nur im Stammverzeichnis. Regeln im Workspace-Stammverzeichnis werden zu Sitzungsbeginn geladen. Regeln in Unterverzeichnissen werden erst bei Bedarf erkannt — wenn der Agent auf Dateien in diesem Verzeichnis zugreift, werden alle dort gefundenen `.windsurf/rules/`-Verzeichnisse (sowie die in übergeordneten Verzeichnissen bis zum Workspace-Stammverzeichnis) automatisch geladen. So wird vermieden, den Kontext des Agenten mit Regeln aus nicht relevanten Teilen des Projekts zu überladen.

    Windsurf-Regeln unterstützen Frontmatter:

    ```markdown theme={null}
    ---
    description: "API design rules"
    trigger: always_on
    ---

    All API endpoints must return JSON with a consistent envelope format.
    ```

    **Trigger-Werte:** `always_on`, `manual`, `model_decision`, `agent`, `glob`
  </Accordion>

  <Accordion title="Claude Code">
    Devin CLI liest aus dem Verzeichnis `.claude/`.
  </Accordion>
</AccordionGroup>

<Warning>
  Devin CLI unterstützt keine `.codeiumignore`-Dateien. Wenn du die Codevervollständigung von Codeium verwendest und Ignore-Muster konfiguriert hast, gelten diese Muster nicht für Devin CLI.
</Warning>

***

<div id="controlling-imports">
  ## Importe steuern
</div>

Sie können das Einlesen aus bestimmten Tool-Formaten in Ihrer Konfigurationsdatei (`~/.config/devin/config.json` — oder `%APPDATA%\devin\config.json` unter Windows — oder `.devin/config.json`) aktivieren oder deaktivieren:

```json theme={null}
{
  "read_config_from": {
    "agents_standard": true,
    "cursor": true,
    "windsurf": true,
    "claude": true
  }
}
```

Standard-Projektregeln aus `AGENTS.md`, `AGENTS.local.md`, `AGENT.md` und `.windsurfrules` werden standardmäßig eingelesen. Setzen Sie `"agents_standard": false`, um deren Import zu deaktivieren.

***

<div id="rule-activation-types">
  ## Aktivierungstypen von Regeln
</div>

Regeln, die aus externen Formaten geladen werden, können unterschiedliche Aktivierungsarten haben:

| Typ                      | Verhalten                                                                         |
| ------------------------ | --------------------------------------------------------------------------------- |
| **Immer aktiv**          | In jeder Sitzung aktiv, keine Nutzeraktion erforderlich                           |
| **Glob-aktiviert**       | Aktiv, wenn der Agent mit Dateien arbeitet, die bestimmten Mustern entsprechen    |
| **Vom Agenten bestimmt** | Der Agent entscheidet anhand der Beschreibung der Regel, wann sie angewendet wird |
| **Vom Nutzer auslösbar** | Nur aktiv, wenn sie vom Nutzer ausdrücklich ausgelöst wird                        |

Regeln aus `AGENTS.md` sind immer „Immer aktiv“.

***

<div id="best-practices">
  ## Best Practices
</div>

<CardGroup cols={2}>
  <Card title="Regeln knapp halten" icon="compress">
    Lange, ausführliche Regeln verwässern die Aufmerksamkeit des Agenten. Konzentrieren Sie sich auf das Wesentliche.
  </Card>

  <Card title="Seien Sie konkret" icon="bullseye">
    „Verwenden Sie pnpm“ ist besser als „Verwenden Sie den richtigen Paketmanager“. Konkrete Anweisungen lassen sich leichter befolgen.
  </Card>

  <Card title="Beispiele einfügen" icon="code">
    Zeigen Sie das gewünschte Muster, nicht nur eine Beschreibung davon.
  </Card>

  <Card title="Versionieren Sie sie" icon="code-branch">
    Bewahren Sie Regeln in Ihrem Repo auf, damit das gesamte Team von denselben Richtlinien profitiert.
  </Card>
</CardGroup>

<Note>
  Für die meisten gängigen Regeltypen sollten Sie stattdessen Skills verwenden. Skills geben Ihnen mehr Kontrolle darüber, wann und wie sie angewendet werden.
</Note>
