# agentic-dev

`agentic-dev`는 `say828`의 공개 `template-*` 레포를 설치하는 scaffold CLI다.

## 사용법

```bash
npx agentic-dev
```

또는 비대화형:

```bash
npx agentic-dev init my-app --template template-fullstack-mono --yes
npx agentic-dev init my-app --template template-web --yes --skip-bootstrap
```

## 동작

1. GitHub에서 공개 `say828/template-*` 레포 목록을 조회한다.
2. 사용자가 프로젝트 디렉터리와 템플릿 레포를 고른다.
   - interactive TTY에서는 템플릿 레포를 `↑/↓ + Enter`로 선택한다.
3. 모든 선택을 받은 뒤 실행 계획 요약을 보여주고 최종 확인을 받는다.
4. 확인 후에만 선택한 레포를 새 디렉터리로 복제한다.
5. `.env.example`이 있으면 `.env`를 자동 생성한다.
6. `pnpm install`을 자동 실행한다.
7. 템플릿의 `repo-contract.json`에서 `frontend.default_target`을 읽는다.
8. 그 target에 대해 `playwright install chromium`을 실행한다.
9. 그 target에 대해 parity bootstrap을 실행한다.

`frontend.default_target`이 있으면 multi-surface 템플릿도 그대로 지원한다. 예를 들어 `template-fullstack-mono`는 `client/web`과 `client/admin`을 함께 포함하지만 기본 bootstrap 대상은 `web`이다.

## 예시

```bash
mkdir my-fullstack-app
cd my-fullstack-app
npx agentic-dev init . --template template-fullstack-mono --yes
```

설치가 끝나면 CLI가 아래까지 자동 처리한다.

- `.env.example -> .env`
- `pnpm install`
- `pnpm --dir client/web exec playwright install chromium`
- `bash sdd/99_toolchain/01_automation/agentic-dev/bootstrap_frontend_parity.sh . web`

## 옵션

- `--template`, `-t`: template repo name 또는 suffix
- `--owner`: GitHub owner. 기본값 `say828`
- `--force`: 비어 있지 않은 디렉터리 허용
- `--yes`, `-y`: interactive prompt 생략
- `--skip-bootstrap`: install까지만 하고 bootstrap은 생략
- `--help`, `-h`: 도움말 출력
