Skip to content
Apothem
CLI 참조

migrate-workspace

apothem migrate-workspace 명령에 대한 CLI 참조.

하니스별 레거시 워크스페이스를 공유 .apothem 레이아웃으로 마이그레이션합니다.

개요

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

migrate-workspace는 하니스별 레거시 데이터 홈(.apothem/<harness>/...)과 레거시 .plans/ 트리를 단일 공유 작업 디렉터리 .apothem/{plans,memory,learning,contexts}로 통합합니다. 기준 디렉터리는 제공된 경우 해석된 --project 루트이고, 그렇지 않으면 현재 작업 디렉터리(프로젝트 로컬 기본값)입니다.

하니스별 메모리, 컨텍스트, 학습 저장소는 id 기준으로 공유 저장소에 합집합 병합됩니다. 학습 신호는 이어 붙인 뒤 중복을 제거합니다. 충돌하는 레코드(같은 id, 다른 본문)는 건너뛰며 절대 덮어쓰지 않습니다. 레거시 .plans/ 트리는 .apothem/plans/ 아래로 이동합니다. 소비되는 모든 소스는 먼저 백업됩니다. 이 마이그레이션은 멱등적입니다. 이미 마이그레이션된 트리에서 다시 실행하면 아무 작업도 하지 않습니다.

옵션

옵션설명
--project PATH사용자 범위 구성 디렉터리가 아니라 프로젝트 트리에 머티리얼라이즈하는 프로젝트 범위 어댑터의 프로젝트 루트.
--dry-run레거시 레이아웃을 감지하고, 쓰지 않은 채 무엇이 마이그레이션될지 보고합니다.
--quiet, -q정보성 출력을 억제하고 오류만 내보냅니다.
--verbose, -v추가 진단 출력을 내보냅니다.
--format plain|json출력 형식(기본값: plain).
--json--format json의 단축형.
--no-color출력에서 ANSI 색상 코드를 비활성화합니다.
-h, --help도움말을 표시하고 종료합니다.

JSON 출력

--json 봉투는 마이그레이션 결과를 담습니다. 마이그레이션이 완료되면 status는 success이며, 페이로드는 병합된 레코드 수, .plans/ 트리의 재배치 여부, 백업 루트, 그리고 건너뛴 충돌을 보고합니다. --dry-run 호출은 대신 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": []
}

레거시 레이아웃이 없으면 migrated는 false이고 아무것도 쓰지 않습니다. --dry-run 봉투는 결과 수를 생략하고 감지 결과만 보고합니다.

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

예시

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

종료 코드

코드의미
0마이그레이션이 완료되었거나, 레거시 레이아웃을 찾지 못함(마이그레이션할 것이 없음)
1예상된 오류 — 검증 또는 프로젝트 루트 오류, 또는 마이그레이션 실패
64사용법 오류: 알 수 없는 옵션이나 명령, 또는 누락되었거나 잘못된 옵션 값. --json에서는 오류가 코드 cli.usage를 담은 JSON 봉투로 반환됩니다.

함께 보기

  • apothem install — 공유 프로필에서 하니스를 머티리얼라이즈합니다
  • apothem status — 설치, 검증, 드리프트 상태를 보고합니다
  • 플랜 규율 — 공유 .apothem/plans/ 레이아웃

On this page