Skip to content
Apothem
CLI-Referenz

migrate-workspace

CLI-Referenz für den Befehl apothem migrate-workspace.

Migriert einen veralteten Workspace pro Harness in das gemeinsame .apothem-Layout.

Übersicht

apothem migrate-workspace [--project PATH] [--dry-run]
                          [--quiet|-q] [--verbose|-v]
                          [--format plain|json] [--json] [--no-color]

migrate-workspace führt ein veraltetes Datenverzeichnis pro Harness (.apothem/<harness>/...) und einen veralteten .plans/-Baum in dem einzigen gemeinsamen Arbeitsverzeichnis .apothem/{plans,memory,learning,contexts} zusammen. Die Basis ist die aufgelöste --project-Wurzel, sofern angegeben, andernfalls das aktuelle Arbeitsverzeichnis (der projektlokale Standard).

Die Memory-, Kontext- und Lernspeicher pro Harness werden als Vereinigung nach ID in den gemeinsamen Speicher zusammengeführt; Lernsignale werden verkettet und dedupliziert; ein widersprüchlicher Datensatz (gleiche ID, anderer Inhalt) wird übersprungen, niemals überschrieben. Ein veralteter .plans/-Baum wird nach .apothem/plans/ verschoben. Jede übernommene Quelle wird zuerst gesichert. Die Migration ist idempotent — ein erneuter Lauf auf einem bereits migrierten Baum bewirkt nichts.

Optionen

OptionBeschreibung
--project PATHProjektwurzel für Adapter mit Projektgeltungsbereich, die in einen Projektbaum statt in ein Konfigurationsverzeichnis mit Benutzergeltungsbereich materialisieren.
--dry-runErkennt das veraltete Layout und meldet, was migriert würde, ohne zu schreiben.
--quiet, -qUnterdrückt informative Ausgaben; nur Fehler werden ausgegeben.
--verbose, -vGibt zusätzliche Diagnoseausgaben aus.
--format plain|jsonAusgabeformat (Standard: plain).
--jsonKurzform für --format json.
--no-colorDeaktiviert ANSI-Farbcodes in der Ausgabe.
-h, --helpZeigt die Hilfe an und beendet den Befehl.

JSON-Ausgabe

Der --json-Umschlag trägt das Migrationsergebnis. Bei einer abgeschlossenen Migration ist status gleich success, und die Nutzlast meldet die Anzahl der zusammengeführten Datensätze, ob ein .plans/-Baum verlagert wurde, die Sicherungswurzel und etwaige übersprungene Konflikte. Ein Aufruf mit --dry-run meldet stattdessen legacy_layout_detected.

{
  "schema_version": 1,
  "command": "migrate-workspace",
  "status": "success",
  "base": "/home/example/project",
  "migrated": true,
  "backup_root": "/home/example/project/.apothem/backups/migrate-20260101T120000Z",
  "memory_merged": 12,
  "contexts_merged": 4,
  "learning_merged": 7,
  "conflicts": [],
  "plans_moved": true,
  "notes": []
}

Wenn kein veraltetes Layout vorhanden ist, ist migrated gleich false, und es wird nichts geschrieben. Der --dry-run-Umschlag lässt die Ergebniszahlen weg und meldet nur die Erkennung:

{
  "schema_version": 1,
  "command": "migrate-workspace",
  "base": "/home/example/project",
  "dry_run": true,
  "legacy_layout_detected": false
}

Beispiele

apothem migrate-workspace
apothem migrate-workspace --project .
apothem migrate-workspace --dry-run --json

Exit-Codes

CodeBedeutung
0Migration abgeschlossen, oder es wurde kein veraltetes Layout gefunden (nichts zu migrieren)
1Erwarteter Fehler — ein Validierungs- oder Projektwurzelfehler oder ein Fehlschlag der Migration
64Verwendungsfehler: eine unbekannte Option oder ein unbekannter Befehl oder ein fehlender oder ungültiger Optionswert. Unter --json ist der Fehler ein JSON-Umschlag mit dem Code cli.usage.

Siehe auch

On this page