はじめに
2026年8月4日ごろ、Kiro CLIのマルチエージェントオーケストレーター基盤であるKiro CrewがOSSとして公開されました。
興味深い機能が盛りだくさんで私自身もKiro CrewをGitHub Codespaces上で実行する方法を以下の記事にしました。
実はその裏で、Kiro CLI本体も8月上旬にかけて立て続けにアップデートされていました。
そのため、今回はその中でも、V3にて大きく強化されたtangent(タンジェント)機能を中心に、実際に触りながら検証してみます。
対象読者は「Kiro CLIは使ったことがあるが、V3やtangentはまだ触ったことがない」くらいの方を想定しています。
忙しい人向け
Kiro CLI上で何か開発をしていたり、チャットのやり取りをしている時に、関連した調べ物をしたいけど、この場でそのまま聞くとノイズになるな、でも別タブで開くのめんどくさいと言うことがたびたびありました。
そんな時に、V3で強化されたtangent機能を使うとこれまでのチャットのやり取りを汚さずに調べ物や別の作業ができて便利です。
8/5〜のKiro CLIアップデート概要
まず、直近のアップデートを簡単に整理します。
| バージョン | リリース日 | 概要 |
|---|---|---|
| v2.16.0 | 7/31 | tangent機能の拡張(名前付き・ツリー表示)、/contextのツール別トークン内訳表示 |
| v2.16.1 | 8/4 |
kiro-cli crewサブコマンド追加、/settings統合、/agent create・/agent editのチャット内対応 |
| v2.16.2 | 8/6 | V3中心の不具合修正多数(スペック自己修復、MCP出力、tmux/Zellijでのカーソル表示など) |
tangentという機能自体は実は以前からV1のクラシックインターフェース限定の実験的機能として存在していましたが、v2.16.0でV3向けに大幅リニューアルされた、という位置づけです。この違いは後半で実際に比較します。
設定確認:/settingsとstatus line
Kiro CLIにはchat.agentEngine(エージェントのバージョン: v1/v2/v3)とchat.ui(インターフェース: classic/tui)という、という二つの設定方法があります。
# エージェントエンジンの切り替え
kiro-cli settings chat.agentEngine v3
# 現在の設定値を確認
kiro-cli settings list --all
V3のチャット内で/settingsを実行すると、CLIのsettings listには出てこない項目(status lineの表示切り替えなど)がインタラクティブなメニューとして出てきます。
/settings → Display → Status line
ここでは、ステータスラインに表示するセグメントを個別にON/OFFできます。ちなみに、TangentはデフォルトでONでした。
| デフォルトON | デフォルトOFF |
|---|---|
| Agent, Autonomous, Model, Effort, Context, Tangent, Code intelligence, Location, Git branch, Goal | Date, Time, Usage, Credits |
本題:tangent機能を試してみる
調べていく中で、tangentには実は2つの世代があることが分かりました。
| V1クラシック | V3 | |
|---|---|---|
| 有効化 | kiro-cli settings chat.enableTangentMode true |
デフォルトで利用可 |
| 分岐の数 | 1つだけ(トグル型) |
/tangent <name>で複数、名前付き |
| 戻り方 | もう一度/tangentでトグルOFF |
/tangent rootで一発 |
| 全体像の把握 | なし |
/tangent lsでツリー表示 |
V1クラシックの/tangentにたどり着くまで(トラブルシュート)
せっかくなので、両方を実際に動かして比較してみることにしたのですが、クラシックモードに変更し、tangentモードを有効化するのにかなり詰まりました。そのため、同じような状況になる人向けに、詰まった過程も含めて残しておきます。
まずchat.agentEngineをv2に、chat.uiをlegacyに設定してからkiro-cliを起動し、チャット内で/tangentを叩いてみました。
/tangent
「tangent」について何をお手伝いしましょうか?
...(LLMが質問の意図を聞き返してくる)
Creditsが消費され、応答に数秒かかっていることから、これは組み込みコマンドとして処理されたのではなく、/tangentという文字列がそのままチャットメッセージとしてLLMに渡っていたことが分かりました。/experimentを試しても同様の結果でした。
公式ドキュメントを確認したところ、以下のページに記載がありました。
/experimentと/tangentは「クラシックインターフェースにはあるが、TUI(現在のデフォルト)にはまだ移植されていない」機能として明記されていました。つまりchat.uiをlegacyに設定したつもりが、実際にはまだTUIのまま起動していたことになります(バージョンによる値の表記揺れlegacy/classicが絡んでいた可能性があります)。
そこでシェルから直接クラシックモードを指定してみたところ、以下のように出力されました。
error: Conflicting options: --legacy-ui cannot be used with --agent-engine=v2. Use --agent-engine=v1 or remove --legacy-ui.
このエラーから、クラシックUIはv1エンジン専用だと分かります。
# グローバル設定でv1に切り替えてから起動
kiro-cli settings chat.agentEngine v1
kiro-cli --classic
これでようやくクラシックモードが起動し、/tangentを実行できました。
1% > /tangent
Created a conversation checkpoint (↯). Use ctrl + t or /tangent to restore the conversation later.
Note: this functionality is experimental and may change or be removed in the future.
1% ↯ >
プロンプトが1% >から1% ↯ >に変わり、無事タンジェントモードに突入しました。
V1での実演:サブエージェント並列処理
タンジェント内で「イチオシ機能は?」と聞いてみたところ、サブエージェントによる並列処理を実際にデモしてくれました。
2% ↯ > 1
Invoking 2 subagents in parallel (using tool: subagent)
1. kiro_default: 東京の天気予報をウェブ検索
2. kiro_default: janken.py(じゃんけんゲーム)を生成
2つのタスクが並列で完了し(約106秒)、天気予報のまとめと、実際に動くPythonのじゃんけんゲームが同時に出来上がりました。
タンジェントを抜けて本流に戻り、記憶が分離されているか確認します。
2% ↯ > /tangent
Restored conversation from checkpoint (↯). - Returned to main conversation.
1% > さっき作ってもらったjanken.pyの中身、覚えていますか?
いいえ、申し訳ありませんが、以前の会話の内容は覚えていません。
各会話セッションは独立しているため、過去に作成したファイルの内容は記憶に残っていません。
「会話の記憶は引き継がれないが、副作用(生成物)は残る」——これがtangentの重要な特性のようです。実際、janken.pyファイル自体はディスク上にちゃんと残っていました。
V3の/tangentを試す:名前付き・ツリー表示
続いてV3側です。chat.uiをtui、chat.agentEngineをv3に戻して同じ流れを試します。
> あなたのイチオシ機能はなんですか?
(Specについて回答)
> /tangent aws-tips
> IAMポリシーでワイルドカードを使う際のベストプラクティスは?
(回答)
> /tangent root
> /tangent lambda-tips
> Lambdaのコールドスタート対策を教えて
(回答)
> /tangent ls
/tangent lsを実行すると、ツリー形式のピッカーが表示されます。
Tangent Last active
root 5m ago
❯ ├─ lambda-tips 1m ago [current]
└─ aws-tips 4m ago
rootからaws-tips・lambda-tipsが枝分かれし、現在地も[current]で明示される——V1のシンプルなトグル型にはない、V3ならではのビジュアルです。
ステータスラインにも変化が現れていました。
Default · Auto · ◔ 3% · ↯ aws-tips · 2026-08-09 · 00:45 · usage 6% · 938 credits
Default · Auto · ◔ 3% · ↯ lambda-tips · 2026-08-09 · 00:47 · usage 6% · 936 credits
Tangentセグメントは、単に「tangent中」を示すだけでなく↯ <タンジェント名>という形式で今どのタンジェントにいるかまで表示してくれます。複数のタンジェントを行き来しても迷いにくい設計です。
最後に、V1と同じ記憶分離のテストをしてみます。
> さっきのlambda-tipsタンジェントで話したコールドスタート対策について覚えていますか?
申し訳ありませんが、「lambda-tipsタンジェント」でお話しした内容は覚えていません。
私のセッションはそれぞれ独立しており、以前の会話の記憶は引き継がれません。
V1と同じく覚えていないようです。tangentの中核である「メインの会話を汚さない」という性質は、V1・V3のどちらでも同じように働いていると見てよさそうで、V3で強化されたのは主に管理面(複数分岐・名前付け・ツリー表示)なのだと思われます。
V1 vs V3 比較まとめ
| 項目 | V1クラシック | V3 |
|---|---|---|
| 起動方法 |
kiro-cli --classic(要chat.agentEngine=v1) |
kiro-cli(要chat.agentEngine=v3) |
| 分岐 | 1つのみ(トグル) |
/tangent <name>で複数・名前付き |
| 一覧性 | なし |
/tangent lsでツリー表示 |
| 復帰方法 | もう一度/tangent
|
/tangent root |
| ステータスライン表示 | なし | ↯ <タンジェント名> |
| 記憶の分離 | される | される(共通) |
使ってみた感想
- 「本流の作業中に、ちょっとした調査や確認を挟みたい」という場面でのコンテキスト汚染対策として、tangentはシンプルながら効果的
- V3の名前付き・ツリー管理は、tangentを1回のセッションで何度も使うような人には嬉しい機能
- 一方で、今回のように
chat.agentEngineとchat.uiという2軸の設定を正しく揃えないと動かない場面があり、ここは要注意ポイントだった
コラム:V2の/rewindはtangentの代わりになる?
tangentはV1とV3にはあるのですが、V2にはありません。
そのため、「普段使っているV2(TUI)には/tangentも/experimentもない。じゃあ/rewindで代用できるのでは?」と思う方もいるかもしれません。結論としては、目的が違うので代用にはなりません。
/rewindはv2.4.0(2026年5月)からV2のTUIに搭載されているコマンドで、会話の特定のターンまで遡り、そこから新しいブランチ(フォーク)を作る機能です。選択したターン以降の会話は分岐先に置き換わり、元のセッションは凍結されて/chat resumeや/chat loadで別途呼び出す必要があります。「さっきの判断をやり直したい」「別のアプローチを試したい」というシーンで使うもので、tangentの「本流を保ったまま寄り道し、抜けたら続きから再開する」というユースケースとは根本的に異なります。
/rewind(V2) |
tangent(V1/V3) | |
|---|---|---|
| やること | 過去のターンまで巻き戻して別分岐をフォーク | 現在地点から一時的に脇道へそれる |
| 本流への影響 | 選択ターン以降は分岐に置き換わる(元セッションは凍結) | 本流はそのまま続き、抜ければ即座に続きから再開 |
| 主な用途 | 判断のやり直し、別アプローチの試行 | 本流を汚さない一時的な確認・調査 |
| ファイルへの影響 | 巻き戻してもディスク上の変更は取り消されない | 会話の記憶は分離されるが、生成物はディスクに残る |
Gitに例えるなら、/rewindは「resetしてから別ブランチを切る」、tangentは「stashして寄り道してからstash popで戻る」に近いイメージです。V2でどうしても近い体験が欲しい場合は/rewindより、V1クラシック(chat.agentEngine=v1 + kiro-cli --classic)に切り替えてtangentを使う方が本来の用途に合っています。
まとめ
Kiro Crewの陰に隠れがちですが、Kiro CLI本体のtangent機能も地道に進化していました。V1時代からの「本流を汚さず寄り道する」というコンセプトはそのままに、V3では複数タンジェントの並行管理という形で実用性が上がっていました。
普段からKiro CLIを使っていて、まだtangentを試したことがない方はぜひ触ってみてください。
参考