Gemini優秀ですよね。
ChatGPTやClaudeはデスクトップアプリが出ていますが、Geminiは出る予感がしないので、いちいちブラウザを開かないといけません。ですがブラウザはブラウザでメモリを食うので、Gemini CLIをうまく使えないかなと思って、今回の方法をさっと試してみました。
できてすぐ記事にしてみたので、あまり検証できていません。
ご参考程度に思っていただけると幸いです。
できるようになったこと
問題点もあります
- 絶対パスで打つのが面倒
相対パス指定も行けるみたいですが、元の実行場所が場所なので実用的じゃありません。コマンドスクリプトをいじくれば、環境変数からの指定とかはできるようになるかもです。 - PowerToysの機能的に、ディレクトリ指定が必須になってしまう
一応、指定画面でカレントディレクトリ.とかを打っておけば、既定の場所で開くことはできます。軽い質問くらいならこれでもいいのかもしれません。
あとの問題点は使ってるうちに判明しそうです。
つくり方
起動ディレクトリを指定できるようにした gemini.cmd のカスタム版と、PowerToysコマンドパレットの「ブックマーク」機能を使います。
1.gemini.cmd のカスタム版 gemini_dir.cmd を作る
Gemini CLIがインストールされている場合、
C:\nvm4w\nodejs\gemini.cmd
が作成されています。Powershellなどからの起動は、環境変数伝いにこれを起動しているっぽいです。
つまりこのコマンドスクリプトを改良して、起動引数からカレントディレクトリが指定できるようにすればモーマンタイなのでは?!
善は急げと思って、改良版gemini_dir.cmdさえも Gemini に作らせました。
プロンプトはこんな感じにしました。一度ミスタイプで cmd を md と打ってしまったので、勘違い防止で注釈を入れてます。あとは、スクリプト内のコメントは英語で書くようにお願いしておくと、エンコードの問題も防げます。
@gemini.cmd を改良して、コマンドラインからカレントディレクトリの設定ができるようにした gemini_dir.cmd を作って。markdownじゃないよ、cmdはpowershellとかで実行できるあれだよ
2. コマンドパレットでブックマークの設定をする

「ブックマークの追加」から、先ほどの gemini_dir.md を登録しましょう。

僕の場合こんな感じにしました。プレースホルダー機能が結構効いてきます。
ブックマークを作れたら、今度は「コマンドパレットの設定 > ブックマーク」の項目に移動して、エイリアスをつけておきましょう。これで、コマンドパレット内から呼び出しやすくなります。

これで完成!!
まとめ
これまでGemini CLIを使うためには、所定の位置でターミナルを開いておいて、gemini を実行する必要があったので、その手間が楽になったかなと思っています。ちょっとした質問くらいなら、これで済むかもです。
とはいえ、そもそも主目的が開発用途なので、ワークスペースを開いているVSCodeとかで、ターミナルから起動するのが普通ではありますよね。なので、今回の工作が作業を効率化するというわけではないと思います😂
以上、お遊びでした。




