← ClaudeAtlas

remove-worktreelisted

워크트리를 안전하게 제거하고 연결된 브랜치를 삭제합니다. 미완성 변경사항 경고 후 확인 받아 진행.
HyperAITeam/CLITrigger · ★ 8 · AI & Automation · score 81
Install: claude install-skill HyperAITeam/CLITrigger
# Remove Worktree 워크트리를 제거하고 연결된 브랜치를 정리합니다. ## Current context - Worktree list: `!git worktree list --porcelain` ## Instructions Follow these phases exactly, in order. Do NOT skip phases. --- ### Phase 1: 워크트리 선택 1. `git worktree list --porcelain`을 실행하여 모든 워크트리 정보를 파싱한다. - 각 워크트리 항목은 `worktree <path>`, `HEAD <hash>`, `branch refs/heads/<name>` 형태로 출력된다. - **main worktree** (현재 체크아웃된 주 저장소)는 목록에서 제외한다. 2. **`$ARGUMENTS`가 제공된 경우**: - 워크트리 경로 또는 브랜치명으로 매칭되는 항목을 찾는다. - 경로의 마지막 부분(디렉터리명)으로도 매칭을 시도한다. - 매칭되는 항목이 없으면 사용 가능한 워크트리 목록을 보여주고 중단한다. 3. **`$ARGUMENTS`가 없는 경우**: - 워크트리가 하나도 없으면 "제거할 워크트리가 없습니다."라고 알리고 중단한다. - 워크트리가 하나면 자동 선택한다. - 워크트리가 여러 개면 번호와 함께 목록을 보여주고 `AskUserQuestion`으로 선택 받는다. ``` 제거할 워크트리를 선택하세요: 1. feature/task-abc123 → .worktrees/feature-task-abc123 2. feature/task-xyz789 → .worktrees/feature-task-xyz789 ``` 4. 선택된 워크트리의 **경로**와 **브랜치명**을 확정한다. --- ### Phase 2: 안전 검사 1. `git -C <worktree-path> status --porcelain`을 실행한다. 2. **변경사항이 없으면**: Phase 3으로 바로 진행한다. 3. **미커밋 변경사항이 있으면**: - 변경된 파일 목록을 보여준다. - `AskUserQuestion`으로 확인을 받는다: > "워크트리 `<branch-name>`에 미커밋 변경사항이 있습니다. 강제로 제거하면 이 변경사항은 영구적으로 삭제됩니다. 계속하시겠습니까? (yes/no)" - "no" 또는 거부하면 중단하고 변경사항을 커밋하거나 스태시할 것을 안내한다. - "yes"면 강제 제거 플래그(`--force`)를 사용하기로 표시하고 Phase 3으로 진행한다. --- ### Phase 3: 워크트리 제거 1. 워크트리를 제거한다: - 변경사항 없음: `git worktree remove <worktree-path>` - 강제 제거: `git worktree remove --force <worktree-path>` 2. 명령이 실