Kiro CLI v2.10.0の新機能、Config Hot-ReloadとResource Inheritance Controlを試してみた

Kiro CLI v2.10.0の新機能、Config Hot-ReloadとResource Inheritance Controlを試してみた

Kiro CLI v2.10.0で追加されたMCP/エージェント設定のHot-Reload機能と、カスタムエージェントのデフォルトリソース継承制御設定を実際に検証しました
2026.06.28

はじめに

Kiro CLI v2.10.0が2026年6月26日にリリースされました。今回のアップデートでは以下の2機能が追加されています。

機能 概要
MCP and Agent Config Hot-Reload MCP/エージェント設定ファイルの変更がセッション再起動なしで反映される
Custom Agent Resource Inheritance カスタムエージェントへのデフォルトリソース継承を制御可能に

v2.9以前では、mcp.json やエージェント設定を変更した場合、セッションを終了して再起動する必要がありました。また、v2.7.0以降のカスタムエージェントではデフォルトでsteering、skills、AGENTS.mdを継承する仕様でしたが、これを制御する手段がありませんでした。

本記事では、これら2機能を実際に試して動作を確認します。

https://kiro.dev/changelog/cli/2-10/

検証環境

  • Kiro CLI v2.10.0
  • OS: Fedora Linux Asahi Remix 43 (Apple Silicon)

MCP/エージェント設定のHot-Reload

公式ドキュメントの説明

公式ドキュメントによると、Hot-Reloadでは設定ファイルの変更がセッション再起動なしで反映されます。MCP設定については、以下の仕様が説明されています。

  • ファイルウォッチャーが .kiro/agents ディレクトリと mcp.json ファイルを監視する
  • 変更があったサーバーのみ再起動される(未変更のサーバーは継続動作)
  • JSONキーや環境変数の順序変更は変更として扱われない(不要な再起動が発生しない)
  • /mcp add でセッション中に追加したサーバーも、reconciliation時に再マージされる
  • セッション再起動不要、会話コンテキストも保持される

https://kiro.dev/docs/cli/mcp/configuration/#hot-reload

やってみた

MCPサーバーが0個の状態でセッションを開始し、セッション中に mcp.json を操作してHot-Reloadの動作を確認しました。

サーバーの追加

セッション起動時の状態です。MCPサーバーは何も設定されていません。

/mcp list · 0 configured

No MCP servers configured

設定修正時のHot-Reload動作も確認するため、AWS認証情報を参照するための環境変数(HOME, AWS_PROFILE)を明示しない状態で ~/.kiro/settings/mcp.json を作成し、AWS MCPサーバーを追加しました。

{
  "mcpServers": {
    "aws-mcp": {
      "command": "uvx",
      "args": ["mcp-proxy-for-aws@latest", "https://aws-mcp.us-east-1.api.aws/mcp", "--metadata", "AWS_REGION=ap-northeast-1"]
    }
  }
}

ファイルを保存後、Kiroセッション側(再起動していない)で /mcp を確認しました。サーバーを検知し、ロードが開始されていました。

/mcp list · 1 configured

Configured Servers
Name          Status          Details
aws-mcp       ◌ loading       0 tools

ただし、この時点では HOMEAWS_PROFILEenv に明示しておらず、サーバーは failed 状態になりました。

aws-mcp       ✗ failed        JSON-RPC error: -32602: Invalid request parameters("")

設定修正の反映

mcp.jsonenv フィールドを追加して上書き保存しました。

{
  "mcpServers": {
    "aws-mcp": {
      "command": "uvx",
      "args": ["mcp-proxy-for-aws@latest", "https://aws-mcp.us-east-1.api.aws/mcp", "--metadata", "AWS_REGION=ap-northeast-1"],
      "env": {
        "HOME": "${HOME}",
        "AWS_PROFILE": "default"
      }
    }
  }
}

セッションを再起動せず /mcp を確認すると、サーバーが再起動され接続に成功していました。

/mcp list · 1 configured

Configured Servers
Name          Status          Details
aws-mcp       ● running       10 tools

設定ファイルの差分(env の追加)が検知され、サーバーが再起動された結果です。

動作確認

追加したAWS MCPでドキュメント検索を実行し、ツールが実際に動作することを確認しました。

> AWS Lambdaのレイヤー機能についてドキュメントを検索して

● aws___search_documentation
    ╰ search_phrase=AWS Lambda layers, topics=reference_documentation, general, limit=5

検索結果としてLambdaレイヤーの公式ドキュメントやブログ記事のURLが返却され、正常に動作しました。

サーバーの削除

最後に、mcp.json からサーバー定義を削除しました。

{
  "mcpServers": {}
}

保存後、セッション側でサーバーが停止されました。

/mcp list · 0 configured

No MCP servers configured

全操作を通じてセッションの再起動は一度も行っておらず、直前の会話履歴もそのまま残っていました。

エージェント設定のHot-Reload

MCPサーバーだけでなく、エージェント定義ファイル内の prompt 変更もセッション中に反映されることを確認しました。test-minimal エージェントのpromptを書き換えて検証しました。

英語応答に変更:

~/.kiro/agents/test-minimal.jsonprompt を「すべての回答を英語で行ってください。」に変更して保存しました。

> テスト

This is a test response in English, as instructed by the agent prompt.

日本語応答に戻す:

同じファイルの prompt を「質問に簡潔に答えてください。」に変更して保存しました。

> テスト

テストを受け取りました。何かお手伝いできることはありますか?

