Open6

AWSのエージェント型IDE「Kiro」を試す

kun432kun432

https://x.com/ajassy/status/1944785963663966633

Kiro は、開発者のソフトウェア開発方法を変革する可能性を秘めた、まったく新しいエージェント型 IDE です。

Kiro の特徴である 3 つの革新的な機能をご紹介します。

1 - Kiro は、仕様駆動開発を導入し、開発者が複雑な機能の意図を自然言語による仕様やアーキテクチャ図で明確に表現できるようにします。この包括的なコンテキストにより、Kiro の AI エージェントは、より少ない反復でより良い結果を提供できます。

2 - Kiro は、ドキュメントの生成、テストの記述、パフォーマンスの最適化など、重要だが時間のかかるタスクを自動的に処理するインテリジェントなエージェントフックを備えています。これらのフックは、ファイルの保存やコミットなどのイベントによってトリガーされ、バックグラウンドで動作します。これは、経験豊富な開発者が常に作業を確認し、遅延しがちなメンテナンスタスクを処理してくれるようなものです。

3 - Kiro は、開発者の作業方法に合わせて適応する専用インターフェースを提供します。チャットでのやり取りを好む場合でも、仕様書で作業する場合でも、Kiro はワークフローをサポートしながら、開発プロセスをコントロールし続けることができます。

Kiro は「バイブコーディング」に非常に優れていますが、その機能はそれだけではありません。他の AI コーディングアシスタントはプロトタイプの迅速な作成を支援しますが、Kiro は、成熟した構造化された開発プロセスを標準装備しており、プロトタイプを本番環境まで持ち込むことができます。これにより、開発者は boilerplate コードに費やす時間を減らし、最も重要な部分であるイノベーションと顧客が愛するソリューションの構築に集中できます。

本日より、Kiro はプレビュー期間中無料で利用可能となり、主要なプログラミング言語をサポートしています。

_今すぐ @kirodotdev で始めるには: https://kiro.dev/blog/introducing-kiro/?trk=590f3278-5a4b-4d35-ab93-c7f69fbfaea0&sc_channel=sm _

開発者がKiroをどのように活用するか、そして開発者コミュニティと協力してKiroをさらに進化させていくことを楽しみにしています。

kun432kun432

公式ブログ

https://aws.amazon.com/jp/blogs/news/introducing-kiro/

Dia による要約

ウチがめっちゃわかりやすく説明するね!

Kiroっていうのは、AIと一緒にアプリ開発できる新しいIDE(開発ツール)なんだよ。しかも、ただのAIチャットじゃなくて、プロトタイプ(試作品)から本番のシステムまで、ずーっとキミのそばでサポートしてくれる感じ。マジで頼れる相棒って感じだし!

ポイントまとめると、こんな感じだよ↓

  1. Kiroって何がすごいの?

    • 普通のAIコーディングツールって、プロンプト(指示文)を何回も入れて、動くアプリ作るのは楽しいけど、本番で使うにはちょっと不安なとこあるじゃん?
    • でもKiroは、「仕様(spec)」と「フック(hook)」 っていう機能で、ちゃんと要件や設計を整理しながら、抜け漏れなくアプリを作れるようにしてくれるんだよ。マジで安心感ハンパない!
  2. 仕様(spec)って何?

    • 例えば「レビュー機能つけたい!」ってプロンプト入れると、Kiroが「レビューを見る・書く・評価する」みたいなユーザーストーリーを自動で作ってくれるの。
    • しかも、どんな条件でOKか(受け入れ基準)も一緒に出してくれるから、曖昧なまま進まないし、AIもキミも迷子にならない!
    • 仕様はあとから更新もできるし、コードとちゃんと連動してるから、ドキュメントと実装がズレる心配もナシ!
  3. フック(hook)って何?

    • フックは、ファイル保存した時とか、API変えた時とかに、自動で「テスト更新しとくね!」とか「README直しとくよ!」ってやってくれる機能。
    • まるでベテランエンジニアが後ろで見てて、抜けてるとこ指摘してくれる感じ。ウケるくらい便利!
    • チームで使うと、みんな同じルールで品質チェックできるし、誰かが新しいコンポーネント作ったら自動でガイドラインに沿ってるかチェックもしてくれる!
  4. 開発の流れも超スムーズ

    • 仕様(spec)で要件を整理
    • その要件から設計(データフロー図とか、TypeScriptの型とか、API設計とか)を自動で作成
    • タスクも自動で分割して、順番に並べてくれるし、テストやアクセシビリティも忘れずに入れてくれる
    • 進捗も見やすいし、終わったタスクの履歴やコードの差分もすぐ見れる
  5. 他にもいろいろ!

    • AIチャットでコーディング相談できるし、VS Codeの設定やプラグインもそのまま使える
    • Mac、Windows、LinuxどれでもOK
    • プレビュー期間は無料で使えるし、GoogleやGitHubアカウントでサクッと始められる

まとめ

