LogoSkills

/cc-bricks:create-project — 새 프로젝트 "처음부터 세팅" 자동 안내

cob(co-bricks) 기반 그린필드 프로젝트 초기 세팅 — 모노레포+feature 코드 스캐폴드(A)와 Firebase/GCP/iOS/Secrets 인프라 부트스트랩(B)을 한 흐름으로 안내합니다.

/cc-bricks:create-project — 새 프로젝트 "처음부터 세팅" 자동 안내#

항목내용
실행 명령/cc-bricks:create-project

coco-de/co-brickscob 도구(CLI + MCP)를 이용해, 빈 상태에서 모노레포 코드 골격Firebase/GCP/iOS/GitHub Secrets 인프라까지 초기 세팅을 한 번의 흐름으로 진행합니다.

한마디로#

새 가게를 열 때 ① 건물 골조·인테리어(코드 골격)를 세우고 → ② 전기·수도·인터넷(클라우드 인프라)을 연결하는 두 단계를, 미리 준비된 표준 설계도(cob 브릭)로 자동으로 처리해 주는 도우미입니다. "프로젝트 이름과 조직명 한 장"만 정하면, 폴더 구조·기능 뼈대·배포에 필요한 계정과 열쇠(Secrets)까지 순서대로 갖춰 줍니다.

누가·언제 쓰나요#

  • 완전히 새로운 프로젝트를 처음 만들 때 (그린필드)
  • 기존 kobic 스타일 표준 구조(Flutter + Serverpod + CoUI 모노레포)를 그대로 따라 시작하고 싶을 때
  • 여러 기능(feature)을 한 스펙(project.yaml)으로 한꺼번에 찍어내고 싶을 때

👉 이미 만들어진 프로젝트에 기능 하나만 추가하려면 이 커맨드가 아니라 cob compose(풀스택 feature 1개) 또는 각 feature-* 스킬을 쓰세요. 이 커맨드는 "프로젝트 자체를 처음 만드는" 진입점입니다.

무엇을 해주나요 (2단계)#

단계하는 일대표 명령
A. 코드 스캐폴드 그린필드 모노레포 + N개 feature 골격 생성, 라우트·melos 워크스페이스 자동 등록 cob create · cob generate -s project.yaml · cob create-from-config
B. 인프라 부트스트랩 Firebase 프로젝트/앱 → GCP 서비스계정 → flutterfire configure → SHA-1 → iOS App Store Connect 앱 → GitHub Actions Secrets 업로드 (7-stage) cob init

⚠️ 인프라(B)는 CLI 전용입니다. cob MCP는 코드 생성 계열(cob_create/cob_create_from_config 등)만 노출하며 init/firebase/gcp/ios/secrets는 노출하지 않습니다. 인프라 단계는 반드시 cob CLI로 진행하고, firebase/gcloud/gh/fastlane 로그인이 선행되어야 합니다.

어떻게 쓰나요#

# 대화형(권장): 이름·조직·feature 포함 여부를 프롬프트로 하나씩 확인
/cc-bricks:create-project

# 이름을 미리 지정 (그 외는 대화형/기본값)
/cc-bricks:create-project --name my_app

# 인프라 부트스트랩까지 이어서 진행
/cc-bricks:create-project --name my_app --with-infra

# 코드만 생성 (인프라는 나중에)
/cc-bricks:create-project --name my_app --code-only

# project.yaml 스펙으로 모노레포+features 일괄 생성
/cc-bricks:create-project --spec project.yaml

안에서 무슨 일이 벌어지나요 (실행 흐름)#

  1. 사전 점검(Gate 0)cob CLI 설치 여부 확인. 없으면 설치 안내 후 중단(degrade). 인프라 단계 선택 시 firebase/gcloud/gh/fastlane 로그인 상태도 함께 점검.
  2. 입력 정리 — 프로젝트명(snake_case)·조직·TLD·GitHub·백엔드(serverpod)·포함할 feature 목록을 수집. --spec 지정 시 project.yaml(spec v1)을 단일 진실원으로 사용.
  3. 코드 스캐폴드(A)cob create(대화형/단일 모노레포) 또는 cob generate -s project.yaml(모노레포 + N feature 합성)로 골격 생성. 라우트 등록·워크스페이스 갱신은 cob이 담당(brick post_gen 건너뜀).
  4. 검수 — 생성된 폴더/워크스페이스/라우트 등록 확인, melos bootstrap 등 빌드 준비.
  5. 인프라 부트스트랩(B, 선택)--with-infracob init 7-stage 실행 안내(각 스테이지는 실패해도 경고만 남기고 다음 진행, iOS 디렉토리 없으면 iOS 자동 스킵).
  6. 마무리 — 다음 단계(첫 feature는 cob compose, 개발 사이클은 /cc-dev:run) 안내.

