kdycicd — CI/CD 파이프라인 생성 스킬
트리거:
/kdycicd, "CI/CD 설정", "GitHub Actions", "배포 자동화"
목적
프로젝트 스택을 자동 감지하여 적절한 CI/CD 파이프라인(GitHub Actions)을 생성하는 스킬. 15개 프로젝트 분석에서 대부분이 CI/CD 미구축 상태로, E2E 테스트·빌드·배포가 수동으로 반복됨.
지원 스택
| 스택 | 감지 기준 | 생성 워크플로우 |
|---|---|---|
| Next.js + Vercel | next.config.* + vercel.json | build → test → deploy |
| Next.js + 일반 | next.config.* | build → test → preview |
| Spring Boot | build.gradle / pom.xml | build → test → WAR |
| Python + FastAPI | pyproject.toml / requirements.txt | lint → test → build |
| Capacitor 모바일 | capacitor.config.ts | build → cap sync → APK |
실행 흐름
Phase 1: 스택 감지
- 프로젝트 루트 파일 분석 (package.json, build.gradle, pyproject.toml)
- 프레임워크/런타임 버전 추출
- 테스트 프레임워크 감지 (Vitest, Playwright, JUnit, pytest)
- 배포 타겟 감지 (Vercel, Docker, WAR, EXE)
Phase 2: 워크플로우 생성
.github/workflows/디렉토리 확인/생성- 스택별 최적 워크플로우 YAML 생성:
# 예시: Next.js + Vercel
name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22
cache: npm
- run: npm ci
- run: npx tsc --noEmit
- run: npm run lint
- run: npm run test
- run: npm run build
Phase 3: 환경변수 안내
- 워크플로우에서 필요한 secrets 목록 생성
- GitHub Settings → Secrets 등록 절차 안내
.env.example→ secrets 매핑 표 제공
Phase 4: 선택 확장
- E2E 워크플로우: Playwright/Cypress CI 실행
- 크롤러 스케줄: cron 기반 데이터 수집 자동화
- 릴리스 워크플로우: 태그 기반 자동 릴리스 노트
- 코드 리뷰:
anthropics/claude-code-action연동
모드
/kdycicd— 스택 감지 + 기본 CI 워크플로우 생성/kdycicd e2e— E2E 테스트 워크플로우 추가/kdycicd deploy— 배포 워크플로우 생성/kdycicd cron— 스케줄 워크플로우 생성/kdycicd claude— claude-code-action PR 리뷰 워크플로우 추가
출력
## CI/CD 파이프라인 생성 완료
### 감지된 스택: Next.js 16 + TypeScript + Vitest + Playwright
### 배포 타겟: Vercel
### 생성된 워크플로우:
1. `.github/workflows/ci.yml` — 빌드/린트/테스트
2. `.github/workflows/e2e.yml` — Playwright E2E (선택)
3. `.github/workflows/deploy.yml` — Vercel 배포 (선택)
### 필요한 Secrets:
| Secret | 용도 | 설정 위치 |
|--------|------|----------|
| VERCEL_TOKEN | Vercel 배포 | vercel.com → Settings → Tokens |
| DATABASE_URL | DB 연결 | Supabase → Settings → Database |
Superpowers 연계
이 스킬 실행 중 아래 superpowers 원칙을 적용한다.
| 원칙 | 적용 시점 | 적용 방법 |
|---|---|---|
verification-before-completion | YAML 생성 후 | YAML 문법 검증, 참조 시크릿 존재 확인, 액션 버전 최신 확인 |
systematic-debugging | 워크플로우 실패 시 | 실패 단계 로그 추적, 환경·권한·의존성 순서 진단 |
주의사항
- 기존
.github/workflows/파일이 있으면 덮어쓰지 않고 병합 제안 - 내부망(폴넷) 프로젝트는 GitHub Actions 불가 → 로컬 스크립트 대안 제시
- secrets에 민감 정보 직접 기재하지 않음 (플레이스홀더만)