ttutak 뚝딱

"개발해줘" 한마디면 PRD, 설계, 구현, 리뷰, 테스트, PR까지 뚝딱. 말하면 만들어주는 Claude Code 개발 자동화 플러그인

GitHub 릴리스 노트

개요

ttutak은 Claude Code 위에서 동작하는 개발 자동화 플러그인입니다. 9개 스킬, 9개 에이전트가 협업하여 자연어 요청 하나로 전체 개발 사이클을 수행합니다.

자연어 의도 파싱
명령어 없이 자연어로 의도를 전달하면 적절한 스킬과 모드가 자동 발동됩니다.
에이전트 팀 협업
PO, 설계자, 개발자, QA, 보안 감사자 등 9개 에이전트가 역할별로 협업합니다.
단계별 승인
PRD, 설계, 구현 계획 — 각 단계에서 사용자 승인 없이 다음으로 넘어가지 않습니다.
안전장치 내장
PR 머지 차단, force push 차단, 민감 파일 감지 등 다중 안전장치가 내장되어 있습니다.

안전장치

항목설명
PR 머지 차단gh pr merge 실행을 설정 수준에서 차단. 머지는 사람이 직접 수행
Force Push 차단git push --force 차단
보호 브랜치main에서 직접 커밋 차단. 작업 브랜치를 먼저 생성
민감 파일 감지.env, *.key, *.pem, credentials*, *secret* 커밋 전 경고
빌드 아티팩트build/, node_modules/ 등 tracked 시 .gitignore 보강 제안
단계별 승인PRD, 설계, 구현 계획 — 사용자 승인 없이 진행하지 않음
Mechanical Gate빌드/테스트 통과 후에만 QA 리뷰 진행

9개 스킬

스킬 핵심 역할 에이전트 모드
setup GH 인증, 웹훅 설정 오케스트레이터 직접
context 도메인 지식 등록/갱신 오케스트레이터 직접 스캔, 신규, 문서기반, 갱신, 동기화
dev PRD → 설계 → 구현 → 리뷰 → PR 9개 에이전트 팀 normal, hotfix, 단일단계, 재개
lens 코드에서 비즈니스 정책 추출 Explore + architect + security-auditor 요약, 상세, 영향도분석
research 웹 검색/문서 분석 기반 리서치 오케스트레이터 직접 종합리포트, 비교표, 핵심요약
humanizer AI 글쓰기 패턴 감지/교정 오케스트레이터 직접 audit, rewrite
test 도메인별 단위/통합/E2E 테스트 자동 작성 coder --type, --coverage
commit 브랜치 타입 파싱 + 한국어 커밋 오케스트레이터 직접
pull-request 커밋 히스토리 분석 + PR 생성 오케스트레이터 직접

setup — 초기 설정

플러그인 설치 후 최초 1회 실행합니다. 필수 도구(gh CLI)와 GitHub 인증을 확인하고, Slack 웹훅을 연동합니다.

/ttutak:setup

설정 항목

항목설명필수
gh CLIGitHub CLI 설치 및 인증 확인필수
GitHub 인증gh auth login 인증 상태 확인필수
Slack 웹훅PR 생성 시 팀 알림 전송선택

context — 도메인 지식 관리

기획서, 요구사항 문서, 코드베이스를 분석하여 도메인 지식을 등록합니다.

5가지 모드 자동 판단

조건모드동작
context/ 없음스캔패키지 구조, 엔티티, API 분석 → 도메인 자동 생성
도메인명 지정신규Q&A 5개 질문으로 도메인 생성
--from <파일>문서 기반PDF/이미지/텍스트 분석 → context 생성
기존 도메인갱신변경 제안 → 사용자 확인 후 반영
--sync동기화git log + PR 분석 → status.md 갱신

생성되는 문서 구조

