Dokumentation durchsuchen

update-policy

Die Projektrichtlinie anzeigen oder setzen, die entscheidet, ob BMAD+ nach Updates sucht und ob eines ohne dich greifen darf: Modi off, notify, auto, Kanal, Bereich, Vorabversionen, Datei, Fehler.

Auf dieser Seite
  1. Syntax
  2. Die Richtliniendatei
  3. Exit-Codes
  4. Ausgabe
  5. Fehler und was zu tun ist
  6. Beispiele

Die Update-Richtlinie ist eine kleine Datei in deinem Projekt, die festlegt, wie viel BMAD+ bei neuen Releases selbst tun darf. Standard: Bescheid sagen und warten. Du kannst die Abfragen abschalten oder automatische Updates innerhalb eines von dir gewählten Versionsbereichs erlauben, so lässt ein Team eine vertrauenswürdige Patch-Linie nachrücken und behält bei allem Größeren einen Menschen am Steuer. update-policy zeigt die Richtlinie und schreibt sie mit Optionen neu. Es prüft oder installiert selbst nichts.

Syntax

Im Terminal deines Projekts
npx bmad-plus update-policy [-d <path>] [--mode <off|notify|auto>] [--range <semver-range>] [--channel <tag>] [--allow-prerelease | --stable-only] [--json]

Optionen von update-policy
OptionArgumentWas sie tut
-d, --directory <path>OrdnerProjekt (Standard: aktueller Ordner).
--mode <mode>off, notify, autooff: npm nie kontaktieren. notify: prüfen und melden, ein Mensch wendet an. auto: automatische Updates innerhalb von --range erlauben. auto verlangt --range.
--range <range>Semver-BereichDie Versionen, die automatische Updates erreichen dürfen, zum Beispiel ^0.23.0. Muss ein gültiger Semver-Bereich sein.
--channel <tag>npm-TagDer zu verfolgende npm-Release-Tag. Standard latest. Kleinbuchstaben, Ziffern, - und _, mit einem Buchstaben beginnend, höchstens 32 Zeichen.
--allow-prerelease-Vorabversionen als Ziele erlauben.
--stable-only-Vorabversionen verbieten (Standard). Nicht mit --allow-prerelease kombinierbar.
--json-{"policy": {...}, "changed": true|false} ausgeben; Fehler geben {"error": "..."} aus.

Die Richtliniendatei

Die Richtlinie liegt in _bmad/update-policy.json. Ohne Datei gilt der Standard: Modus notify, Kanal latest, kein Bereich, keine Vorabversionen, Registry https://registry.npmjs.org/. Die Registry ist nicht konfigurierbar: Jeder andere Wert macht die Richtlinie ungültig, Updates lassen sich also nicht auf eine andere Quelle umleiten. Unbekannte Schlüssel werden abgelehnt. Die Datei wird atomar und nie über einen Link geschrieben.

Eine Richtlinie, die automatische Patches in 0.23.x erlaubt
{
  "schemaVersion": 1,
  "mode": "auto",
  "channel": "latest",
  "allowedRange": "~0.23.0",
  "allowPrerelease": false,
  "registry": "https://registry.npmjs.org/"
}

Was jeder Modus bewirkt
Modusupdate-checkupdate --latest
offKontaktiert npm nicht: Status off.Abgelehnt: updates-disabled.
notify (Standard)Prüft und meldet; der Grund ist approval-required.Nur mit --yes. --auto wird abgelehnt.
autoMeldet ready-for-authorized-update, wenn das Ziel im Bereich liegt und die Dateien unverändert sind.Mit --yes, oder mit --auto für ein Ziel im Bereich; --auto verlangt zusätzlich ein vollständiges Besitzinventar und keine Konflikte.

Exit-Codes

Exit-Codes von update-policy
CodeBedeutung
0Richtlinie angezeigt oder gespeichert.
1Ungültige Optionskombination, ungültige Richtlinie oder unlesbare Richtliniendatei. Die Meldung geht auf den Fehlerstrom (oder in das JSON-Feld error).

Ausgabe

Die Ausgabe ist eine Zeile: Update policy saved: ..., wenn du etwas geändert hast, Update policy: ..., wenn du nur nachgesehen hast. Die Mitschriften sind aus der Vorlage des Codes zusammengesetzt und als simuliert gekennzeichnet.

Ansehen, dann Patches erlaubenSimuliert
npx bmad-plus update-policy
Update policy: notify; channel=latest; range=none; prereleases=false
npx bmad-plus update-policy --mode auto --range "~0.23.0"
Update policy saved: auto; channel=latest; range=~0.23.0; prereleases=false

Beispielhafter Ablauf, nicht bei einem echten Lauf aufgezeichnet. Quelle: tools/cli/commands/update-policy.js Zeile 40 und tools/cli/lib/update-policy.js DEFAULT_POLICY

Fehler und was zu tun ist

Meldungen von update-policy
MeldungUrsacheWas tun
Choose --allow-prerelease or --stable-only.Beide Optionen angegeben.Nur eine behalten.
--mode auto requires an explicit --range.auto ohne Bereich.--range "<semver range>" ergänzen.
Invalid update policy: check mode, channel, range, prerelease flag and official registry.Ein Wert ist unzulässig: Modus, Kanalname, Bereichssyntax oder eine andere Registry als die von npm.Wert korrigieren. Die Registry lässt sich nicht ändern.
Automatic updates require an explicit allowedRange.Die Datei sagt auto ohne allowedRange.Einen Bereich setzen oder den Modus ändern.
Update policy is unreadable or invalid: ...Die vorhandene Datei ist kein gültiges JSON oder besteht die Prüfung nicht._bmad/update-policy.json korrigieren oder löschen und die Richtlinie neu setzen.

Beispiele

In diesem Projekt nie nach Updates suchen
npx bmad-plus update-policy --mode off

Zurück zum Standard (sag Bescheid, ich entscheide)
npx bmad-plus update-policy --mode notify

Siehe auch