こんにちは!しろみです!とても遅くなりましたが、アドベントカレンダー7日目はKiroについてを紹介していこうと思います。
Kiroとは
2025年 7月 15日(米国時間 7 月 14 日)に公開された AI IDE(統合開発環境)です。
公開された当時も様々な機能がありました。
そんなKiroですが、11月 18日(米国時間 11 月 17 日)に一般提供が開始されたというアナウンスがありました。また一般公開に伴い、7月に出た当初よりも多くの機能が追加されました。
Kiro が一般提供開始: IDE とターミナルでチームと共に開発
今回はそんなKiroの機能についてを書いていこうと思います。
Spec機能について
Kiroの機能の中で、よく紹介される機能として、Spec機能があります。
こちらのSpec機能を使用することによって、仕様駆動開発をKiroと共に実施していくことが可能となります。
仕様駆動開発とは
ざっくりと記載をしていくと、何かサービスを開発していく際に最初にどのようなサービスを開発していくかといった仕様を固めていき、それに沿うような流れで進める開発手法です。
Kiroでは、どのようなサービスを作成したいかをプロンプトに記載して実行をすることで仕様(要件)をドキュメントとして作成してくれます。
仕様を固めていくフェーズ
最初に仕様を固めていくフェーズについて記載していきます。
下記の例だと、Kiroに「ペンギンを紹介する掲示板を作成したい」というプロンプトを実行しました。
その際に要件ドキュメントを「requirements.md」というファイルにまとめてくれております。

requirements.mdの中身はこのようになっております。

Kiroの利用者は、こちらの中身を確認し問題がなければ画面の下のほうに表示されている、「Move to design phase」をクリックすることで次の設計を固めるフェーズに移っていきます。

詳細設計を固めていくフェーズ
次に詳細を固めていくフェーズについてを記載していきます。
こちらのフェーズに移る際に、Kiroはdesign.mdというファイルに詳細設計をドキュメントとして作成してくれます。
こちらの中身を確認し、問題が無ければ、「Move to implementation plan」をクリックし
次の実装タスクを固めていくフェーズに移ります。
実装タスクを固めていくフェーズ
設計を固めるタスクの箇所にて記載した「implementation(実装) plan」という文言の通り
こちらのフェーズではサービスを開発する中での機能実装をする際のやることをリスト化していくフェーズです。
Kiroは、tasks.mdの中に実装のためにやることをリストとしてまとめてくれます。
ただ、日本語では無く英語で記載がされています。

また実装についても2つの進め方があるとKiroは提案をくれております。
- Keep optional tasks(faster MVP)
- Make all tasks required(comprehensive from start)
ここでは後者の「 Make all tasks required(comprehensive from start)」を選択してみます。その結果掲示板作成に必要なタスクをすべて作成してくれる結果となりました。
実装を進めていく
tasks.mdの中身を見ていくと、実装に当たっての各セクションごとにタスクが分かれております。
各タスクの上部にある「Start task」をクリックすることで機能の実装をKiroと共に進めていくことが出来ます。
実際に押した後は、下記のようにどのように実装がされたかをKiroが教えてくれます。
実装した内容に問題がないかを確認し、「Accept all」を押すことで実装がされていきます。

ただ、現在のKiroでは下記の事をKiroに委ねている状態です。
- ドキュメントや回答をどの言語で作成・回答するか(現在は英語)
- プロジェクトや組織特有のルールをどのようにKiroに伝えていくか(例えばコーディング規約など)
例えばの話で、Kiroの利用者が日本人で英語が全く読めないといったケースでは現在の回答では困ってしまうという場面が出てくるかと思います。
また、組織によっては例えば変数名はスネークケース、関数名はキャメルケースでといったように
開発者がコードを書く中で可読性を高くするために、コーディングについてのルール(コーディング規約)が定められているというケースもあるかと思います。
そういったときにどのように解決をしていったらよいのでしょうか。
プロンプトにそのあたりの情報を記載するという手もあるかと思いますが、次に紹介するsteering機能を使用することで、解決していくことが出来ます。
steering機能とは
マークダウンファイル内にKiroに伝えたい情報を記載することで、Kiroに使用してほしい知識を与えることが出来る機能となります。
使用方法としては、「.kiro/steering/」配下に.mdという形式でマークダウンファイルを作成します。
---
inclusion: always
---
## 言語設定
- **コミュニケーション**: 回答は常に日本語で行う。
Always included (default)
yaml
---
inclusion: always
---
These files are loaded into every Kiro interaction automatically. Use this mode for core standards that should influence all code generation and suggestions. Examples include your technology stack, coding conventions, and fundamental architectural principles.
Best for: Workspace-wide standards, technology preferences, security policies, and coding conventions that apply universally.
https://kiro.dev/docs/steering/ より引用
inclusion: alwaysをつけて定義した内容についてはKiroに自動でリロードされるため永続的に使用ができるようです。
この設定を追加した状態でどのように回答や成果物が変わるかを確認してみたいと思います。
再度、プロジェクトを作成する流れで要件定義から確認していこうと思います。
「inclueding Steering Documents」と表示されているため、先ほど作成したSteeringファイルが読み込まれていることが確認できます。

下記は先ほど英語で記載されていたtasks.mdの中身です。英語で記載されていたところが日本語で記載されていることが確認できます。

最後に
ここまでで紹介した機能以外にも、何かイベントが発生した際に特定の処理を施す hook機能と呼ばれるものもあります。またMCPと連携することも可能です。
MCP連携については、別の記事で紹介していこうと思います。
ここまでご拝読をいただきありがとうございます。