context/{도메인}/
├── README.md          ← 도메인 개요 (배경, 문제, 사용자, 성공기준, 담당자)
├── PROJECTS.md        ← 관련 GHE 레포 매핑
├── glossary.md        ← 도메인 용어 사전
├── architecture.md    ← 전체 구조 요약 + 주제 문서 링크
├── status.md          ← 구현 추적 (AC별 ✅/⬜)
└── {주제}/README.md   ← 주제별 상세 정책/설계

답변 품질 게이트

context는 모호한 답변을 허용하지 않습니다. "많다", "자주" 대신 정량 수치를 요구하고, "효율화", "개선" 같은 추상어가 나오면 구체화를 요청합니다. 그래도 모르는 항목은 ❓로 남기고 진행합니다.

dev — 전체 개발 파이프라인

자연어 요청 하나로 PRD 작성부터 PR 생성까지 전체 사이클을 수행합니다. 자연어를 분석하여 모드를 자동 결정합니다.

자연어 의도 파싱

감지 패턴모드예시
상태, 진행, 어디까지STATUS"지금 어디까지 됐어?"
이어서, 계속, 재개RESUME"아까 하던 작업 이어서 해줘"
긴급, 핫픽스, 급한HOTFIX"로그인 버그 긴급 수정해줘"
설계만, PRD만, 구현만단일 Phase"설계만 해줘"
위 어디에도 해당 안 됨NORMAL"로그인 기능 추가해줘"

7단계 파이프라인

정상 경로 (Normal)

Setup
환경 준비
Requirements
PRD Q&A
Design
기술 설계
Implement
구현 + 자기점검
Review
QA + 보안 감사
Test
테스트 작성
Complete
커밋 / PR

긴급 경로 (Hotfix)

Setup
환경 준비
Requirements
경량 PRD
Implement
구현 + 자기점검
Complete
커밋 / PR

각 Phase 상세

