서론: "매번 똑같은 걸 설명하는 게 지겹다"
지난 글에서 다섯 가지 벽을 만들었다.
Git Hook, Claude Hook, ArchUnit, Gradle, 문서 자동 주입.
그런데 매번 반복되는 작업이 있었다:
- PR 올리면 Gemini가 리뷰 → 코멘트 읽기 → "나중에 봐야지" → 까먹음
- Jira 태스크 받음 → 브랜치 이름 뭐로 하지? → Todo 리스트 머릿속으로 정리 → 놓침
- 이슈 생김 → GitHub Issue 등록 → 또 Jira에 복붙 → 귀찮
문제는 "반복"이 아니라 "수동"이었다.
AI한테 매번 같은 걸 설명하는 건 비효율의 극치다.
그래서 커맨드를 만들었다.
1. Gemini 리뷰를 자동으로 처리하는 마법
문제 상황
gemini가 PR마다 리뷰를 달아준다:
사실 그전까지 깃허브의 코드 어시스턴트로 gemini 를 쓰면 리뷰를 공짜로 달아준대서 한번 써봤는데 이게 뭐 리뷰를 달아줘도
사실상 거의 보기도 힘들고 무쓸모라고 생각했었는데 절대 아니였다. 내가 단지 사용을 못했을뿐


뭐 보통 이런식으로 리뷰를 정말 고맙게도 달아주는데
- 코멘트가 많으면 우선순위 파악 불가
- 사람이 해준게 아니라 컴퓨터가 해줬다는 생각에 "나중에 봐야지" → 결국 안 봄
- 보기도 복잡함
- 어떤 걸 먼저 고쳐야 할지 판단 비용 발생
해결: /gemini-review 커맨드
# 현재 PR의 Gemini 리뷰 분석
/gemini-review
# 특정 PR 분석
/gemini-review 6
# Critical 항목만 자동 리팩토링
/gemini-review 6 --auto
실행 결과:


핵심 포인트
- 우선순위 자동 분류: Critical → Improvement → Suggestion
- 영향도 분석: "왜 이게 중요한가?" 자동 설명
- 실행 계획: 단계별로 뭘 먼저 할지 명확
- 시간 절약: 8개 코멘트 검토 5분 → 30초
Before:
[Gemini 코멘트 8개 읽기]
→ "어떤 게 중요한지 모르겠는데?"
→ "일단 나중에..."
→ 결국 안 함
After:
/gemini-review 6
→ "Critical 1개, 30분이면 끝나네"
→ 바로 수정
→ 품질 향상
2. Jira 태스크를 Todo 리스트로 변환
문제 상황
매 태스크마다:
- Jira 열어서 설명 읽기
- 브랜치 이름 뭐로 하지? 고민
- "뭘 먼저 해야 하지?" 머릿속 정리
- 작업 시작 → "아 이거 빠뜨렸네"
반복의 연속, 그리고 놓치는 것들.
해결: /jira-task 커맨드

Jira Task 내용:

생성된 Todo 리스트:

