Dokumentation durchsuchen

Konfigurationsdatei

Jeder Schlüssel von _bmad/config.yaml: Ausführungsmodus, die vier Checkpoints, der uat-Block und das Schwarm-Budget. Standardwerte, wer was liest und was eine Änderung bewirkt.

Auf dieser Seite
  1. Was install schreibt
  2. Jeder Schlüssel
  3. Checkpoints und Ausführungsmodi
  4. Der swarm-Block
  5. Wie install mit einer bestehenden Datei umgeht
  6. Mögliche Fehler

_bmad/config.yaml ist die Datei, in der ein Projekt BMAD+ sagt, wie es sich verhalten soll: welche Sprache gilt, ob Agenten einzeln oder unter dem Orchestrator Nexus arbeiten, wo sie anhalten und auf dich warten müssen, wie menschliche Abnahmeprotokolle behandelt werden und wie viele Sub-Agenten ein Schwarm nutzen darf. bmad-plus install legt sie an; du kannst sie von Hand ändern. Diese Seite listet jeden Schlüssel, den sie schreibt.

Hinweis Wer diese Datei liest

Die Kommandozeile selbst liest nur wenige Werte: den Block swarm (von bmad-plus swarm geprüft), fünf Textschlüssel für bmad-plus studio und communication_language für die Sprache einer von bmad-plus uat gebauten Abnahmeseite. Alles andere lesen die Agenten: Die Anweisungen ihrer Skills sagen ihnen, diese Datei zu öffnen und zu befolgen. Deshalb wirkt ein geänderter Checkpoint, sobald ein Agent das nächste Mal eine Pipeline startet, ohne dass ein Befehl nötig ist.

Was install schreibt

Die Datei nach install --yes --lang fr in einem Ordner namens demo-app, mit dem Paket 0.23.0 nachgespielt. Zeichenketten werden in einfachen Anführungszeichen geschrieben, und user_name fällt auf deinen Systembenutzernamen und dann auf Developer zurück
# BMAD+ Project Configuration
# Generated by bmad-plus install

user_name: 'Developer'
communication_language: 'Français'
document_output_language: 'Français'
output_folder: '_bmad-output'
project_name: 'demo-app'
execution_mode: 'manual'
auto_role_activation: true
parallel_execution: true
checkpoints:
  discovery: 'require_approval'
  architecture: 'require_approval'
  story: 'require_approval'
  delivery: 'require_approval'
uat:
  mode: 'advisory'
  granularity: 'delivery'
  environment:
    name: ''
    url: ''
  page_budget:
    max_steps: 15
    max_minutes: 30
  dir: '_bmad-output/uat'
swarm:
  budget: 26
  wave: 10
  media_credits: 'ask'

Die Werte für user_name, communication_language und project_name stammen aus dem Assistenten oder vom Ordner; der Rest sind die gezeigten Standardwerte. uat.environment enthält name: "TEST" und die Adresse, wenn du im Assistenten die URL einer Testumgebung eingegeben hast.

Jeder Schlüssel

