# Adapter

> Die sieben KI-Tools, die BMAD+ vorbereitet: die Datei für jedes, die Erkennung, das gemeinsame Rückgrat AGENTS.md und wie install und update deine eigenen Anweisungen schützen.

Canonical: https://bmad-plus.rochetta.fr/de/docs/reference/adapters/
Language: de
BMAD+ version: 0.23.1
Documentation reviewed: 2026-10-19
Author: Laurent Rochetta
License: MIT

BMAD+ Dokumentation › [Referenz](https://bmad-plus.rochetta.fr/de/docs/reference/) › Adapter

Jeder KI-Assistent sucht seine Anweisungen in einer anderen Datei. Ein Adapter ist diese Datei: ein kurzes, generiertes Dokument, das einem Assistenten die von BMAD+ installierten Agenten, Skills und Regeln vorstellt. Install schreibt pro genutztem Tool einen Adapter und dazu ein gemeinsames Rückgrat, `AGENTS.md`, damit alle Assistenten dieselbe Mannschaft und dieselben Regeln sehen. Die Seite ist für alle, die `--tools` wählen oder wissen wollen, was BMAD+ mit einer bereits vorhandenen Anweisungsdatei macht.

<a id="tools"></a>
## Die sieben Tools

**Tools, Dateien und Erkennung**

| ID für `--tools` | Tool | Geschriebene Datei | Erkannt, wenn dies existiert | Für das Tool geschriebener Hinweis |
| --- | --- | --- | --- | --- |
| `claude-code` | Claude Code | `CLAUDE.md` | `.claude` | Lädt `CLAUDE.md` aus dem Projektstamm selbst; aktiviere einen Agenten, indem du seinen Namen sagst. |
| `gemini-cli` | Gemini CLI | `GEMINI.md` | `.gemini` | Lädt `GEMINI.md` aus dem Projektstamm selbst. |
| `antigravity` | Antigravity | `GEMINI.md` (mit Gemini CLI geteilt) | `.gemini/antigravity` | Liest dieselbe Datei; der Hinweis ergänzt eine Konkurrenzregel: mit anderen agentischen Tools abstimmen und nie dieselben Dateien gleichzeitig bearbeiten. |
| `cursor` | Cursor | `.cursor/rules/bmad-plus.mdc` | `.cursor` | Eine Regel mit `alwaysApply: true` im Kopf, die Cursor immer lädt; das Rückgrat bleibt die maßgebliche Quelle. |
| `codex-cli` | Codex CLI | `.codex/AGENTS.md` | `.codex` | Folgt der offenen AGENTS.md-Konvention; die Datei verweist auf das Rückgrat im Stamm, das man bei Vorhandensein beider besser direkt liest. |
| `opencode` | OpenCode | `.opencode/AGENTS.md` | `.opencode` | Wie Codex CLI. |
| `aider` | Aider | `CONVENTIONS.md` | `.aider.conf.yml` | Aider lädt Konventionsdateien nicht von selbst: Trage `read: CONVENTIONS.md` in `.aider.conf.yml` ein oder führe in der Sitzung `/read CONVENTIONS.md` aus. |

Gemini CLI und Antigravity zeigen auf dieselbe `GEMINI.md`. Sind beide gewählt, wird eine Datei geschrieben, die für beide betitelt ist. Die Erkennung prüft nur, ob der Marker im Projektordner existiert; sie sagt nichts darüber, ob das Tool auf dem Rechner installiert ist.

<a id="choosing"></a>
## Tools bei der Installation wählen

**Wie --tools und der Assistent entscheiden**

| Du gibst an | Ergebnis |
| --- | --- |
| nichts, interaktiv | Tools, deren Marker gefunden wird, werden gewählt. Wird keiner gefunden, fragt der Assistent, welche du nutzt. |
| nichts, mit `--yes` | Nur erkannte Tools. Wird keins erkannt, wird kein Adapter geschrieben und der Installer meldet: `No AI tool detected; no instruction adapter written. Re-run with --tools <ids> or --tools all to add one.` |
| `--tools claude-code,cursor` | Genau diese. Die Liste ist durch Kommas getrennt. |
| `--tools all` | Alle sieben. |
| `--tools none` (or `skip`) | Es wird kein Adapter geschrieben, vorhandene Anweisungsdateien bleiben unberührt. Agenten und Skills werden trotzdem installiert. |
| eine unbekannte ID | Der Befehl stoppt, bevor etwas geschrieben wird: „Unknown tool ID(s): … Available: claude-code, gemini-cli, antigravity, cursor, codex-cli, opencode, aider, all, none.“ |

Ein erneutes `install` behält die Tools, die diese Installation schon besitzt, egal was du jetzt angibst, außer bei `--tools none`. Ein weiteres Tool entfernt also nie ein anderes.

**Eine echte Installation, die Claude Code vorbereitet**

```text
$ npx bmad-plus install --yes --lang fr --packs core,design --tools claude-code --directory .\demo-app
•  IDE détectés: Claude Code
o  ✅ 5 agents, 9 skills, 4 fichiers copiés
o  ✅ 1 IDE configuré(s)
```

Ausgabe eines echten Laufs. Quelle: Aufgezeichnet im Abnahmelauf der 0.23.0 am 2026-10-18 (Schritt 1; Installer auf Französisch gestartet)

<a id="files"></a>
## Was in den Dateien steht

`AGENTS.md` ist das Rückgrat. Es wird geschrieben, sobald mindestens ein Tool gewählt ist, und enthält alles: den Projektkontext, die Agentenmannschaft (mit den Skills, die jeder führt), den Skills-Ordner und die Datei zur automatischen Aktivierung, deinen Namen und deine Sprache, die Update-Anweisungen, die Registry-Fakten (Anzahl Packs und Agenten, Datenflüsse, Hinweise zum Zusammenspiel) und die wichtigsten Chat-Befehle. Die Memory-Regeln (vier Leitplanken und vier Dateien unter `.agents/memory`) kommen nur hinzu, wenn das Memory-Pack installiert ist. Jede Tool-Datei beginnt mit einem Link zum Rückgrat und dem Hinweis aus der Tabelle und wiederholt dann dieselben Abschnitte, weil viele Tools nur ihre eigene Datei laden.

**Zwei Zeilen einer generierten AGENTS.md**

```text
$ Select-String -Path .\demo-app\AGENTS.md -Pattern 'Atelier','Cohabitation'
demo-app\AGENTS.md:22:- **Atelier** (Design Engine) — Senior product designer and design engineer: surfaces, tokens, accessibility, audits, redesigns (Design) — drives: design, design-review, redesign
demo-app\AGENTS.md:54:- Cohabitation (Design): Overlaps Sentinel's UX-review role and Dev Studio's Rachel (UX Designer); when this pack is installed its rules govern visual design and accessibility, and the others hand those over.
# Das Terminal hatte die langen Zeilen im aufgezeichneten Lauf umbrochen; hier sind sie zusammengefügt.
```

Ausgabe eines echten Laufs. Quelle: Aufgezeichnet im Abnahmelauf der 0.23.0 am 2026-10-18 (Schritt 3; Select-String auf der AGENTS.md des Ordners demo-app)

Jede generierte Datei trägt die Marker `AUTO-GENERATED by tools/build/generate-adapters.js — DO NOT EDIT.` und `BMAD+ installed project configuration`. Daran erkennt BMAD+ später eine Datei als seine eigene. Die Cursor-Regel beginnt mit ihrem YAML-Header (`description`, `alwaysApply: true`), die Marker folgen also direkt danach.

<a id="ownership"></a>
## Was mit einer bereits vorhandenen Datei geschieht

Install speichert einen Fingerabdruck jedes geschriebenen Adapters (Hash des Inhalts, Zeilenenden normalisiert). Dieser Fingerabdruck im Installationsmanifest zeigt BMAD+, ob eine Datei noch seine unveränderte eigene ist oder von dir geändert wurde.

**Verhalten je Situation**

| Die Datei am Zielpfad ist … | install | update |
| --- | --- | --- |
| nicht vorhanden | Wird geschrieben. | Wird geschrieben. |
| von BMAD+, identisch mit dem, was geschrieben würde | Bleibt unverändert. | Bleibt unverändert. |
| von BMAD+, seit der Installation unberührt | Wird aufgefrischt. | Wird aufgefrischt, neuer Fingerabdruck wird gespeichert. |
| von BMAD+, aber du hast ihn geändert | Bleibt erhalten. Warnung: `<file>: existing project instructions preserved.` | Bleibt erhalten und wird als Konflikt aufgeführt (Grund `local-instructions`). |
| von dir geschrieben, ohne BMAD+-Marker (interaktiver Lauf) | Bleibt erhalten, mit derselben Warnung. | Bleibt erhalten, auch mit `--yes`. |
| von dir geschrieben, ohne BMAD+-Marker, bei `install --yes` | Wird zuerst nach `<file>.bak` kopiert, dann ersetzt. Ein vorhandenes `.bak` wird nie überschrieben: Die nächste Kopie heißt `.bak.1`, dann `.bak.2`. | — |
| von einem älteren BMAD+-Installer hinterlassen | Wird nach `.bak` gesichert und dann aufgefrischt: `<file>: backed up to <file>.bak before refreshing.` | Ebenso: gesichert, dann migriert. |
| die generierte Datei eines BMAD+-Quell-Checkouts (Generator-Marker, kein Installationsmarker) | Bleibt erhalten, mit einem Hinweis, wie man es mit den Paketstandards vergleicht. | Bleibt erhalten, Grund `repository-adopted`. |

> **Warnung · install --yes ersetzt eine von dir geschriebene Anweisungsdatei** Eine unbeaufsichtigte Installation kann nicht fragen, also legt sie eine `.bak`-Kopie an und schreibt die BMAD+-Version. Ist deine eigene `CLAUDE.md` wichtig, führe `install` einmal interaktiv aus oder gib `--tools none` an und führe den generierten Inhalt selbst zusammen. `update` tut das nie: Es behält immer eine Datei, die ihm nicht gehört.

`doctor` meldet den Zustand jedes Adapters als `Instruction file: <state>.` mit den Zuständen `unchanged` (bestanden), `modified`, `unowned` oder `adopted` (Warnungen) sowie `missing` oder `unreadable` (Fehler). `uninstall` entfernt einen Adapter nur, wenn er noch den Installationsmarker trägt und sein Hash zum gespeicherten passt; eine von dir geänderte Datei bleibt.

<a id="limits"></a>
## Was ein Adapter nicht tut

- Er ist Text, den der Assistent liest. BMAD+ installiert in keinem dieser Tools einen Hook oder eine Erweiterung: Die Registry beschreibt die Integration als vom Host verwaltet, ohne integrierte Lebenszyklus-Ereignisse.
- Er ist per Vertrag modellunabhängig: Claude, GPT, Gemini und lokale Modelle werden unterstützt, weil der Inhalt aus einfachen Anweisungen besteht.
- Er lässt den Assistenten nicht `bmad-help`, `autopilot` oder `parallel` ausführen: Das sind Sätze, die du im Chat sagst.
- Er weist den Assistenten an, einmal pro Sitzung mit `npx --no-install bmad-plus update-check --json` nach einer neuen Version zu sehen und eine nur anzuwenden, soweit deine Update-Richtlinie es erlaubt. Diese Form startet nur eine lokale Kopie: Füge das Paket einmal mit `npm install --save-dev bmad-plus` hinzu oder nutze `npx bmad-plus update-check --json`.

<a id="examples"></a>
## Beispiele

<a id="example-cli-adapters-add-cursor"></a>
### Cursor zu einem Projekt hinzufügen, das schon Claude Code nutzt

BMAD+ ist mit `claude-code` installiert. Ein Kollege arbeitet in Cursor und braucht dieselben Agenten.

**In deinem KI-Assistenten**

```text
Füge Cursor zur BMAD+-Installation dieses Projekts hinzu, ohne das Claude-Code-Setup anzufassen: führe `npx bmad-plus install --yes --tools cursor` aus und sag mir, welche Dateien sich geändert haben.
```

**Das solltest du erhalten** `--yes` ist nötig, wenn der Assistent den Befehl ausführt, denn ohne Terminal weigert sich der Installer zu starten; in deinem eigenen Terminal würde er zuerst nach Sprache, Packs und Namen fragen. Der Installer behält `claude-code` (bereits besessene Tools bleiben) und schreibt `.cursor/rules/bmad-plus.mdc` mit `alwaysApply: true` und einem Link auf `AGENTS.md`. `CLAUDE.md` und `AGENTS.md` werden nur neu geschrieben, wenn sich ihr generierter Inhalt unterscheidet; eine von dir geänderte Kopie bleibt mit der Warnung „existing project instructions preserved“ erhalten. Das Manifest listet nun beide Tools.

<a id="example-cli-adapters-edited-claude-md"></a>
### Du hast eigene Regeln in CLAUDE.md ergänzt

Du hast die Teamkonventionen unten an die generierte `CLAUDE.md` gehängt, dann erscheint eine neue BMAD+-Version.

**In deinem KI-Assistenten**

```text
Aktualisiere BMAD+ in diesem Projekt mit `npx bmad-plus update --latest --yes` und liste jede Datei auf, die das Update erhalten statt ersetzt hat.
```

**Das solltest du erhalten** Der Plan zeigt „CLAUDE.md: preserved (local-instructions).“ und der Beleg hält es als Konflikt fest; das Update endet mit „applied partially.“ Deine Ergänzungen bleiben unberührt. Um den neuen generierten Text zu übernehmen, führe von Hand zusammen oder stelle das Original wieder her und bearbeite es erneut.

**Siehe auch**

- [install und die Option --tools](https://bmad-plus.rochetta.fr/de/docs/reference/cli-install/)
- [update: wie Konflikte erhalten bleiben](https://bmad-plus.rochetta.fr/de/docs/reference/cli-update/)
- [doctor: Adapter-Zustände](https://bmad-plus.rochetta.fr/de/docs/reference/cli-doctor/)
- [uninstall](https://bmad-plus.rochetta.fr/de/docs/reference/cli-uninstall/)
- [Projektstruktur](https://bmad-plus.rochetta.fr/de/docs/reference/project-layout/)

[BMAD+ Dokumentation](https://bmad-plus.rochetta.fr/de/docs/) · [Referenz](https://bmad-plus.rochetta.fr/de/docs/reference/)

[Quellcode auf GitHub](https://github.com/lrochetta/BMAD-PLUS)