핵심 포인트
- Jira → Git 자동 연결: 브랜치 체크아웃까지 자동
- Acceptance Criteria → Todo: 요구사항을 작업 단위로 쪼갬
- 헥사고날 순서: Domain → Application → Adapter 순서로 정렬
- 놓치는 거 없음: 테스트까지 Todo에 포함
Before:
[Jira 열기]
→ "아 이거 뭐 만드는 거였지?"
→ 브랜치: git checkout -b feature/... 어? 이름 뭐로 하지?
→ "뭘 먼저 해야 하나" (머릿속 정리)
→ 작업 시작
→ "아 테스트 깜빡했다"
After:
/jira-task AAA-5
→ 브랜치 자동 체크아웃
→ Todo 8개 자동 생성
→ 순서대로 체크하며 작업
→ 놓치는 거 없음
3. 이슈 → 태스크 → 개선의 선순환
실제 워크플로우
[다른 프로젝트에서 claude-spring-standards 사용]
↓
"아 이 Hook이 없으면 불편한데?"
↓
GitHub Issue 생성
↓
/jira-task로 변환 (또는 직접 Jira에 등록)
↓
작업 → PR → Merge
↓
템플릿 업데이트
↓
다른 프로젝트에도 적용
결과:
- 현재까지 13개 이슈 처리
- 템플릿이 점점 고도화
- 내가 겪은 불편함 = 남도 겪을 불편함 → 공유
예시: "ArchUnit 테스트 실패 메시지 개선" 이슈
문제:
$ ./gradlew test
> Task :bootstrap:test FAILED
Architecture Violation [Priority: MEDIUM] - Rule violated
개선 후:
$ ./gradlew test
> Task :bootstrap:test FAILED
❌ DOMAIN VIOLATION
위치: domain/model/Upload.java:5
문제: org.springframework.stereotype.Component 사용 금지
Domain 레이어는 순수 Java만 사용해야 합니다.
Spring 의존성 제거 후 다시 시도하세요.
과정:
- 다른 프로젝트에서 불편함 발견
- GitHub Issue: "ArchUnit 에러 메시지가 불친절함"
- /jira-task 또는 직접 작업
- PR → Merge
- 템플릿 업데이트
- 13개 이슈 중 하나 완료
커맨드의 본질: "설명하지 말고 실행시켜라"
프롬프트 vs 커맨드
프롬프트:
"Gemini가 리뷰한 PR 6번의 코멘트를 분석해줘.
각 코멘트를 Critical/Improvement/Suggestion으로 분류하고,
우선순위와 예상 시간을 포함한 실행 계획을 만들어줘."
커맨드:
/gemini-review 6
언제 커맨드를 만들어야 하는가?
3회 이상 반복되는 작업이면 커맨드로 만들어라.
체크리스트:
- 매번 같은 프롬프트를 쓰고 있는가?
- 도구 사용 순서가 정해져 있는가? (Jira → Git → Todo)
- 출력 형식이 일정한가? (항상 표로, 항상 리스트로)
- 에러 처리가 필요한가? (Jira 없으면 어떻게?)
하나라도 Yes면 커맨드 후보.
claude-spring-standards의 커맨드들
템플릿에 포함된 실제 커맨드:
1. /gemini-review
- 위치: .claude/commands/gemini-review.md
- MCP: sequential-thinking (다단계 추론)
- 도구: Bash (gh CLI), Grep, Read, Write
2. /jira-task
- 위치: .claude/commands/jira-task.md
- MCP: atlassian, serena
- 도구: Bash (git), TodoWrite
커맨드 구조 예시
---
description: Jira 태스크 분석 및 TodoList 생성
tags: [project, gitignored]
---
# Jira Task Analysis
## 입력 형식
- Jira URL 또는 이슈 키
## 실행 단계
1. Cloud ID 확인
2. Jira 이슈 조회
3. Epic 정보 조회
4. Git 브랜치 체크아웃
5. Todo 리스트 생성
## MCP 도구 사용 순서
1. mcp__atlassian__getAccessibleAtlassianResources
2. mcp__atlassian__getJiraIssue
3. Bash (git checkout)
4. TodoWrite
## 에러 처리
- Cloud ID 없음 → URL에서 추출
- 이슈 없음 → 확인 요청
- 브랜치 충돌 → 전략 확인
실전 루틴: 하루 개발 워크플로우
Morning: 오늘 뭐 할지 확인
# 1. Jira에서 오늘 할 태스크 확인
/jira-task KAN-7
# 2. 브랜치 자동 체크아웃 + Todo 생성
✅ 브랜치 체크아웃 완료
⏳ 8개 작업 항목 생성됨
Coding: Todo 따라 작업
⏳ 2. Domain: UploadCommand 정의
→ 구현
→ ✅ 완료
⏳ 3. Application: UploadUseCase
→ 구현
→ ✅ 완료
...
Pre-Commit: Hook이 자동 검증
$ git commit -m "feat: Upload 기능 구현"
🔍 Validating domain/model/Upload.java
✅ 모든 검증 통과
[feature/KAN-7 abc1234] feat: Upload 기능 구현
PR 생성 후: Gemini 리뷰 자동 분석
# PR 생성
$ gh pr create
# Gemini가 리뷰 달면
/gemini-review 8
📊 리뷰 요약
- Critical: 0개
- Improvement: 2개
- Suggestion: 3개
→ Improvement 2개만 수정
→ 10분 소요
→ 완료
이슈 발견 시: 바로 템플릿 개선
# "이 에러 메시지 불친절한데?"
$ gh issue create --title "ArchUnit 에러 메시지 개선"
# 나중에 작업
/jira-task (또는 직접 작업)
# PR → Merge → 템플릿 업데이트
# 13개 이슈 중 +1
이런 흐름으로 개발 루틴을 완성하면 압도적인 효율성을 발휘할 수 있다.
'AI' 카테고리의 다른 글
| AI로 TDD로 돌리기 — Kent Beck의 CLAUDE를 보고 입맛대로 바꾸기 (0) | 2025.11.15 |
|---|---|
| CLAUDE 세션 고도화 하기 (0) | 2025.10.22 |
| 프롬프트가 아니라 프로세스 (Ⅱ): 컨텍스트 드리프트를 막는 다섯 가지 벽 (0) | 2025.10.05 |
| 프롬프트가 아니라 프로세스 (Ⅰ): 세션-프루프 개발 루틴 (0) | 2025.10.05 |
| Claude Code - 완벽한 개발 파트너로 만들어보기 (0) | 2025.10.05 |