いずれもセッション再起動なしで、promptの変更が応答に反映されました。

ポイント

  • MCP設定の追加・修正・削除、およびエージェントのprompt変更がセッション再起動不要で反映される
  • 差分のあったサーバーのみ再起動され、会話コンテキストは保持される

Custom Agent Resource Inheritance Control

公式ドキュメントの説明

v2.10.0で追加された chat.disableInheritingDefaultResources 設定を true にすると、カスタムエージェントはデフォルトリソースを継承しなくなります。

v2.7.0以降、カスタムエージェントはデフォルトで以下のリソースを継承する仕様でしたが、これを制御する手段がありませんでした。

  • ~/.kiro/steering/ 配下のsteeringファイル
  • ~/.kiro/skills/ 配下のスキル
  • ~/.kiro/AGENTS.md

ビルトインエージェント(kiro_default など)はこの設定の影響を受けません。

# グローバル設定
kiro-cli settings chat.disableInheritingDefaultResources true

# ワークスペース単位の設定
kiro-cli settings --workspace chat.disableInheritingDefaultResources true

https://kiro.dev/docs/cli/custom-agents/configuration-reference/#disabling-default-resource-inheritance

やってみた

最小構成のカスタムエージェントを用意し、設定のON/OFFでコンテキストに含まれるリソースがどう変わるかを確認しました。

テスト用エージェント

以下の最小構成で ~/.kiro/agents/test-minimal.json を作成しました。

{
  "name": "test-minimal",
  "description": "検証用の最小カスタムエージェント",
  "prompt": "あなたはテスト用エージェントです。質問に簡潔に答えてください。",
  "tools": ["*"]
}

リソース定義(resources)は意図的に含めていません。

検証A: スキル一覧の差分

disableInheritingDefaultResources: false(デフォルト)の場合:

test-minimal エージェントに切り替え、コンテキストに含まれるスキル一覧を確認しました。

> 利用可能なスキル一覧を教えてください。

 #   │ Name                           │ File Path
 1   │ aidlc                          │ /home/kiro/.kiro/skills/aidlc/SKILL.md
 2   │ aidlc-application-design       │ /home/kiro/.kiro/skills/aidlc-application-design/SKILL.md
 3   │ aidlc-functional-design        │ /home/kiro/.kiro/skills/aidlc-functional-design/SKILL.md
 ...(以下省略)...

~/.kiro/skills/配下に配置した39個のスキルがすべてコンテキストに読み込まれています。

disableInheritingDefaultResources: true の場合:

別ターミナルで設定を変更し、セッションを再起動しました。

kiro-cli settings chat.disableInheritingDefaultResources true

同じエージェントで同じ質問をすると、スキルは1つも表示されませんでした。

> 利用可能なスキル一覧を教えてください。

 name                              │ description
 aidlc-architect-agent             │ AI-DLC Architect Agent — delegation target for...
 aidlc-developer-agent             │ AI-DLC Developer Agent — delegation target for...
 ...
 test-minimal                      │ 検証用の最小カスタムエージェント

表示されたのはエージェント定義(subagent用のロール情報)のみで、~/.kiro/skills/ のスキルは一切コンテキストに含まれていません。

検証B: 応答への実際の影響

ワークスペース固有のリソースがないディレクトリ(/tmp)で起動し、「AI-DLCフレームワークについて知っていることを教えて」と質問しました。

false の場合:

39スキルのメタデータがコンテキストに含まれるため、フレームワークの全体構成(5フェーズ・15以上のスキル名と役割)を詳細に回答しました。

AI-DLCは以下のフェーズ/スキルで構成されています:

企画・要件フェーズ
- intent-capture(意図の把握)
- scope-definition(スコープ定義)
...

設計フェーズ
- application-design(アプリケーション設計)
...

フェーズ構成やスキル名を正確に列挙しています。

true の場合:

スキルメタデータがコンテキストに含まれないため、エージェント定義のdescriptionから推測するに留まりました。

このセッションのコンテキストから分かるAI-DLCフレームワークに関する情報は限られていますが、
システムプロンプト内のエージェント定義から以下が読み取れます:

- aidlc(conductor agent) — ワークフロー全体を開始・再開する指揮者エージェント
...

これ以上の詳細は、現在のセッションコンテキストには含まれていません。

回答でも「コンテキストには含まれていません」と述べており、検証Aのスキル一覧の差分と合わせて、デフォルトスキルの継承が無効化されている挙動を確認できました。

Resource Inheritance Control のまとめ

chat.disableInheritingDefaultResourcestrueにすると、少なくともデフォルトスキルがカスタムエージェントのコンテキストから除外されることを確認しました。公式仕様ではsteering・AGENTS.mdも同様に継承されなくなるとされています。

まとめ

Kiro CLI v2.10.0のHot-Reloadにより、MCP設定の追加・修正・削除やエージェントpromptの変更を、セッション再起動なしで反映できることを確認しました。直前までの会話コンテキストを引き継いだまま認証設定・パラメータ・promptを調整できるため、設定変更の試行錯誤がかなり進めやすくなります。

chat.disableInheritingDefaultResources では、カスタムエージェントがデフォルトリソースを継承するかどうかを制御できます。デフォルトのskillsやsteeringによるコンテキスト消費や、既定の前提・指示の影響を抑えて、より目的に特化したエージェントを利用したい場合にお試しください。

この記事をシェアする

AWSのお困り事はクラスメソッドへ

関連記事