Schlüssel von _bmad/config.yaml
SchlüsselStandardGelesen vonWirkung
user_nameAntwort im Assistenten, sonst dein Systembenutzername, sonst DeveloperCLI (studio) und AgentenDer Name, mit dem Agenten dich begrüßen. Für studio muss es ein nicht leerer Text sein.
communication_languageSprachname aus --lang, sonst Systemsprache, falls unterstützt, sonst EnglishCLI (studio, uat) und AgentenSprache, in der Agenten antworten. uat build öffnet die Abnahmeseite darin.
document_output_languagewie communication_languageCLI (studio) und AgentenSprache der Dokumente, die Agenten schreiben (Briefings, PRD, Berichte).
output_folder_bmad-outputCLI (studio) und AgentenWohin Agenten ihre Ergebnisse legen. Für studio muss der Pfad relativ zum Projekt sein.
project_nameName des ProjektordnersCLI (studio) und AgentenDer in Dokumenten verwendete Projektname.
execution_modemanualAgenten, über die Anweisungen ihrer Skillsmanual: du rufst die Agenten. autopilot: Nexus führt Discovery, Build und Ship aus. hybrid: Autopilot mit häufigen Checkpoints. Wird bei der Installation mit --mode gesetzt.
auto_role_activationtrueAgenten, über die Anweisungen ihrer Skillstrue: Ein Agent darf die Rolle wechseln, wenn der Kontext es verlangt, und kündigt es an. false: Rollen wechseln nur auf deine Bitte.
parallel_executiontrueAgenten, über die Anweisungen ihrer Skillstrue: Der Parallel Supervisor darf unabhängige Aufgaben nebeneinander laufen lassen. false: nur nacheinander.
checkpoints.discoveryrequire_approvalAgenten, über die Anweisungen ihrer SkillsHalt nach Produkt-Briefing, PRD und UX-Review.
checkpoints.architecturerequire_approvalAgenten, über die Anweisungen ihrer SkillsHalt nach der Architektur, vor jedem Code.
checkpoints.storyrequire_approval; notify_only, wenn mit --mode autopilot installiertAgenten, über die Anweisungen ihrer SkillsGilt nach jeder abgeschlossenen Story.
checkpoints.deliveryrequire_approvalAgenten, über die Anweisungen ihrer SkillsGilt bei der finalen Lieferung. Mit uat.mode: gate wartet er außerdem auf ein bestandenes uat gate.
uat.modeadvisoryAgenten, über die Anweisungen ihrer Skillsadvisory: Abnahmeseite bauen und anbieten, nie blockieren. gate: Die Lieferung wartet auf ein bestandenes Gate. off: kein Protokoll, und der Lieferbericht sagt das. Ein fehlender uat-Block bedeutet advisory.
uat.granularitydeliveryAgenten, über die Anweisungen ihrer Skillsdelivery: ein Protokoll pro Lieferung. story: Die Seite wird sofort gebaut und geliefert, Story für Story.
uat.environmentname und url leer, oder TEST und deine URLAgenten, über die Anweisungen ihrer SkillsDie Testumgebung, auf der das Protokoll durchgespielt wird.
uat.page_budgetmax_steps: 15, max_minutes: 30Agenten, über die Anweisungen ihrer SkillsGrößenziel einer Abnahmeseite: höchstens so viele Schritte und Minuten für die testende Person.
uat.dir_bmad-output/uatDokumentiert den Ort; bmad-plus uat nimmt ihn aus --dirOrdner der Protokoll-Spezifikationen, Seiten, Ergebnisse und Triage. Der Standard ist derselbe Wert.
swarm.budget26CLI (swarm) und AgentenWie viele Sub-Agenten ein Schwarm-Lauf nutzen darf, bevor der Host dich fragen muss. Ganzzahl von 1 bis 1000.
swarm.wave10CLI (swarm) und AgentenWie viele Sub-Agenten gemeinsam gestartet werden. Ganzzahl von 1 bis 1000.
swarm.media_creditsaskCLI (swarm) und AgentenEinziger erlaubter Wert ist ask: Bezahlte Bild-, Video- oder Audioerzeugung deckt nie ein Budget ab, der Assistent fragt jedes Mal.

Checkpoints und Ausführungsmodi

Ein Checkpoint ist eine Stelle in der Autopilot-Pipeline, an der der Orchestrator anhält, dich informiert und weitermacht oder einfach weitermacht. Jeder der vier Schlüssel nimmt einen von drei Werten.

Werte eines Kontrollpunkts
WertVerhalten
require_approvalHalt. Zeigt einen prüfbaren Checkpoint und wartet. Deckt eine frühere Freigabe von dir die konkrete nächste Aktion bereits ab, wird sie nicht erneut erfragt. Eine externe Benachrichtigung braucht einen konfigurierten Kanal und deine Freigabe.
notify_onlyBerichtet den Fortschritt in der Sitzung und macht weiter.
autoMacht automatisch weiter und protokolliert es für die Nachvollziehbarkeit.

Hinweis Installieren mit --mode autopilot

Der einzige Checkpoint, der vom Modus bei der Installation abhängt, ist story: Er wird bei autopilot als notify_only, sonst als require_approval geschrieben. Spätere Änderungen an execution_mode schreiben die Checkpoints nicht um; ändere sie selbst.

Ein Autopilot, der nur bei der Lieferung anhält

Du vertraust der Pipeline bis zum fertigen Build und willst nur freigeben, was ausgeliefert wird.

