AmazonがKiro IDEを2025年7月にリリースしました。開発者コミュニティが注目した理由は、Amazonが作ったからではありません。他のAIコーディングIDEにはない仕組みを持っているからです。コードを1行も書く前に、AIに「何を作るか」を構造的に理解させる仕組みです。
このガイドでは、Kiro IDEの主要機能をすべて解説します。ステアリングファイルの書き方、スペックが生成するもの、フックによるワークフロー自動化、そしてCursorやClaude Codeとの比較まで。実際に使える.kiro/steering/ファイルのサンプルも掲載しています。
Kiro IDEとは
Kiroは、Amazonが開発したAIネイティブのコーディングIDEです。現在はkiro.devから無料のパブリックプレビューとして提供されています。
基盤はVS Code(Code OSS)です。既存のVS Code設定、テーマ、拡張機能はそのまま引き継がれます。
知っておくべき基本情報
- Amazon Q Developerの後継:AWSはAmazon Q DeveloperをKiroに統合・移行しました
- プレビュー中は無料:プレビュー終了後の価格は未定
- オープンソース:github.com/kirodotdev/Kiroで公開中
Kiroのコア哲学は「スペック駆動開発」です。AIにコードを書かせる前に、何を作るかを定義する——ユーザーストーリー、データモデル、APIコントラクト。AIを受動的なアシスタントから、協調的な設計者へと変えるアプローチです。
3つの柱:スペック・ステアリング・フック
Kiroのアーキテクチャは3つの概念で成り立っています。
- スペック:コードを書く前に要件・設計・インターフェースを生成する構造化された機能計画
- ステアリングファイル:AIにプロジェクトの作法を記憶させる永続的なコンテキストファイル
- フック:ファイル変更をトリガーにしたイベント駆動の自動化
各要素が異なる問題を解決します。スペックは「何を作るか」のずれを防ぎます。ステアリングファイルはAIがプロジェクトの規約を忘れないようにします。フックはコード変更後の反復作業を自動化します。
ステアリングファイル:CLAUDE.mdに相当するもの
Claude Codeを使っているなら、CLAUDE.mdをご存知でしょう。プロジェクト内でのClaudeの振る舞いを定義するMarkdownファイルです。Kiroの相当機能がステアリングファイルです。
ファイルの場所と構造
ステアリングファイルは2箇所に配置できます。
.kiro/steering/:ワークスペーススコープ。Gitにコミットしてチームで共有~/.kiro/steering/:グローバルスコープ。全プロジェクトに適用
各ステアリングファイルはMarkdownファイルで、オプションでYAMLフロントマターを持ちます。フロントマターでKiroがファイルをAIのコンテキストに注入するタイミングを制御します。
インクルージョンモード
Kiroは4つのインクルージョンモードをサポートしています。
always(デフォルト):ワークスペース内のすべてのAIインタラクションにファイルの内容を注入します。コーディング規約、テスト要件、アーキテクチャ上の意思決定に使います。
fileMatch:指定したglobパターンに一致するファイルを操作しているときだけ注入されます。コードベースの特定部分にしか適用されないドメイン固有のルールに使います。
manual:プロンプト内で#ファイル名と明示的に参照したときだけ注入されます。必要なときだけ参照したいリファレンスドキュメントに使います。
auto:現在のタスクとの関連性をKiroが判断してインクルードするかどうか決めます。
実際に動くステアリングファイルのサンプル
コーディング規約を管理するステアリングファイルの例です。
---
inclusion: always
---
# プロジェクト規約
## スタック
- TypeScriptのstrictモードを使用
- Reactは関数コンポーネントのみ
- スタイリングはTailwind CSS(CSS Modulesは使わない)
- テストはVitest(Jestは使わない)
## ファイル規約
- コンポーネントは `src/components/[ComponentName]/index.tsx`
- テストはコンポーネントと並置: `src/components/[ComponentName]/index.test.tsx`
- 共有型は `src/types/` に集約(インラインの型宣言は禁止)
## コードルール
- `any` 型は使わない。`unknown` を使って型を絞り込む
- default exportよりnamed exportを優先
- 未処理のPromise拒否は禁止。エラーは明示的に処理する
- `../../../` 形式のインポートは禁止。`@/` パスエイリアスを使う
APIルートだけに適用するfileMatchステアリングファイルの例です。
---
inclusion: fileMatch
fileMatch: ["src/api/**/*.ts", "src/handlers/**/*.ts"]
---
# APIハンドラー規約
## バリデーション
- すべてのリクエストボディはZodスキーマでバリデーション
- スキーマは `src/api/schemas/` に集約(インライン定義は禁止)
## エラーレスポンス
`src/lib/errors.ts` の `ApiError` クラスを使う。
生のエラーメッセージをクライアントに返さない。
ワークスペーススコープとグローバルスコープ
.kiro/steering/内のステアリングファイルはリポジトリにコミットします。プロジェクト固有の規約を定義し、Kiroでプロジェクトを開くすべての開発者に共有されます。
~/.kiro/steering/内のグローバルステアリングファイルはすべてのプロジェクトに適用されます。個人設定——コメントスタイルの好みや言語習慣など——に使います。ワークスペースのルールより優先されることはありません。
AGENTS.md互換性
KiroはAGENTS.mdファイルをネイティブに読み込みます。リポジトリルートにAGENTS.md(AIエージェント指示のクロスツール標準)を置いている場合、Kiroはそれを自動的にalways-includeのステアリングファイルとして扱います。
Kiro固有のフォーマットへの変換も複製も不要です。ワークスペースルートまたは.kiro/steering/内に配置すれば、どちらでも機能します。
複数のAIコーディングツールを使うチームにとって重要なポイントです。リポジトリルートに1つのAGENTS.mdを置けば、Claude Code、Codex、GitHubCopilot、そしてKiro、4つのツールが同じ指示を受け取ります。1ファイルで4ツール対応です。
コミュニティが提供するステアリングファイルテンプレートやAGENTS.mdのサンプルはギャラリーで確認できます。
スペック:AIによる機能設計
スペックはKiroの最もユニークな機能です。新しい機能を作る際、コードを書く前に、何を作りたいかを自然言語で記述します。するとKiroが以下を生成します。
- EARS(Easy Approach to Requirements Syntax)記法によるユーザーストーリー
- アーキテクチャ上の意思決定を含む技術設計書
- Mermaid形式のデータフロー図
- データモデルのTypeScriptインターフェース
- 設計から導出されたデータベーススキーマ
スペックは.kiro/specs/[機能名]/に保存され、機能開発サイクル全体を通じてあなたとAIの共有成果物として機能します。
後でKiroに実装を依頼すると、AIはスペックを読んだうえでコードを書きます。「何が完成形か」を知った状態でコーディングが始まります。AIコーディングツールの最も一般的な失敗パターン——自信満々に間違ったものを作る——を防ぎます。
スペックとステアリングファイルは自然な組み合わせです。ステアリングファイルが「どう作るか」(規約・スタック・標準)を伝え、スペックが「何を作るか」(要件・設計・インターフェース)を伝えます。両方を組み合わせることで、意図と実装のギャップが大幅に縮まります。
フック:ワークフローの自動化
フックはファイルシステムイベント(保存・作成・削除)をトリガーにしたイベント駆動の自動化です。通常の開発フローにAIによるフォローアップアクションを付加できます。
実用的なフックの設定例です。
コンポーネントが変更されたときにテストを自動更新:
トリガー: src/components/**/*.tsx が保存されたとき
アクション: 対応するテストファイルを更新して変更されたpropsや動作を反映する
ルートが変更されたときにAPIドキュメントを再生成:
トリガー: src/api/**/*.ts が保存されたとき
アクション: src/docs/api/ を更新して変更されたエンドポイントやスキーマを反映する
フックはKiroのエージェント環境内で動作するため、他のファイルを読み込み、既存のテストを確認し、文脈に沿った変更を提案できます。シェルコマンドを実行するだけではありません。
KiroとCursorとClaude Code:比較表
| Kiro IDE | Cursor | Claude Code | |
|---|---|---|---|
| ベース | VS Code (Code OSS) | VS Codeフォーク | ターミナルCLI |
| ルールファイル | .kiro/steering/*.md | .cursor/rules/*.mdc | CLAUDE.md |
| AGENTS.md対応 | あり(ネイティブ) | 部分的 | あり(ネイティブ) |
| スペック/計画 | あり(コア機能) | なし | なし |
| フック | あり(イベント駆動) | なし | なし(手動) |
| MCP対応 | あり | あり | あり |
| 価格 | 無料(プレビュー) | $20/月(Pro) | 使用量課金 |
| 最適用途 | スペックファーストの機能開発 | チャット重視の編集 | ターミナルワークフロー |
最も重要な違いは機能の多寡ではなく、哲学の違いです。Cursorは既存コードへの高速な反復を最適化しています。Claude Codeはターミナルベースの自律タスクを最適化しています。Kiroはスペックから実装へのサイクルを最適化しています。計画を立ててから、完全な共有コンテキストを持って構築する流れです。
5分で始める
- kiro.devからKiroをダウンロードし、AWSアカウントでサインイン
- プロジェクトを開く——既存のVS Code設定と拡張機能が自動的に読み込まれます
.kiro/steering/project.mdを作成して主要な規約を記述する(上記のサンプルをコピーして始めましょう)- 新しいチャットを開き、作りたい機能を説明する。Kiroがスペック作成を提案したら承諾する
- 生成されたユーザーストーリーと設計を確認・調整してから、実装を依頼する
ステップ3で作成したステアリングファイルが、以降のすべてのやり取りを即座に改善します。AIはあなたのスタック、命名規約、テストアプローチを把握した状態から始めます。
よくある質問
Kiroのステアリングファイルとは何ですか?
ステアリングファイルはKiro IDEにおけるコンテキストファイルです。プロジェクトのコーディング規約、スタック、テスト方針などをMarkdown形式で記述し、.kiro/steering/ディレクトリに配置します。AIはチャットのたびにこのファイルを読み込むため、プロジェクトの作法を一貫して守ったコードを生成できます。
Kiro IDEはVS Codeの拡張機能ですか?
拡張機能ではなく、独立したIDEです。ただしVS Code(Code OSS)を基盤としているため、ほとんどのVS Code拡張機能はそのまま動作します。テーマやキーバインドの設定も引き継がれます。
AGENTS.mdがあればステアリングファイルは不要ですか?
どちらも有効な選択肢です。すでにAGENTS.mdを管理しているチームは、そのままKiroで使えます。Kiroはネイティブに読み込みます。ただし、Kiro固有の機能(スペックの設定、フックの定義、fileMatchによる条件付きルール)を活用したい場合は、ステアリングファイルを追加することで細かい制御ができます。
スペックは使わなければなりませんか?
いいえ、任意の機能です。ステアリングファイルとチャット機能だけを使ってCursorと同じように使うことができます。スペックは大きな機能を設計から始めたいときに特に効果的です。日常的な小さな修正やバグ修正では不要です。