こんにちはnagisa_53です。
Windows環境で、VS CodeのターミナルからAmazon Q Developer for CLIを利用する場合どうすれば良いんだ...?
という質問を受けたので、方法をまとめておこうと思います。
Amazon Q Developer for CLIのWindows環境への導入
※本題の前段にあたる部分になるため、若干説明は省略気味です。
現状Amazon Q Developer for CLIはWindowsに対応していないので、何等かLinux環境を準備する必要があります。コンテナを使う方法やAWS上にEC2を準備して接続する、などいくつか手段はあると思いますが、一番容易なのはWSL2を利用する方法かなと思います。
WSL2自体の導入方法は公式ページに記載されています。ディストリビューションとしてはデフォルトでUbuntuが選択されるので、Ubuntuのままで問題ありません。
WSL2の導入が完了したら、WSL2上にAmazon Q Developer for CLIを導入します。
手順としてはWSL2にログインし、あとは、以下のマニュアルの"Ubuntu"の手順に従うだけです。
https://docs.aws.amazon.com/ja_jp/amazonq/latest/qdeveloper-ug/command-line-installing.html
インストールが完了し、WSL2上で"q"コマンドを実行すると、認証処理(Builder ID認証 or IAM Identity Center)がかかります。
認証処理完了後に、以下のような画面が出力されます。
(私の環境ではMCP Server設定等を行っているで若干の際はあり)
ここまでで、Amazon Q Developer for CLIのWindows環境への導入としては完了です。
VS CodeのターミナルからAmazon Q Developer for CLIを利用するための準備
ざっくりいうと、VSCodeからWSL2に接続することでVS CodeのターミナルからWSL2を利用できるようになり、結果Amazon Q Developer for CLIが利用できるようになります。
"VSCodeからWSL2に接続する"を実現するのが、以下の"WSL"拡張機能です。
拡張機能の検索画面で"WSL"と入力すると出てきます。
上記を導入すると以下の赤枠のマークがVS Codeの画面左部に出てくるのでクリックすると
以下のようにWSLで利用しているディストリビューションが現れるので、
選択し、以下の赤枠をクリックすると、WSLに接続済みのVS Codeが起動します。
起動したVS CodeのターミナルはWLSのものとなっているため(もしターミナルが起動していない場合は画面上部の"ターミナル"から新しいターミナルを起動)、そのターミナル上で"q"コマンドを実行するとAmazon Q Developer for CLIを起動できます。
また、上記で起動したVS Code上からWindows上のファイルを扱いたい場合は、頭に"/mnt"を付けることで、Windows側のドライブにアクセスできます。
例えばCドライブにアクセスしたい場合は、"/mnt/c"とします。
(WSL側からWindows側のドライブをマウントする形になる。)
※逆にWindows側からWLSのファイルを扱いたい場合は、頭にエクスプローラ上でパスに"\\wsl$"を入力することで接続できます。
余談
最近AWSからPreview版として提供され始めたKiroの場合、VS CodeのCode OSSベースに作られているため、ライセンスの問題から上述のWSL拡張機能が利用できません。
ただ、代わりにopen-remote-wslを利用することで同じようなことができそうです。
※WSL側からKiroを起動する方法もありますが、その場合、Kiroが操作しようとする際のパスがWindowsベースになってしまい色々ハマるので、KiroからWSLに接続する上記のような方法が良さそうです。
まとめ
Windows環境で、VS CodeのターミナルからAmazon Q Developer for CLIを利用する方法についてまとめました。
ただ、WSL2を入れられない制約があるケースもあるので(会社環境だとそうだったりする...)、Windows版を待ちわびております。