Phase 1: Setup

  1. 진행 중 작업 감지 (.dev/state.md) — 이전 작업 있으면 재개 여부 확인
  2. Git 저장소 확인
  3. 베이스 브랜치 결정 + 동기화 (git pull)
  4. 프로젝트 정보 수집 (5개 작업 병렬)
    • 프로젝트 타입 감지 (build.gradle.kts → java-spring 등)
    • 디렉토리 구조 수집
    • CLAUDE.md 컨벤션 확보
    • 도메인 컨텍스트 매칭 (context/*/PROJECTS.md)
    • 외부 규격 참조 탐색 (references/ → REFERENCES 변수)
  5. 관련 코드 맵 생성 — 키워드 추출 → Grep → 핵심 파일 15개 이내
  6. 작업 브랜치 생성 + .gitignore 보강 + 상태 초기화

Phase 2: Requirements — PRD Q&A

  1. product-owner 에이전트 호출 (PRD 작성)
  2. PRD 전문 표시 + 3관점 품질 자가 검증
    • 유저 경험 검증: 사용자가 자연스럽게 이해하고 행동할 수 있는가
    • 해석 여지 제거: "크게", "적절히" 대신 구체적 수치가 있는가
    • 엣지케이스 커버리지: 빈 상태, 로딩, 에러, 최솟값/최댓값
  3. 질문 → AskUserQuestion 변환 → 답변 반영 — 최대 1회
  4. 사용자 승인 (승인 / 수정 요청) → .dev/prd.md 저장

Phase 3: Design — 설계 Q&A

  1. architect 에이전트 호출 (기술 설계)
  2. 설계 초안 전문 표시
  3. 설계 비판 검토 (중형/대형만)
    • design-critic이 암묵적 가정 도전, 과잉 설계 식별
    • MUST-ADDRESS → architect 설계 수정
    • CONSIDER → 참고 사항으로 기록
  4. 사용자 승인 (최대 2회 반복) → .dev/design.md 저장

Phase 4: Implement — 구현 + 자기점검

  1. 구현 계획 제시 (변경 파일, 유형, 배치 테이블) → 사용자 승인
  2. 의존성 분석 → 배치 구성
    • 파일 배타적 잠금: 같은 파일을 수정하는 단계는 같은 배치에 넣지 않음
    • import/참조 의존: 신규 타입을 참조하면 순차 배치
    • 위상 정렬로 B1 → B2 → B3 배치 배정
  3. 배치별 coder 디스패치 (병렬 실행)
    • 단일 배치+단일 단계: 기존 전체 모드 coder 호출
    • 배치 내 2개 이상: 동시 coder Task 발행 (각 coder는 담당 파일만 수정)
    • 배치 간 통합 빌드 검증 → 실패 시 원인 coder 특정 후 수정 재호출
  4. 자기점검 (qa-manager)
    • Critical → coder 자동 수정 (1회)
    • Warning/Info → phase-review로 이월
    • QUESTION → phase-review로 이월

Phase 5: Review — QA + 보안 감사

  1. Mechanical Gate
    • 빌드 실패 → coder 자동 수정 → 1회 재시도
    • 테스트 실패 → coder 자동 수정 → 1회 재시도
  2. qa-manager + security-auditor 병렬 호출
    • QA: 코드 리뷰 + 스펙 충족 검증
    • 종합 검증: PRD + 설계서 + diff 교차 검증
  3. 결과 합산 → Trust Ledger 생성 → Critical 자동 수정 — 최대 2회

Phase 6: Complete

  1. 인수 검증 (product-owner) — PRD 수용 기준 대비 검증
  2. /commit 스킬 실행 — 빌드 체크 + 한국어 커밋
  3. /pull-request 스킬 실행 — PR 본문 + Trust Ledger 요약
  4. 도메인 status.md 갱신 + context 환류 제안

정체 감지 + 에스컬레이션

구현/리뷰 단계에서 진전이 없으면 자동으로 전문 에이전트에게 에스컬레이션합니다.

감지 패턴상황1차 대응2차 대응
SPINNING동일 에러 2회 연속hacker에 제약 우회 분석researcher에 근본 원인 분석
OSCILLATION접근법 A→B→A 왕복architect에 설계 재검토사용자에게 두 접근법 제시
NO_DRIFT코드 변경 없이 반복hacker에 우회 경로 요청researcher에 코드베이스 탐색
DIMINISHING_RETURNS수정 줄고 결과 안 나옴simplifier에 범위 축소사용자에게 방향 전환 확인

상태 저장과 재개

.dev/state.md에 현재 진행 상태를 기록합니다. "이어서 해줘"라고 말하면 중단된 Phase의 중단된 Step부터 정확히 재개합니다. 배치 실행 중 중단되면 완료된 배치는 건너뛰고 다음 배치부터 재개합니다.

# .dev/state.md 예시
phase: implement
status: in_progress
branch: JIRA-123
base: main
current-step: "coder 구현 (B2)"
phases:
  setup: completed
  requirements: completed
  design: completed
  implement: in_progress
steps:
  implement:
    - 구현 계획 승인: completed
    - 배치 구성: completed
    - coder 구현 (B1, 2단계 병렬): completed
    - 빌드 검증 (B1): completed
    - coder 구현 (B2, 1단계): in_progress

9개 에이전트 팀

dev 스킬의 핵심은 역할이 분리된 에이전트 팀이 협업하는 구조입니다.

에이전트관점역할모델활동 Phase
product-owner"뭘 만들지"PRD 작성, 인수 검증Sonnetrequirements, complete
architect"어떻게 만들지"기술 설계Opusdesign
design-critic"이 가정이 맞나"암묵적 가정 도전Opusdesign (중형 이상)
coder"만든다"코드 구현 + 수정Opusimplement, review
qa-manager"스펙대로 됐나"코드 리뷰, 스펙 검증Sonnetimplement, review
security-auditor"뭘 놓쳤나"정책/보안 교차 검증Sonnetreview
researcher"이해한다"코드베이스 조사Sonnet(독립 호출)
hacker"다른 길이 있다"제약 우회, 정체 탈출Sonnet(정체 감지 시)
simplifier"더 작게 만들자"복잡도 제거Sonnet(정체 감지 시)

모델 라우팅 원칙

모든 에이전트가 같은 모델을 쓰지 않습니다. 작업 특성에 따라 모델을 배정합니다.

Opus 비용 높음, 추론 깊음
비판적 분석 (가정 도전, 설계 비판), 구조적 설계 (기술 설계, 아키텍처), 코드 구현 (복잡한 코드 생성)
Sonnet 비용 효율
산출물 생성 (PRD, 리뷰), 정체 탈출 (빠른 판단), 단순 검증 (코드 리뷰, 스펙 체크)

컨텍스트 슬라이싱

에이전트에게 모든 정보를 전달하면 토큰 낭비입니다. 역할별로 필요한 섹션만 슬라이싱합니다.

에이전트받는 정보받지 않는 정보
product-owner (PRD)ARGS + 코드 맵 + 프로젝트 구조설계서, diff
architect (설계)PRD 전체 + 코드 맵 + 컨벤션diff
coder (구현)설계서 전체 + 코드 맵PRD (설계서에 반영됨)
coder (배치 모드)담당 단계 설계만 + 담당 파일 목록 + 코드 맵설계서 전체, PRD
qa-manager (자기점검)PRD 요구사항+수용기준만설계서, 배경
security-auditorPRD + 설계서 + diff + 코드 맵(전체 접근)

references/ — 외부 규격 참조

프로젝트가 준수해야 할 외부 규격/표준(시큐어코딩 가이드, API 설계 표준, eGovFrame 규칙 등)을 references/ 디렉토리에 넣어두면 dev 파이프라인이 자동으로 참조합니다.

사용법

# 프로젝트 루트에 references/ 디렉토리 생성 후 규격 문서 배치
references/
├── 시큐어코딩-가이드.md
├── API-설계-표준.md
└── eGovFrame/
    └── 규칙.md

파이프라인 연동

Phase에이전트동작
Setup오케스트레이터references/ 탐색 → 파일 목록 + 한줄 설명으로 REFERENCES 변수 생성
Designarchitect관련 규격을 Read하여 설계서에 "준수 규격" 섹션 추가
Implementcoder규격을 준수하며 구현 (전체/배치/hotfix 모드)
Reviewqa-manager규격 위반을 CERTAIN으로 보고 → 자동 수정 대상
Reviewsecurity-auditor보안 관련 규격 항목을 감사에 포함

핵심 설계

경량 참조
프롬프트에는 파일 목록 + 한줄 설명만 포함합니다. 에이전트가 필요 시 Read로 원문을 직접 읽습니다.
없으면 투명
references/ 디렉토리가 없으면 REFERENCES 변수는 빈 상태. 에이전트 프롬프트에 포함되지 않아 토큰 소모가 없습니다.
사용자 관리
스킬이 references/를 생성하지 않습니다. 사용자가 직접 규격 문서를 관리합니다.

권장 작성 팁

기존 문서를 그대로 넣어도 동작합니다. 아래 팁을 따르면 에이전트가 더 효과적으로 참조합니다.

효과예시
문서 상단에 요약/목차에이전트가 전체를 읽지 않고 필요한 부분만 탐색# 시큐어코딩 가이드 아래 목차 나열
항목별 번호/ID설계서에서 "§3.2 입력값 검증 반영" 식으로 정확히 참조§3.2 입력값 검증, R-001
체크리스트 형태QA가 항목별로 준수 여부를 검증- [ ] SQL 파라미터 바인딩 필수

lens — 비즈니스 정책 탐지

코드에서 비즈니스 정책을 찾아 PO/PD가 읽을 수 있는 보고서로 출력합니다. 읽기 전용 — 코드를 수정하지 않습니다.

페르소나: 기술 번역자

코드를 읽되, 출력은 비즈니스 언어로 번역합니다.
PurchaseLimitPolicy → "구매 한도 정책 (PurchaseLimitPolicy)"
코드 변경을 제안하지 않습니다. 확인이 필요한 사항만 안내합니다.

5단계 Phase

  1. Prepare — 쿼리 키워드 추출 → 프로젝트 확정
  2. Explore: Agent(Explore)로 코드에서 정책 구현 발견
    • 1단계: 후보 수집 (Glob + Grep, Read 없이)
    • 2단계: 입구 추적 (Controller/Handler Read)
    • 3단계: 핵심 파일 정독 (Service/Policy/Rule Read)
  3. Report — "대상에게 무슨 일이 일어나는가" 관점으로 합성
  4. (선택) Impact — architect + security-auditor 병렬 분석
  5. (선택) Impact-Report — PO 친화적 영향도 보고서

research — 도메인 리서치

웹 검색과 문서 분석을 병행하여 출처가 명확한 조사 결과를 산출합니다. /context --from으로 결과를 context 문서에 반영할 수 있습니다.

3가지 결과물 형태

종합 리포트
요약 → 주요 발견 → 상세 분석 → 출처. 주제를 깊이 있게 조사할 때 사용합니다.
비교표
비교 기준 표 → 각 항목 요약 → 판단 근거. 기술/도구 선택지를 비교할 때 유용합니다.
핵심 요약
한 줄 결론 → 핵심 포인트 3-5개 → 출처. 빠르게 핵심만 파악할 때 사용합니다.

4단계 워크플로우

  1. 인터뷰 — 주제, 결과물 형태, 조사 깊이를 확인 (인자로 지정 시 스킵)
  2. 검색 실행 — 키워드 도출 → WebSearch → URL 선별 → WebFetch로 내용 수집
  3. 검증 + 보강 — 목표 충족, 완성도, 정확성, 균형 4기준 자기검증. 부족 시 1회 보강
  4. 결과물 생성 — 선택한 형태로 .research/에 저장

조사 깊이

모드키워드URL특징
꼼꼼하게5개최대 10개다수 소스 교차 검증
빠르게 핵심만3개최대 5개핵심 소스만 빠르게

context 연동

/research 결제 시스템 트렌드
→ .research/결제-시스템-트렌드-20260316.md 생성

/context 결제 --from .research/결제-시스템-트렌드-20260316.md
→ context/결제/ 문서에 리서치 결과 반영

수칙

원칙설명
출처 필수모든 발견에 URL 또는 문서 출처를 명시한다
구체적 데이터"일반적으로", "대부분" 대신 구체적 수치를 찾는다
교차 검증단일 출처의 주장은 다른 출처로 확인한다 (꼼꼼 모드)
실패 투명성찾지 못한 정보는 ❓로 남기고 명시한다

humanizer — AI 글쓰기 교정

AI가 생성한 텍스트에서 40+가지 패턴을 감지하고 교정합니다. Wikipedia의 "Signs of AI writing" 가이드와 한국어 AI 글쓰기 패턴 연구를 기반으로 합니다.

두 가지 모드

audit 모드
패턴을 감지하고 리포트만 출력합니다. 텍스트를 수정하지 않습니다. 어디가 문제인지 확인만 하고 싶을 때 사용합니다.
rewrite 모드
패턴을 감지하고 직접 교정합니다. AI 흔적을 제거한 최종본이 필요할 때 사용합니다.

심각도 분류

심각도설명처리
P1확실한 AI 흔적 — 사람이 거의 쓰지 않는 패턴즉시 수정
P2의심스러운 패턴 — AI가 자주 쓰지만 사람도 가끔 사용맥락 판단
P3스타일 개선 — 글 품질 향상 차원선택적 수정

40+ 감지 패턴

한국어 P1 — 즉시 수정

코드패턴감지 키워드
K1도입부 상투어"오늘날", "알아보겠습니다", "이번 글에서는"
K2과장 수식어"혁신적인", "체계적인", "다양한"(과용), "탁월한"
K3회피 어미"~라고 할 수 있습니다", "~해도 과언이 아닙니다"
K4"이를 통해" 연쇄"이를 통해", "이를 바탕으로", "이를 활용하여"
K5무의미한 중요성"중요성은 아무리 강조해도", "핵심적인 역할"
K10결론부 상투어"결론적으로", "발전이 기대됩니다"
K11대화형 흔적"도움이 되셨길", "좋은 질문입니다!"

한국어 P2 — 맥락 판단

코드패턴감지 키워드
K6범위 확장 과용"~뿐만 아니라 ~도"
K7자문자답"그렇다면 왜 ~일까요?"
K8셋 법칙"첫째... 둘째... 셋째..." (억지 3개 묶음)
K9격식체 과용"~에 있어서"
K12의미 없는 접속부사"또한"(과용), "더불어", "나아가"
K13장단점 대칭"장점으로는... 단점으로는..."
K14이중 피동"~되어지다"

영어 P1 — 즉시 수정

코드패턴감지 키워드
E1중요성 과장testament, pivotal, evolving landscape
E4홍보성 언어groundbreaking, robust, seamless, leverage
E7AI 빈출 어휘Additionally, delve, tapestry, interplay
E13대화형 잔류물"Great question!", "Let's dive in"
E18불필요한 요약"In summary", "As we've seen"

공통 패턴

코드패턴
C1동의어 순환 — 같은 대상을 계속 다른 단어로 바꿔 부름
C2지식 한계 면책 — "정확한 정보는 확인이 필요합니다"
C3긍정적 결론 — "밝은 미래가 기대됩니다"
C4요청하지 않은 이모지 장식
C5균일한 문단 길이 — 모든 문단 3-4문장
C6강제 3단 구조 — 짧은 글에도 도입-본론-결론

콘텐츠 유형별 적용

유형적용 기준숨결 주입
블로그/에세이모든 패턴 적용O — 의견, 1인칭, 개성
기술 문서수식어/filler 제거X — 정확하고 건조하게
마케팅/카피과장 줄이되 설득력 유지제한적
학술/리포트정확성과 출처 중심X — 객관적 톤

교정 예시

ttutak 소스코드를 기반으로 "시스템 구성 설명서"를 AI가 작성했을 때의 교정 전/후 비교입니다.

Before — AI 초안

시스템 개요 (AI 초안)
ttutak은 혁신적인 AI 기반 개발 자동화 플러그인으로, 다양한 개발 단계를 체계적으로 자동화하는 효과적인 솔루션입니다. 이를 통해 PRD 작성부터 PR 생성까지 전체 개발 사이클을 효율적으로 수행할 수 있습니다. 뿐만 아니라 9개의 전문화된 AI 에이전트가 유기적으로 협업하여 탁월한 코드 품질을 보장합니다. 이를 바탕으로 개발 생산성을 획기적으로 향상시킬 수 있으며, 이는 현대 소프트웨어 개발에 있어서 혁신적인 변화를 가져올 것입니다.

감지 결과: P1 18건 P2 9건 P3 5건 — 총 32건

감지 리포트 (주요 항목)

#심각도패턴원문제안
1P1K2 과장 수식어"혁신적인" x2, "체계적으로", "효과적인", "탁월한", "획기적으로"전부 삭제 또는 수치로 대체
2P1K4 연쇄"이를 통해", "이를 바탕으로" 연속주어를 바꿔 연결
3P1K6+C3"뿐만 아니라" + "변화를 가져올 것입니다"범위 확장 삭제 + 실측 데이터로 교체
4P1K9 격식체"현대 소프트웨어 개발에 있어서"삭제
5P2E12 볼드 과용12개 단어에 볼드 처리강조할 것만 남기기

After — humanizer 교정

시스템 개요 (교정 후)
ttutak은 Claude Code 플러그인입니다. /dev 로그인 기능 추가해줘 한 줄이면 PRD 작성 → 기술 설계 → 코드 구현 → QA 검증 → 커밋 → PR 생성을 알아서 수행합니다. 내부에서 PO, 설계자, 개발자, QA, 보안 감사자 5개 역할의 에이전트가 단계별로 넘기며 작업합니다. Spring Boot + Vue/Nuxt 풀스택 프로젝트 기준으로 만들었고, 빌드 명령만 맞으면 다른 스택에서도 사용할 수 있습니다.

핵심 차이

구분BeforeAfter
수식어"혁신적인", "탁월한", "획기적으로" 등 12회0회 — 전부 삭제
인과 연결"이를 통해", "이를 바탕으로" 연쇄"한 줄이면", "알아서 돌린다" — 구어체 직결
결론"혁신적인 변화를 가져올 것입니다"삭제. 기능 나열로 충분
격식체 + 과장 ("있어서", "뿐만 아니라")건조한 설명문 ("만들었고", "쓸 수 있다")
정보 밀도수식어가 내용보다 많음2문장에 기능·구조·대상 스택 모두 포함

test — 테스트 자동 작성

도메인별로 단위/통합/E2E 테스트를 자동 작성합니다. 기존 테스트의 구조와 코딩 스타일을 분석하여 동일한 패턴으로 생성하며, 커버리지 목표를 검증합니다.

사용 예시

"테스트 작성해줘"                              ← 변경 코드 기반 자동 감지
"appointment 도메인 테스트 추가해줘"             ← 특정 도메인 지정
"단위 테스트만 작성해줘 --type unit"             ← 유형 선택
"커버리지 90% 목표로 테스트해줘 --coverage 90"   ← 커버리지 목표

테스트 유형별 생성 위치 (예시)

유형위치 패턴 (테스트 루트 하위 상대 경로)검증 대상
단위domain/{도메인}/{Entity}Test엔티티, VO, 도메인 서비스
통합domain/{도메인}/{Service}IntegrationTest서비스 계층, 리포지토리, 캐시
E2Einterfaces.api/{도메인}/{Controller}E2ETestAPI 엔드포인트, 인증/인가

실행 흐름

  1. 환경 감지 — 프로젝트 타입, 테스트 프레임워크, 기존 테스트 구조/스타일 분석
  2. 대상 도메인 결정 — dev 컨텍스트(PRD/AC) 또는 변경 파일 기반 자동 감지
  3. 테스트 계획 수립 — 기존 커버리지 분석 → 누락 테스트 도출 → 사용자 승인
  4. 테스트 작성 — 단위 → 통합 → E2E 순서로 coder 에이전트가 작성
  5. 실행 및 검증 — 테스트 실행 + 실패 시 자동 수정(1회) + 커버리지 확인
dev 파이프라인에서는 커밋 전에 자동 호출됩니다. hotfix 모드에서는 건너뜁니다.

commit / pull-request

commit — 커밋 자동화

  1. 사전 확인 — Git 저장소 + 변경사항 + 빌드 실행
  2. 타입 파싱 — 브랜치명에서 추출 (feat/login → feat)
  3. 커밋 메시지 생성 — {type}: 한국어 요약 (50자 이내) + 본문
  4. 커밋 실행
    • 빌드 아티팩트 tracking 해제 (build/, node_modules/)
    • 민감 파일 감지 (.env, *.key, *.pem, credentials*, *secret*) → 경고
    • 20개 초과 변경 → 전체 스테이징 확인
    • HEREDOC 포맷으로 커밋
  5. context 동기화 체크

pull-request — PR 자동화

  1. 사전 확인 — gh CLI + 인증 + origin remote + 베이스 브랜치
  2. 타입 매핑 — feat→FEATURE, fix→BUGFIX, docs→DOCS ...
  3. PR 제목 — [{TYPE}] 서술형 한국어 문장 (50자 이내)
  4. PR 본문 (문장형 서술)
    • Background: 왜 이 변경이 필요한가
    • Summary: 무엇을 했는가
    • Changes: 기능 단위로 무엇이 바뀌었는가
    • Checklist: 변경 내용에 따라 동적 생성
  5. PR 생성 + Slack 알림