⚙️ 상세 옵션·실행 명세 (개발자 / AI 에이전트용)

Triggers#

  • 그린필드 프로젝트를 처음 스캐폴딩할 때 (모노레포 부트스트랩)
  • project.yaml(spec v1) 한 장으로 모노레포 + N feature를 합성할 때
  • 신규 프로젝트의 클라우드/CI 인프라(Firebase/GCP/iOS/Secrets)를 초기화할 때

Options#

옵션설명기본값
--name <snake_case>프로젝트명 (non-interactive 시 필수)(대화형 프롬프트)
--spec <path>project.yaml(spec v1)로 모노레포 + features 일괄 생성 (cob generate -s)없음
--with-infra코드 생성 후 cob init(7-stage 인프라 부트스트랩)까지 진행off
--code-only코드 스캐폴드(A)만 수행, 인프라(B) 생략on
--config <name>저장된 설정으로 생성 (cob create-from-config -c <name>)없음
--output-dir <path>출력 디렉토리.
--dry-run실제 파일 생성 없이 계획만 출력 (cob generate --dry-run)off

Execution Contract#

Gate 0 — tooling degradation (throw 아님, degrade)#

command -v cob  > /dev/null || {
  echo  " ⚠️ cob 미설치 — 아래로 설치 후 재시도: " 
   echo  "    dart pub global activate --source git https://github.com/coco-de/co-bricks.git " 
   echo  '    echo  ' " ' " ' export PATH= " $PATH:$HOME/.pub-cache/bin " ' " ' " '   > >   ~/.zshrc  & &   source ~/.zshrc ' 
   exit 0   # 파이프라인 차단이 아닌 안내 후 중단
}

--with-infra 선택 시 추가 로그인 점검 (미로그인은 해당 스테이지만 스킵 가능):

CLI로그인사용 스테이지
firebasefirebase loginfirebase create/init/sha
gcloudgcloud auth logingcp service-account
ghgh auth loginsecrets push
fastlaneApp Store Connect API 키ios create

A. 코드 스캐폴드 — 3 경로#

입력명령비고
대화형/단일 모노레포cob create --type monorepo [--name … --no-interactive]미지정 옵션은 프롬프트 수집. --save-configprojects/<name>.json 저장 가능
project.yaml 스펙cob generate -s project.yaml [-o <dir>] [--dry-run] [--continue-on-error]create-from-config + N×compose를 래핑. 모노레포 + N feature 한 번에
저장된 설정cob create-from-config -c <name> [-o <dir>] [--auto-start]type: monorepo만 지원

cob create/generate는 brick pre_gen만 실행하고 post_gen은 건너뜀 — 라우트 등록·워크스페이스 pubspec 갱신은 cob이 직접 처리한다. 원샷 mason make / cob apply 경로는 단일 브릭 스캐폴딩용으로 별개.

B. 인프라 부트스트랩 — cob init 7-stage#

firebase create → gcp service-account → firebase init(configure)
  → firebase sha → ios create → secrets encode → secrets push

각 스테이지는 내부적으로 standalone 서브커맨드를 --env all(dev/stg/prod)로 호출. 스테이지 실패는 경고 후 다음 진행(중단 아님). 스킵 옵션: --skip-firebase/--skip-gcp/--skip-configure/--skip-sha/--skip-ios/--skip-secrets. iOS 디렉토리(app/<project>/ios) 없으면 iOS 자동 스킵.

산출물 (예시)#

< project > /                         # 모노레포 루트 (melos)
├── app/ < project > /                 # Flutter 앱
├── backend/ < project > _server/      # Serverpod 백엔드
├── feature/application/…          # 생성된 feature 모듈
├── melos.yaml / pubspec.yaml      # 워크스페이스 (cob이 등록)
└── .envrc                         # (인프라 시) Secrets base64 + App ID

다음 단계#

  • 첫 풀스택 feature 추가: cob compose -m feature.yaml (또는 각 feature-* 스킬)
  • 개발 사이클 자동화: /cc-dev:run "…" (이슈→브랜치→PR→머지)
  • 백엔드 코드 생성: melos run backend:pod:generate
  • skills/project-init/SKILL.md — project.yaml 스펙·cob 명령·MCP 상세 가이드
  • 플러그인 README → "Project Initialization (greenfield)" 섹션
  • cob MCP 등록: 플러그인 .mcp.json(opt-in) — create 계열만 노출