Kiroは、AIと一緒に「ちゃんとした」アプリを作りたい人にめっちゃオススメなIDEだし、仕様も設計もテストも自動でサポートしてくれるから、開発が超スムーズになるよ!ウチもこういうの使ったら、テンション上がるし、マジで開発サボれなくなりそう~!

kun432kun432

ドキュメントに従って、ダウンロード・インストール

https://kiro.dev/docs/getting-started/installation/

起動してみるとこんな感じ

ここからは、Getting Startedにある「Your first Project」に従って進めてみる。

https://kiro.dev/docs/getting-started/first-project/

新規プロジェクトでも既存プロジェクトでも良いみたいだけど、まずは何かしら既存のプロジェクトを使って試してみようと思う。なお、おそらくある程度一般的なプログラミング言語についてはどれでも学習されていると思われるが、以下の言語については環境構築やベストプラクティスなどのドキュメントが個別に用意されているので、特に強いのではないか?と思われる。

言語サポート

Kiro は、最も一般的なプログラミング言語をサポートしています。以下の言語の設定方法とベストプラクティスに関するガイドをご用意しています。

ということで、今回は以下の自分のプロジェクトを使ってやってみようと思う。小さめのプロジェクトなのでお試しに良いかということで。

https://github.com/kun432/static-embedding-japanese-fastapi

  • 日本語で高速・軽量なEmbeddingモデル「hotchpotch/static-embedding-japanese」をFastAPIでラップしてOpenAI互換APIにしただけのもの
  • タグを付けたらGitHub ActionsでDockerコンテナを自動作成するようになっている。
  • メインの言語はPython

このプロジェクトをKiroで開く

レポジトリURLを指定

クローンするローカルのディレクトリを指定

Kiroでクローンしたディレクトリを開く

開いた(実際はこの前に「ディレクトリのファイルを承認するか?」を聞かれるがスクショトリ忘れた)。で、左のゴーストアイコンがKiroのパネルを開くアイコンになっている。

軽くチャットしてみる。なお、モデルはClaude Sonnet 3.7と4.0が選べる模様。

こんな感じでいくつかのファイルを読み込んで解析してくれる。

kun432kun432

Steering

https://kiro.dev/docs/getting-started/first-project/#set-up-steering-files

Kiroの特徴的なのがこの「Steering」というもの。ドキュメントには以下とある。

Kiro は、Kiro の動作をガイドするプロジェクトステアリングドキュメントを .kiro/steering/ に生成します。これらのドキュメントには、以下の情報が含まれます。

  • 製品とその目的
  • 技術スタックとフレームワーク
  • プロジェクト構造と規約

ステアリング セクションの + ボタンをクリックしてカスタム ステアリング ファイルを作成し、コーディング基準、ワークフロー、チーム ベスト プラクティスなどを追加することもできます。

Cursor・Windsurf・Claude Codeなどで「ルール」や「コンテキスト」となるドキュメントを作成したりするけど、これをどうやらKiroが生成してくれるみたい。なるほど、「ステアリング」ということでプロジェクトの方向性や志向性などを決めるためのもの、ということなのだろう。

Steeringを作成するにはKiloパネルにある「Generate Steering Docs」をクリックする。

・・・のだが、何度かやってみたけど、エラーになる・・・まだプレビューだからしょうがないかなぁ・・・

中途半端にファイル作成したところでエラーになったりするので面倒・・・とりあえず「続けて」
で続けさせてみたら、一応できたっぽい?

完璧です!お客様の日本語埋め込み API プロジェクト向けに、3 つの包括的なステアリングドキュメントを正常に作成しました。

  1. product.md - 製品のビジョン、主な機能、およびユースケースを定義します。
  2. tech.md - テクノロジースタック、ツール、および一般的なコマンドを文書化します。
  3. standards.md - 開発基準、コーディング規約、およびベストプラクティスを確立します。

これらのステアリングルールは、今後このプロジェクトにおける開発作業を自動的にガイドし、以下の点において一貫性を確保します。

  • コードスタイルとPython 3.11+のベストプラクティス
  • FastAPIとMLモデル処理のパターン
  • pytestを使用したテストアプローチ
  • Dockerデプロイメント戦略
  • Gitワークフローとコミット基準

これらのルールは、ご要望の日本語埋め込みAPIに最適化されており、hotchpotch/static-embedding-japaneseモデルの使い方からuvパッケージ管理、Ruffコードフォーマットまでを網羅しています。プロジェクトが進化するにつれ、品質と一貫性を維持するのに役立ちます。

3つのSteeringファイルが作成されているのがわかる。中味までは説明しないけどそれぞれこんな感じ。

これらは 上にも書いたけど、.kiloの下に作成されている。

Steeringについての詳細は以下のドキュメントにある。

https://kiro.dev/docs/steering/

  • product.md / tech.md / standards.md はデフォルトで作成される。
  • 自分でカスタムなSteeringファイルを追加することもできる。
  • ファイルの先頭にメタデータでそのステアリングが「いつ読み込まれるべきものか?」を設定することができる。
  • その他ベストプラクティスいろいろ

ここは改めてまた読み返したい。