# 자동 계획 리뷰 (autoplan)

> CEO, 디자인, DX, 엔지니어링 리뷰 스킬을 디스크에서 읽어 순서대로 실행하고 6가지 원칙으로 중간 결정을 자동으로 내립니다.

- 카테고리: [작업 분해](https://www.myskills.tools/ko/categories/task-breakdown/)
- 출처: 커뮤니티 · Garry Tan
- 저장소: https://github.com/garrytan/gstack/tree/main/autoplan (commit ed10791 · v1.0.0)
- SKILL.md: https://github.com/garrytan/gstack/blob/main/autoplan/SKILL.md
- 설치 명령: `npx skills add garrytan/gstack --skill autoplan`
- 라이선스: MIT
- 호환 도구: Claude Code, Codex, Cursor, Copilot
- 권한: read-repo ✓, write-files ✓, shell ✓, network ✓
- 상태: 스캔 통과
- 규칙 스캔으로 모든 위험을 찾을 수는 없습니다. 설치 전에 이 스킬의 SKILL.md를 읽고 권한을 확인하세요.
- ⚠ PreToolUse 훅을 등록하고 텔레메트리를 기록하며, 외부 리뷰를 위해 계획을 Codex CLI로 보낼 수 있습니다.

## 핵심 규칙

자동 결정은 사용자의 답을 대신할 뿐 분석을 대신하지 않으며, 사용자의 방향을 바꾸는 User Challenge는 절대 자동 결정하지 않습니다.

## 실행 단계

1. **접수와 복원 지점** — 원래 계획을 백업하고 작업 계획을 초기화한 뒤 CLAUDE.md, TODOS.md, git 기록, 설계 문서를 읽어 UI와 DX 범위를 판단합니다.
2. **외부 리뷰 사전 점검** — Codex CLI 설치와 인증 여부를 확인하고, 쓸 수 없어도 Claude 적대적 리뷰는 실행하며 적용 범위를 기록합니다.
3. **순차 리뷰** — CEO → 디자인(UI가 있을 때) → DX(개발자 대상일 때) → 엔지니어링 순서를 엄격히 지키며, 자동 결정은 모두 감사 표에 기록합니다.
4. **최종 승인 관문** — 단계별 필수 산출물을 확인한 뒤 취향 결정과 User Challenge를 담은 한 페이지 요약을 보여 주고 승인, 수정, 거절을 받습니다.
5. **리뷰 로그 기록** — 승인 후 /ship 대시보드용으로 각 리뷰 결과와 적용 범위를 기록하고, 준비되면 /ship을 제안합니다.

## 권한 설명 (SKILL.md 기준)

| 기능 | 필요 여부 | 설명 |
|---|---|---|
| 파일 쓰기 | 일부 필요 | 계획 파일, .gstack/tmp/autoplan/의 리뷰 산출물, gstack 로그와 텔레메트리 디렉터리에 씁니다. |
| 명령 실행 | 필요 | allowed-tools에 Bash가 있으며 git, gh/glab, bun, gstack 보조 스크립트, Codex CLI를 실행합니다. |
| 네트워크 송신 | 필요 | allowed-tools에 WebSearch가 있고 외부 리뷰를 위해 Codex CLI를 호출할 수 있습니다. |

## SKILL.md 프런트매터(YAML)

```yaml
---
name: autoplan
preamble-tier: 3
version: 1.0.0
description: Auto-review pipeline — reads the full CEO, design, eng, and DX review skills from disk and runs them sequentially with auto-decisions using 6 decision principles. (gstack)
triggers:
  - run all reviews
  - automatic review pipeline
  - auto plan review
allowed-tools:
  - Bash
  - Read
  - Write
  - Edit
  - Glob
  - Grep
  - WebSearch
  - AskUserQuestion
hooks:
  PreToolUse:
    - matcher: "Read"
      hooks:
        - type: command
          command: "bash -c 'S=\"$HOME/.claude/skills/gstack/autoplan/bin/phase-publication-hook\"\nif [ -f \"$S\" ]; then exec bash \"$S\"; fi\nprintf '\\''%s\\n'\\'' '\\''{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"deny\",\"permissionDecisionReason\":\"Autoplan publication guard is unavailable. Restore the installed autoplan/bin/phase-publication-hook before continuing this skill.\"}}'\\'''"
          statusMessage: "Checking Autoplan phase publication..."
    - matcher: "Agent"
      hooks:
        - type: command
          command: "bash -c 'S=\"$HOME/.claude/skills/gstack/autoplan/bin/phase-publication-hook\"\nif [ -f \"$S\" ]; then exec bash \"$S\"; fi\nprintf '\\''%s\\n'\\'' '\\''{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"deny\",\"permissionDecisionReason\":\"Autoplan publication guard is unavailable. Restore the installed autoplan/bin/phase-publication-hook before continuing this skill.\"}}'\\'''"
          statusMessage: "Checking Autoplan phase publication..."
---
```

홈: https://www.myskills.tools/ko/ · URL: https://www.myskills.tools/ko/skills/autoplan/
