Skip to content

Kiro란 · 왜 스펙 기반 개발인가 ​

목표 ​

Kiro가 무엇인지, Kiro를 떠받치는 unified agent harness(통합 에이전트 하네스) 구조를 이해하고, 왜 "스펙 기반 개발(Spec-driven Development)"이 중요한지 이해합니다.

Kiro란 무엇인가 ​

Kiro는 AI 에이전트와 대화하며 소프트웨어를 설계·구현·검증하는 개발 환경입니다.

용어이 페이지에서의 뜻
appIDE·CLI·Web·Mobile처럼 Kiro를 사용하는 화면이나 진입점
harness요청 처리와 도구 실행을 담당하는 공통 에이전트 런타임
Kiro Crewharness 위에 메모리·스케줄·여러 에이전트 조율을 더하는 오픈소스 오케스트레이션 레이어

단순한 코드 자동완성을 넘어, AI 에이전트가 요구사항 분석·설계·구현·자동화까지 소프트웨어 개발의 전 과정에 참여합니다.

핵심 특징 ​

  • 하나의 harness, 여러 app — 당신이 사용하는 IDE·CLI·Web·Mobile은 모두 공통의 unified agent harness(엔진) 를 소비하는 app(front door) 입니다. Kiro Crew는 그 harness 위에 올라가는 오케스트레이션 레이어입니다.
  • Code OSS(VS Code 오픈소스) 기반 — IDE는 Code OSS 기반이라 기존 VS Code 확장과 호환됩니다.
  • Q Developer 기술 계승·발전 — Amazon Q Developer의 에이전틱 기술(agent mode, MCP, steering, CLI)을 기반으로 발전시킨 standalone 제품입니다.

구조: unified agent harness와 app·Crew ​

Kiro의 핵심은 unified agent harness 하나입니다. harness는 에이전트 루프, 도구 실행, sub-agent 위임, 세션 관리, 설정 로딩, 권한 평가, LLM 공급자와의 통신을 담당하는 엔진이며, 코드 옆에서 독립 프로세스로 실행되고 ACP(Agent Client Protocol, JSON-RPC 2.0) 로 각 app과 통신합니다.

과거에는 IDE(TypeScript)·CLI(Rust)·Web(Python)이 각각 별도의 에이전트를 가졌지만, 지금은 하나의 harness로 통합되었습니다. harness에 기능이 추가되면 모든 app에 동시에 반영되고, 설정(Steering·Skills·Custom Agents 등)도 app이 아니라 harness를 중심으로 설정하므로 app을 옮겨도 환경이 그대로 따라옵니다.

구분역할성숙도·공개
unified agent harness에이전트 엔진. 모든 app이 공유하는 "제품"의 중심비공개(closed-source)
Kiro IDE데스크톱 코드 편집기 (Code OSS 기반, macOS/Windows/Linux). 로컬 개발의 홈 베이스GA
Kiro CLI터미널에서 자연어로 개발·운영. 스크립트·CI/CD 등 무인 실행 포함GA
Kiro Web브라우저 기반 클라우드 세션 컨트롤 플레인Preview
Kiro Mobile모바일에서 백그라운드 에이전트 확인·승인·조작Preview
Kiro Crewharness 위에 persistent memory·스케줄·멀티에이전트 오케스트레이션·보안을 더한 오픈소스 시스템 확장. 자체 app(web·Slack·desktop)을 가짐오픈소스(Apache 2.0)

💡 app과 engine, 그리고 Crew

IDE·CLI·Web·Mobile은 같은 harness를 소비하는 app입니다. 어느 것을 고르든 "같은 엔진으로 들어가는 다른 문"일 뿐, 세션은 노트북에서 시작해 클라우드에서 계속되고 휴대폰에서 확인할 수 있습니다. Crew는 app이라기보다 harness 위에 세워진 "집(house)"에 가깝습니다 — 일부 기능은 harness가 아니라 Crew 자체에 들어 있으며, 공식적으로도 향후 harness와 다시 정합을 맞출 계획이라고 밝히고 있습니다.

harness가 한 번의 요청을 어떤 순서로 처리하고, 각 기능이 그 흐름의 어디에 붙는지는 Kiro 동작 원리 — unified agent harness에서 자세히 다룹니다.

왜 스펙 기반 개발인가 ​

Vibe vs Spec — 두 가지 개발 방식 ​

Vibe (즉흥)Spec (체계)
방식대화하며 즉시 코드 생성요구사항→설계→구현 단계적 진행
장점빠른 프로토타이핑일관성·추적성·유지보수
적합아이디어 검증, 실험팀 프로젝트, 프로덕션 코드

Spec-Driven Development 흐름 ​

프롬프트 입력
  → Requirements (요구사항, EARS 형식)
    → Design (시스템 설계)
      → Tasks (구현 작업 분해)
        → 코드 생성

Kiro는 두 방식을 모두 지원하며, 상황에 따라 선택하거나 하이브리드로 결합할 수 있습니다:

  1. Vibe로 빠른 프로토타입 → 2. Spec으로 정식 개발

Spec 워크플로는 과거 IDE 전용이었으나 harness로 이동하면서 Web·CLI 등 다른 app에도 그대로 나타납니다. "한 번 만든 기능이 모든 app으로 이동"하는 통합 harness의 대표적 효과입니다.

핵심 기능 한눈에 ​

  • Vibe 세션 — 대화형 즉흥 개발
  • Spec 세션 — Requirements → Design → Tasks 기반 체계적 개발
  • Steering — 프로젝트 표준·가이드라인 자동 적용
  • Agent Hooks — 이벤트 기반 자동화 (파일 저장 시 검사 등)
  • MCP — 외부 도구·API 연동 (Model Context Protocol)
  • Plan 모드 — 실행 전 계획 미리보기·승인
  • Workflows — 재사용 가능한 멀티스텝 플랜을 백그라운드에서 실행

모델과 Auto 에이전트 ​

Kiro는 OpenAI·Anthropic 등 여러 공급자의 프런티어 모델과 open-weight 모델을 제공합니다. 기본값은 Auto 에이전트입니다.

  • Auto(기본) — 여러 프런티어 모델과 특화 모델을 조합하고 intent detection·캐싱 등 최적화 기법을 적용해 품질·지연·비용의 균형을 맞춥니다. 같은 작업을 상위 모델 단독으로 실행하면 Auto보다 크레딧을 더 소비합니다.
  • 모델 직접 선택 — Anthropic Claude(Sonnet·Opus 계열)와 OpenAI GPT 계열 등 최신 프런티어 모델을 직접 고를 수 있습니다. Free 티어도 Claude 계열과 open-weight 모델에 (한도 내에서) 접근할 수 있습니다.
  • 추론 설정 — CLI에서는 /model에서 모델 전환과 thinking·effort(추론 강도)를 함께 설정합니다.

모델 라인업과 가용 범위는 자주 바뀝니다. 최신 목록은 kiro.dev/docs/models와 모델 체인지로그에서 확인하세요.

✅ 핵심 요약

  • Kiro = 하나의 unified agent harness(엔진) 위에 IDE·CLI·Web·Mobile app과 Kiro Crew(harness 위 오케스트레이션 레이어)가 올라간 구조
  • harness는 비공개, Crew는 Apache 2.0 오픈소스. app은 ACP로 harness와 통신
  • 기본 에이전트는 Auto, Claude·GPT 등 최신 프런티어 모델을 직접 선택 가능
  • Vibe(빠름) + Spec(체계) 두 방식을 상황에 맞게 선택하고 하이브리드로 결합
  • Steering·Hooks·MCP·Workflows로 자동화와 확장