0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

KiroのSteeringについて整理してみた

0
Posted at

背景・目的

普段からKiroに触れる機会が多いのですが、あらためて基本的なことを理解したく整理します。

概要

steering

What is steering?

  • Steeringは、.kiro/steering/フォルダ内のマークダウンファイルを通じて、Kiroにプロジェクトに関する永続的な知識を提供する機能
  • 毎回の会話で規約を説明する代わりに、Steeringファイルによって確立されたパターン、ライブラリ、標準に一貫して従うことができる

Key benefits

  • 一貫したコード生成
    • すべてのコンポーネント、APIエンドポイント、テストがチームの確立されたパターンと規約に従う
  • 繰り返しの削減
    • 各会話でプロジェクト標準を説明する必要がない
  • チームの整合性
    • 新規開発者もベテラン開発者も同じ標準で作業
  • スケーラブルなプロジェクト知識
    • コードベースとともに成長するドキュメント

Steering file scope

Workspace steering

  • .kiro/steering/に配置し、特定のワークスペースにのみ適用

Global steering

  • ~/.kiro/steering/に配置し、すべてのワークスペースに適用
  • 競合する場合はワークスペースSteeringが優先

Team steering

  • グローバルSteering機能を使用して、MDMソリューションやグループポリシー経由でチーム全体に配布可能

Foundational steering files

基本的なSteeringファイルは、下記の通り

  • product.md
    • 製品の目的、ターゲットユーザー、主要機能
  • tech.md
    • フレームワーク、ライブラリ、開発ツール
  • structure.md
    • ファイル構成、命名規則、アーキテクチャ決定

Creating custom steering files

  • プロジェクト固有のニーズに合わせた専門的なガイダンスでKiroの理解を拡張できる
  1. .kiro/steering/に新しい.mdファイルを作成
  2. 説明的なファイル名を選択(例:api-standards.md)
  3. 標準的なマークダウン構文を使用してガイダンスを記述
  4. 自然言語で要件を記述

Steering with custom agents

  • カスタムエージェントを使用する場合、Steeringファイルは自動的には含まれない
  • Steeringコンテキストを読み込むには、エージェントのリソース設定に明示的に追加する必要がある
  • カスタムエージェントにすべてのSteeringファイルを含めるには、エージェント設定に以下を追加する
{
  "resources": ["file://.kiro/steering/**/*.md"]
}

AGENTS.md

  • 設定不要で常に読み込まれるシンプルなステアリング
  • AGENTS.mdファイルは以下の場所に追加でき、Kiroが自動的に読み込む
~/.kiro/steering/
  • 明示的な設定なしで常に読み込まれるため、プロジェクト全体で必ず適用したいディレクティブに適している

Best practices

  • Keep Files Focused

    • ファイルは1つのドメインに集中
    • API設計、テスト、デプロイメント手順など、1ファイル1ドメインで管理
    • 明確なファイル名を使用
  • Use Clear Names

    • 明確なファイル名を使用
      • api-rest-conventions.md - REST API標準
      • testing-unit-patterns.md - ユニットテストのアプローチ
      • components-form-validation.md - フォームコンポーネント標準
  • Include Context

    • コンテキストを含める
    • 標準が「何か」だけでなく、「なぜ」その決定がなされたかを説明
  • Provide Examples

    • 例を提供
    • コードスニペットやbefore/afterの比較を使用して標準を実証
  • Security First

    • APIキー、パスワード、機密データは絶対に含めない
    • Steeringファイルはコードベースの一部として扱う
  • Maintain Regularly

    • スプリント計画やアーキテクチャ変更時にレビュー
    • リストラクチャリング後はファイル参照をテスト
    • Steeringの変更はコード変更と同様に扱い、レビューを必須とする

Common steering file strategie

  • 一般的なSteeringファイル戦略
    • API標準 (api-standards.md)
      • REST規約、エラーレスポンス形式、認証フロー、バージョニング戦略
    • テストアプローチ (testing-standards.md)
      • ユニットテストパターン、統合テスト戦略、モッキング手法
    • コードスタイル (code-conventions.md)
      • 命名パターン、ファイル構成、インポート順序
    • セキュリティガイドライン (security-policies.md)
      • 認証要件、データ検証ルール、入力サニタイゼーション
    • デプロイメントプロセス (deployment-workflow.md)
      • ビルド手順、環境設定、CI/CDパイプライン詳細

考察

Steeringは指示書のようなもので、毎回コンテキストを伝え直す手間がなくなることと理解しました。
まずはproduct.md・tech.md・structure.mdの3ファイルから始めてみようと思います。次回はInclusion モードやAGENTS.mdとの使い分けも試してみようと思います。

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?