첫 프로젝트

Kiro의 핵심 기능인 Steering, Specs, Agent Hooks, MCP를 실제 프로젝트에서 한 번에 익혀 봅니다.

준비 사항

1. 프로젝트 열기

다음 세 가지 방법 중 편한 것을 선택해 프로젝트를 엽니다.

  1. 상단 메뉴에서 File > Open Folder 를 선택해 폴더를 지정합니다.
  2. 창에 폴더를 직접 드래그 앤 드롭합니다.
  3. 터미널에서 프로젝트 디렉터리로 이동한 뒤 kiro . 명령을 실행합니다.

프로젝트가 열리면 좌측 활동 표시줄(Activity Bar)의 Ghost 아이콘을 눌러 Kiro Panel을 띄우고, 채팅 창에서 에이전트와 대화를 시작할 수 있습니다.

2. Steering 문서로 컨텍스트 잡기

Steering 파일은 Kiro에게 "이 코드베이스가 어떤 것인지"를 미리 알려 주는 역할을 합니다. Kiro Panel의 Agent Steering 영역에서 Generate Steering Docs 버튼을 누르면, 에이전트가 package.json, README.md, vite.config.js 등을 훑어보고 .kiro/steering/ 디렉터리에 다음과 같은 문서를 자동 생성합니다.

특정 도메인 규칙(예: API 네이밍, 디자인 토큰)이 있다면 + 버튼으로 사용자 정의 Steering 파일을 추가해 두세요. 이후 모든 대화에서 자동으로 반영됩니다.

3. Specs로 기능 설계하기

Specs는 단순 채팅보다 한 단계 더 구조화된 작업 흐름을 제공합니다. Spec 버튼이나 Specs 섹션의 + 아이콘으로 새 Spec을 만들면, 다음 세 단계가 차례대로 생성됩니다.

  1. Requirements — 사용자 스토리를 EARS 표기법으로 정리한 requirements.md
  2. Design — 컴포넌트 구조와 데이터 흐름을 정리한 기술 설계 문서
  3. Tasks — 실제로 구현할 작업을 단위별로 나눈 tasks.md

예를 들어 "사용자 인증 시스템을 추가해 줘"라고 요청하면, Kiro는 회원 가입·로그인·세션 관리 같은 항목을 스스로 분해하여 위 세 문서를 만들어 줍니다. 각 Task는 실행 중에는 In Progress, 완료 시 Done으로 상태가 자동 갱신됩니다.

Spec Task 실행 데모
Spec의 Task를 실행하면 진행 상태가 실시간으로 업데이트됩니다.

4. Agent Hooks로 반복 작업 자동화

Agent Hooks는 특정 이벤트가 발생했을 때 에이전트가 자동으로 행동하도록 만드는 기능입니다. Kiro Panel의 Agent Hooks 섹션에서 + 버튼을 눌러 새 Hook을 만들 수 있습니다.

예를 들어 React 컴포넌트가 저장될 때마다 테스트 스니펫을 갱신하거나 i18n 키를 점검하도록 만들 수 있습니다.

Agent Hooks 생성 데모
Hook을 정의해 두면 저장 한 번으로 후속 작업이 자동 실행됩니다.

5. MCP로 외부 도구 연결

Model Context Protocol(MCP)을 이용하면 외부 API, 사내 지식 베이스, 데이터베이스 등을 에이전트가 직접 호출할 수 있습니다. Kiro에는 기본적으로 fetch MCP 서버가 포함되어 있으며, 처음에는 disabled=true 상태로 비활성화되어 있습니다.

{
  "mcpServers": {
    "web-search": {
      "command": "uvx",
      "args": ["mcp-server-brave-search"],
      "env": {
        "BRAVE_API_KEY": "your-api-key-here"
      },
      "disabled": false,
      "autoApprove": ["search"]
    }
  }
}

MCP는 다음 세 가지 방식으로 활용합니다.

  1. Direct Questions — "최신 React 18 베스트 프랙티스 알려 줘"처럼 자연스럽게 질문하면 에이전트가 알아서 도구를 호출합니다.
  2. Explicit Tool Usage#MCP 컨텍스트 제공자나 #[fetch] 같은 표기로 특정 도구를 명시적으로 부릅니다.
  3. Integration — Hooks·Specs와 결합해, 작업 흐름의 일부로 외부 데이터를 끌어옵니다.

API 키 같은 민감한 값은 환경 변수나 보안 저장소를 통해 주입하고, autoApprove는 신뢰할 수 있는 도구에만 지정하세요.

다음으로 해 볼 것