In deinem KI-Assistenten
Setze in _bmad/config.yaml execution_mode auf autopilot, stelle die Checkpoints discovery, architecture und story auf notify_only und lass delivery auf require_approval. Zeig mir danach den geänderten Block.

Das solltest du erhalten Der Assistent ändert die Datei so, dass dort execution_mode: autopilot steht, die Punkte discovery, architecture und story auf notify_only und delivery auf require_approval stehen. Beim nächsten autopilot berichtet Nexus an den ersten drei Punkten und läuft weiter, und hält bei der Lieferung mit einem prüfbaren Checkpoint an.

Der swarm-Block

Der Block swarm ist der Teil, den die CLI durchsetzt. Ein fehlender Block oder Schlüssel bedeutet die Standardwerte: 26 Sub-Agenten pro Lauf, 10 pro Welle. Verlangt bmad-plus swarm init mehr Einheiten als swarm.budget und fehlt --approved, schreibt es nichts und endet mit Code 2, damit ein Mensch entscheidet. Bezahlte Medienerzeugung liegt außerhalb jedes Budgets.

Das Schwarm-Budget auf 50 anheben

Ein Panel aus 30 simulierten Käufern wurde mit „needs approval“ abgelehnt, weil das Budget 26 beträgt; du beschließt, Panels bis 50 ohne Nachfrage zuzulassen.

In deinem KI-Assistenten
Setze in _bmad/config.yaml swarm.budget auf 50 und lass wave und media_credits unverändert. Starte danach dasselbe swarm init noch einmal ohne --approved.

Das solltest du erhalten Da 30 das Budget nicht mehr überschreitet, stoppt init nicht mehr mit Code 2: Es legt den Lauf an und gibt die Panel-Zeile aus (zum Beispiel „panel of 30 units, budget 50“). Eine Anfrage über 60 Einheiten würde weiter abgelehnt, bis du --approved angibst.

Wie install mit einer bestehenden Datei umgeht

  • Bestehende Schlüssel gewinnen: Ein erneutes install überschreibt nie einen Wert, den du geändert hast.
  • Fehlende Schlüssel werden mit ihrem Standard ergänzt, auch fehlende Schlüssel innerhalb eines Blocks wie uat oder swarm. So erhält ein mit einer älteren Version installiertes Projekt die neueren Blöcke.
  • Antworten, die du ausdrücklich gibst, ersetzen den gespeicherten Wert: die Felder des Assistenten (Name, Kommunikationssprache, Ausführungsmodus), --mode und die URL einer Testumgebung.
  • Ändert sich etwas, wird die Datei von einem YAML-Schreiber unter der Kopfzeile „BMAD+ Project Configuration“ neu geschrieben. Von Hand ergänzte Kommentare bleiben in diesem Fall nicht erhalten.
  • Ist die Datei kein YAML-Mapping, lässt install sie unberührt und warnt: „_bmad/config.yaml could not be parsed; it was left unchanged.“
  • uninstall behält diese Datei, weil sie deine Einstellungen enthält.

Mögliche Fehler

Von der CLI gemeldete Konfigurationsfehler
MeldungUrsacheWas tun
_bmad/config.yaml: swarm.budget must be an integer from 1 to 1000.budget (oder wave, gleiche Meldung mit seinem Namen) ist keine ganze Zahl im Bereich.Schreibe eine einfache Ganzzahl, zum Beispiel budget: 50.
_bmad/config.yaml: swarm.media_credits must be "ask".Es wurde ein anderer Wert geschrieben.Setze media_credits: "ask" oder lösche die Zeile.
_bmad/config.yaml: swarm has an unknown key "<name>".Im Block steht ein anderer Schlüssel als budget, wave, media_credits.Entferne ihn oder korrigiere die Schreibweise.
_bmad/config.yaml is not valid YAML: …Die Datei lässt sich nicht parsen.Korrigiere die im Hinweis genannte Einrückung oder Anführungszeichen.
_bmad/config.yaml: user_name must be a nonempty stringstudio verlangt, dass seine fünf Textschlüssel (user_name, communication_language, document_output_language, output_folder, project_name) nicht leere Zeichenketten sind, sofern vorhanden.Gib dem Schlüssel einen Textwert oder lösche ihn, um den Standard zu nutzen.

Siehe auch