AWS CloudShellでAmazon Q Developer CLIに名残を惜しみつつKiro CLIを使ってみる

ついにKiroがGAとなりました。

合わせて新たにKiro CLIも登場しましたね。

以前の記事で、AWS CloudShellで一時的にAmazon Q Developer CLIが使えなくなっていたので使えるようにしたという記載をしましたが、いつの間にかその制限も取っ払われていたようです。

改めて、最速でAmazon Q Developer CLIを利用する方法はAWS CloudShellであるという持論を再び自信を持って言えるようになりました。

ただ、しかしながらAmazon Q Developer CLIはKiro CLIに統合されることとなってしまうそうです。

とはいえ、まだKiro CLIをインストールするまでは、まだAmazon Q Developer CLIを使用することができます。

Amazon Q Developer CLIとのお別れ前の確認と、新しいKiro CLIを試しに利用してみることにします。

 

 

AWS CloudShellでAmazon Q Developer CLIを実行

事前準備

ありません。AWS CloudShellを起動してすぐにAmazon Q Developer CLIを実行することができます。

確実に最速でAmazon Q Developer CLIを使うことができると言えますね。

q loginで認証を済ませたあとはqコマンドでチャットができます。

 

 

考察:永続ストレージの実質の使用量が減ってない?

AWS CloudShellの永続ストレージは1GBという仕様ですが、なんだか30%ほど既にUsedになってしまっていました。

いつの間にやら

 

 

原因を調べてみると、Amazon Q Developer CLIがプリインストールされてしまっていたことで300MB弱程度確保されてしまっていました。

 

 

では容量を食っているqコマンドのバイナリを削除して空き領域を確保しましょう、となります。

ですが、なんとセッションが切れたり、ターミナルを再起動するとまたバイナリが生成されてしまい、再び永続ストレージの空き容量が削減されてしまいます。

どうしてもストレージを1GB近く使いたい、Amazon Q Developer使わなくてもいいのに、という稀有な要望がある場合は、以下のコマンドで空のファイルを生成しておくと、起動時にエラーメッセージは出てしまいますが、セッションがきれた後もストレージ領域を確保しておくことができます。

 

AWS CloudShellにKiro CLIを導入

導入方法

さて、今度はKiro CLIを使えるようにしてみましょう。

Kiro CLIインストール方法は簡単です。公式にもあるコマンドを実行するだけです。Amazon Q Developerのアンインストールも必要ありません。

 

また、新たにKiroをインストールするコマンドでも同じ結果になります。

 

Kiro CLIのコマンドはkiro-cliということですが、qコマンドでもkiro-cliを呼び替えてくれています。

kiro-cliがqで置き換わるのは楽ですね。

 

 

Amazon Q Developer CLIとの差異

簡単に動作していましたが、zshで実現できていたコマンド入力補完はできなくなってしまうので、こちらの機能を多用していた人は更新するのは少し待っても良いかもしれません。

設定を確認するとインライン補完も有効になっていて、ドキュメントですとzsh以外でも補完が使えるようなのですが、使用できなかったのはAWS CloudShellでだけの動作なのかもしれません。

ちなみに、Kiro CLIのチャットモードではインライン補完が効いていたので、上記のインライン補完の設定はそちらのことなのかもしれません。

また、Kiro CLIの方が統合開発環境から派生しているためかファイルを生成しやすいように思いました。

 

Kiro CLI(Amazon Q Developer CLI)のちょっと知っておいていい機能

概要

こちらでは、Amazon Q Developer CLIでも使用できる機能ですが、いくつか特徴的な機能について紹介します。

コマンド群については、Kiroの公式のリファレンスがとても読みやすいので、そちらのリンクも貼っておきます。

また、KiroのYouTubeチャンネルもあります。

それらに、本来特筆すべき機能であるagentやhook、mcpなどのコマンドについてもわかりやすく説明されていますので、一旦の紹介はそちらに任せましょう。

本記事では、知っておくとちょっと便利なtipsや機能をいくつか紹介しておきます。

 

通常のコマンド実行

Kiroのチャットモードに入った後もCLIのコマンドを実行したくなりますよね。

例えば、コードを生成した後にファイルが出来ているかすぐに確かめたくもなります。

そんな時は新たにTerminalを開いたり、/quitで終了しなくても!を先頭入れてコマンドを入力することで、チャットモードながら通常のコマンドを実行できます。

 

 

コマンドの一覧から選択

起動時にも/helpの案内がありますが、色々なコマンドがあって覚えられないですよね。そんなときはCtrl+Sで一覧を出して、さらにコマンドを入力して絞り込むこともできます。

 

 

サイドトピックのチャットを行う

生成AIでチャットをしている際に、メイントピックと全く関係のない話題をチャットしたくなることはありませんか?

私はよくあります。たまたま、その際の関係のない話題がメイントピックの会話に影響が出たことがあったので気になっていました。

デフォルトでは設定オフになっているので、設定を有効化します。

 

 

あるいは、この機能は現在は実験的機能なので、/experimentから選択して有効化することもできます。

 

 

有効化が済んだ後は、以下のようにチャット中に/tangentを実行すると、次に/tangentを打つまでの間は元々の文脈に影響を与えないサイドトピックについてチャットをすることができます。

 

 

まとめと所感

KiroがGAになったことで、KiroエージェントもCLIで利用可能なとなりました。

AWS CloudShell上ではAmazon Q Developer CLIが簡単に利用できるようになっていたので、その後継となるKiro CLIへのアップデートや、動作の検証を簡単に行うことができました。

Kiro CLIを実際に触ってみて、ほぼAmazon Q Developer CLIだなと思った反面、まだKiro CLIについての情報が少ないからかもしれませんが、モデルを切り替えたりしてもsteeringやmcpの設定をチャットで生成をまかせてしまうと、それっぽいファイル名や場所にjsonファイルを作成してしまいがちでした。結局、パスやファイル名の細かい指示をすることになってしまったので、ドキュメントを見ながら手動で設定したほうがいいかもしれません。この辺りは今後の進化に期待したいですね。

ちょうどAWSブログにて、Amazon Q Developer CLIとKiro CLIの違いという記事も投稿されていましたので、こちらもご覧ください。

/pasteなんてスクリーンショット貼り付けが入力に使えるようになっていたのは見落としていました。

また、今回紹介しなかったagentやmcpの設定を行うことを考えると、Kiroを使った開発の場合と同様に、.kiro配下はソース管理して実行環境に持っていくことも必要になると思いました。

この記事が気に入ったら
いいね ! しよう

Twitter で
The following two tabs change content below.
君島翔
AI事業部事業部長株式会社ギークフィード
Java, .NET系の言語が得意。Laravelも使います。 エディタはvim派。 自分が楽するためにテストやビルド、デプロイを自動化させたい。 2022-2023 AWS Ambassador / 2022-2023 Japan AWS Top Engineer / 2022-2023 Japan AWS ALL Certifications Engineer

【採用情報】一緒に働く仲間を募集しています

採用情報
ページトップへ