Steering

Steering은 워크스페이스의 규칙·관례·기술 선택을 마크다운 파일에 담아 Kiro가 매 세션마다 일관되게 참고하도록 만드는 영구적인 컨텍스트 시스템입니다.

Steering이 해결하는 문제

새 채팅을 시작할 때마다 "우리 팀은 이런 라이브러리를 쓰고, 폴더 구조는 이렇고, 테스트는 이렇게 작성한다"를 반복해서 설명하기는 번거롭습니다. Steering 파일을 두면 Kiro가 해당 규칙을 자동으로 읽어 들여 컴포넌트, API, 테스트 코드가 팀의 패턴에 맞게 생성됩니다.

Steering 파일의 적용 범위

  1. Workspace Steering — 프로젝트 루트의 .kiro/steering/에 두며 해당 워크스페이스에만 적용됩니다.
  2. Global Steering — 사용자 홈의 ~/.kiro/steering/에 두며 모든 워크스페이스에서 공유됩니다.
  3. Team Steering — MDM, 그룹 정책, 사내 저장소 등을 통해 ~/.kiro/steering으로 배포해 팀 전체에 동일한 규칙을 강제할 수 있습니다.
동일 항목에 대해 워크스페이스 설정이 글로벌 설정보다 우선합니다.

기본 제공 Foundation 파일

Steering 패널의 Generate Steering Docs 버튼이나 + → Foundation steering files를 누르면 다음 세 파일이 자동 생성됩니다. 세 파일은 기본적으로 모든 상호작용에 포함됩니다.

  1. product.md — 제품의 목적, 주요 사용자, 핵심 기능, 비즈니스 목표
  2. tech.md — 사용 중인 프레임워크·라이브러리·도구·기술적 제약
  3. structure.md — 폴더 구성, 명명 규칙, import 순서, 아키텍처 결정

커스텀 Steering 파일 만들기

  1. 좌측 Steering 패널을 엽니다.
  2. + 버튼을 클릭합니다.
  3. 워크스페이스용인지 글로벌용인지 범위를 고릅니다.
  4. api-standards.md처럼 의미가 분명한 파일명을 사용합니다.
  5. 마크다운으로 자연어 규칙을 작성합니다.
  6. 워크스페이스 파일이라면 Refine 기능으로 다듬을 수 있습니다.

AGENTS.md 지원

Kiro는 AGENTS.md 표준을 인식합니다. 워크스페이스 루트나 ~/.kiro/steering/에 두면 됩니다.

AGENTS.md는 inclusion mode를 지원하지 않으며 항상 포함됩니다.

Inclusion Mode

각 파일 최상단의 YAML front matter로 포함 방식을 지정합니다. front matter 앞에는 어떠한 빈 줄이나 다른 내용도 와서는 안 됩니다.

Always (기본값)

---
inclusion: always
---

워크스페이스 전반의 코딩 규칙, 보안 정책, 기술 선택 등 항상 적용해야 하는 내용에 적합합니다.

Conditional (fileMatch)

특정 파일을 다룰 때만 자동으로 끌어옵니다.

---
inclusion: fileMatch
fileMatchPattern: "components/**/*.tsx"
---

여러 패턴을 배열로 지정할 수도 있습니다.

---
inclusion: fileMatch
fileMatchPattern: ["**/*.ts", "**/*.tsx", "**/tsconfig.*.json"]
---

자주 쓰는 패턴: "*.tsx", "app/api/**/*", "**/*.test.*", "src/components/**/*", "*.md".

Manual

---
inclusion: manual
---

채팅에서 #steering-file-name으로 직접 참조하거나 / 슬래시 커맨드로 불러옵니다. 트러블슈팅 가이드처럼 가끔만 필요한 문서에 적합합니다.

Auto

---
inclusion: auto
name: api-design
description: REST API design patterns and conventions. Use when creating or modifying API endpoints.
---

Skills와 비슷한 방식으로 동작하며 Kiro가 사용자의 요청과 description을 매칭해 자동 포함 여부를 판단합니다.

워크스페이스 파일 참조

Steering 문서 안에서 실제 파일을 살아있는 형태로 인용하려면 다음 문법을 사용합니다.

#[[file:<relative_file_name>]]

예: #[[file:api/openapi.yaml]], #[[file:components/ui/button.tsx]], #[[file:.env.example]].

운영 팁

자주 만드는 Steering 파일