Claude Code는 코드부터 씁니다. Kiro는 코드 쓰기 전에 설계서부터 씁니다. 이 차이가 전부입니다.
핵심 요약
→ Kiro = AWS가 만든 Spec-Driven AI IDE, 2025년 중반 출시
→ 핵심 철학: 요구사항 → 설계 → 태스크 → 코드 순서 강제
→ 3대 차별화 기능: Specs(명세 자동 생성) / Hooks(이벤트 자동화) / Steering Files(지속 컨텍스트)
→ 모델: Amazon Bedrock 경유 Claude Sonnet 4.5/4.6 사용 (모델 선택 자유 없음)
→ 요금: Free(월 50 크레딧) / Pro $19 / Pro+ $40 / Power $200
→ Claude Code는 터미널 에이전트 — 지시 → 실행 직행, 중간 문서 없음
→ Kiro Hooks는 Cursor Rules와 달리 능동적 실행 — 파일 저장 시 테스트 자동 실행 등
→ AWS 네이티브 팀에 최적, Bedrock 모델 락인이 단점
실전 1 — Spec-Driven 개발이 뭔가
Cursor나 Claude Code는 "이 기능 만들어줘"라고 하면 바로 코드를 작성합니다. Kiro는 같은 요청에 코드 대신 명세서 3개를 먼저 만듭니다.
# Kiro의 Spec 3단계 워크플로우
1. requirements.md
→ 사용자 스토리 + EARS 표기법으로 작성된 기능 요구사항
예: "사용자가 로그인 버튼을 클릭하면 이메일/비밀번호 폼이 표시된다"
2. design.md
→ 기술 아키텍처, 컴포넌트 구조, API 설계
예: JWT 인증 플로우, DB 스키마, 엔드포인트 목록
3. tasks.md
→ 의존성 순서로 정렬된 구현 태스크 목록
예: [ ] DB 스키마 생성 → [ ] API 엔드포인트 구현 → [ ] 프론트엔드 연결
개발자가 각 단계를 검토하고 승인해야 다음 단계로 넘어갑니다. 코드는 tasks.md 승인 후에야 생성됩니다.
왜 이 방식이 나왔는가 "3일 동안 코드 짰는데 이게 아니었어요" 문제를 해결하기 위해서입니다. Claude Code나 Cursor로 빠르게 만들었는데 요구사항 자체가 잘못된 경우, 코드를 다 버리고 다시 짜야 합니다. Kiro는 코드 생성 전에 이 오해를 잡습니다.
tasks.md의 독립 태스크는 병렬 실행됩니다. 의존성 그래프를 분석해 순서 없는 태스크는 동시에 처리합니다.
실전 2 — Claude Code와 구조 비교
# Claude Code 워크플로우
개발자: "로그인 기능 만들어줘"
Claude Code: [파일 읽기] → [코드 작성] → [테스트 실행] → 완료
소요 시간: 빠름
산출물: 코드
# Kiro 워크플로우
개발자: "로그인 기능 만들어줘"
Kiro: requirements.md 생성 → 개발자 검토/승인
→ design.md 생성 → 개발자 검토/승인
→ tasks.md 생성 → 개발자 검토/승인
→ 코드 생성 → 완료
소요 시간: 느림
산출물: 명세서 3개 + 코드
항목 Claude Code Kiro
| 접근 방식 | 지시 → 즉시 실행 | 명세 → 검토 → 실행 |
| 인터페이스 | 터미널 | IDE (VS Code 기반) |
| 모델 | Anthropic 직접 | Bedrock 경유 Claude |
| 지속 컨텍스트 | CLAUDE.md | Steering Files |
| 자동화 | 없음 (수동 지시) | Hooks (이벤트 기반) |
| 모델 선택 | 자유 | Bedrock 종속 |
| 신규 기능 개발 | 보통 | 강점 |
| 기존 코드 수정 | 강점 | 보통 |
실전 3 — Hooks와 Steering Files 실전
Kiro의 핵심 차별화는 Hooks입니다. Cursor Rules가 "이렇게 해줘"라는 수동 가이드라인이라면, Kiro Hooks는 이벤트 발생 시 자동으로 실행됩니다.
# .kiro/hooks/test-on-save.yaml
# 파일 저장 시 자동으로 테스트 실행
name: auto-test
trigger: file_save
pattern: "src/**/*.ts"
action: |
저장된 파일과 관련된 테스트를 실행하고
실패한 테스트가 있으면 원인을 분석해서 수정 제안해줘
# .kiro/hooks/doc-update.yaml
# 함수 변경 시 자동으로 JSDoc 업데이트
name: update-docs
trigger: post_tool_use
tool: write_file
pattern: "src/**/*.ts"
action: |
변경된 함수의 JSDoc 주석을 최신 구현에 맞게 업데이트해줘
# .kiro/hooks/protect-schema.yaml
# DB 스키마 파일 변경 차단 (Pre-hook)
name: protect-db-schema
trigger: pre_tool_use
tool: write_file
pattern: "prisma/schema.prisma"
action: |
이 파일은 DBA 승인 없이 수정 불가합니다.
변경이 필요하면 migration 요청서를 먼저 작성해주세요.
Steering Files는 프로젝트 전반에 적용되는 지속 컨텍스트입니다. CLAUDE.md와 유사하지만 Kiro 전 세션에 자동 적용됩니다.
# .kiro/steering/tech-stack.md
## 기술 스택
- Frontend: React 18 + TypeScript
- Backend: FastAPI + PostgreSQL
- 인증: JWT (만료 24시간)
## 코딩 컨벤션
- 함수명: camelCase
- 컴포넌트명: PascalCase
- 에러 처리: 반드시 try-catch + 로깅
- 테스트: 각 함수마다 유닛 테스트 필수
실전 4 — 언제 Kiro, 언제 Claude Code
✅ Kiro가 나은 상황
- 신규 기능 개발 (요구사항 명확히 정의 필요)
- 팀 단위 작업 (명세서가 커뮤니케이션 도구)
- AWS 네이티브 스택 (Bedrock, CodeCatalyst 연동)
- 코딩 표준 강제 필요한 조직 (Hooks로 자동 검수)
- 기술 부채 남기기 싫은 그린필드 프로젝트
✅ Claude Code가 나은 상황
- 기존 코드 수정·리팩토링 (브라운필드)
- 빠른 프로토타입 (스펙 단계가 오버헤드)
- 모델 유연성 필요 (Opus 4.8, Haiku 등 태스크별 선택)
- AWS 이외 클라우드 환경
- 대규모 리팩토링 (Dynamic Workflows 활용)
비용 비교:
Kiro Pro: $19/월 (1,000 에이전트 인터랙션)
Claude Code: Max 플랜 $100/월 (사용량 기반)
→ 소규모 팀/개인: Kiro Pro가 예측 가능한 비용
→ 헤비 유저/대규모 에이전트 작업: Claude Code Max
마무리
✅ Kiro의 핵심은 코드가 아닌 명세서가 소스 오브 트루스라는 철학입니다.
✅ Hooks는 이벤트 기반 자동화 — Cursor Rules보다 능동적이고 강력합니다.
✅ AWS 네이티브 팀, 신규 기능 개발, 팀 코딩 표준 강제가 필요하면 Kiro가 유리합니다.
❌ Bedrock 모델 락인 — 모델 선택 자유 없고 AWS 외 환경엔 불편합니다.
❌ 기존 코드 수정이나 빠른 프로토타이핑엔 Claude Code가 훨씬 빠릅니다.
'AI 개발' 카테고리의 다른 글
| Snowflake Cortex Code 완전 가이드 1편 — 데이터 팀을 위한 네이티브 AI 코딩 에이전트 (0) | 2026.06.02 |
|---|---|
| Gemini CLI vs Claude Code 완전 비교 — $0 무료 vs $20, 그리고 6월 18일 이후엔 뭐가 달라지나 (0) | 2026.06.02 |
| AI 코딩 도구 6파전 — Cursor, Copilot, Claude Code, Windsurf, Kiro, Cline 완전 비교 (0) | 2026.06.01 |
| 로컬 코딩 에이전트 구축 — Qwen3-Coder + OpenCode 완전 설정 가이드 (0) | 2026.05.29 |
| LiteLLM Load Balancing 2편 — 폴백 전략과 장애 대응 완전 가이드 (0) | 2026.05.26 |