ギャルで学ぶgemini-cli-extensions ~かわいいとextensionsは作れる!~
はじめに
みなさん、~/.geminiをカスタマイズしてますか?
~/.gemini/GEMINI.mdを育てている人も多いですよね?
ではextensionsはどうでしょうか?
extensionsはGEMINI.mdやカスタムコマンド等をひとまとめにして、拡張機能として提供できます。
また、拡張機能は個別に有効/無効を切り替えることも可能です。
自分の設定をextensionsに切り出せば、再利用性が高まり、意味のある単位で管理できます。
この手法はVimやshellのプラグインでワークしている仕組みと同等と考えています。
今日はそんな可能性に溢れた、gemini-cliのextensionsについて説明します。
公式の説明が読みたい人は以下を読んでください。
gemini-cli-extensionsの利用方法
という訳でギャル化拡張機能作ったので、これを例に説明していきます。
あ、ギャル好きな人はスター付けてくれると嬉しいです。
インストール
以下だけでgemini cliがギャルになります。
gemini extensions install https://github.com/yuys13/gemini-cli-extension-gyaru
一時的に無効化する
gemini extensions disable gyaru
これでアンインストールせずに、ギャル拡張を無効化できます。
すぐ切り替えられるの便利ですね。
またギャルに会いたくて会いたくて震えてきたら、以下で有効化できます。
gemini extensions enable gyaru
enable/disableは--scope workspaceでワークスペース毎に有効化も可能です。
アンインストール
ギャルと別れたくなったら以下でアンインストールです。
gemini extensions uninstall gyaru
gemini-cli-extensionsの作り方
基本的にはテンプレートを展開して、GEMINI.mdとカスタムコマンドを書くだけです。
(MCPは公式ドキュメント読んでください)
公式サイトは以下です。
テンプレートはさっと展開できます。
gemini extensions new <path> [template]
<path>はテンプレートを展開したい場所を指定してください。
[template]は記事執筆時点で以下から選択できます。
- context
- custom-commands
- exclude-tools
- mcp-server
おわりに
~/.gemini/GEMINI.mdに記載した言語毎のルールを拡張機能として切り出して、必要なものだけ有効にしてはどうでしょうか?
無造作に増えていった~/.gemini/commands内のコマンドを、意味のあるまとまりで管理してみては如何でしょうか?
あと、面白い拡張作ったら教えてください。
以下から色々な拡張機能を探せます。
Discussion