gogcliが鬼のように便利

steipeteが作ったGoogle系ツールをCLIでいい感じに叩けるCLIのgogがめちゃくちゃよかった。steipeteはOpenClawも作っている人で、尖った物をバンバン作ってるのがすごい。

GitHub - steipete/gogcli: Google Suite CLI: Gmail, GCal, GDrive, GContacts.
Google Suite CLI: Gmail, GCal, GDrive, GContacts. Contribute to steipete/gogcli development by creating an account on GitHub.

Claude Codeは手元のCLIを使って様々なタスクをこなすのでgogのようなツールを使うことでGoogleにある情報も必要なときに参照することができるようになった。

CLIの使い方をAgent Skill化しておいて、必要なときに/gog で使わせたりしている。仕事関係はGoogle Workspaceに情報をおいているので、例えば会議で作成されたGeminiメモを取得させてコンテクストを共有した状態で開発させるなどがスムーズにできてとても便利になった。

LLMエージェントに外部情報を取得させる時はMCPサーバーというイメージがあったが、MCPはあくまでもGUIでの連携時に使えると便利な立ち位置なのだろう。CLIを使える環境ではCLIを使ったほうが圧倒的に体験が良いし、サービスに組み込むなら最初からAPIエンドポイントでツールを書いておいたほうがよさそう。

Ghost版gogcliを作った

というわけでgogcliのGhost版をClaude Codeに作らせた。

GitHub - mtane0412/ghocli: Fast, script-friendly CLI for Ghost Admin API.
Fast, script-friendly CLI for Ghost Admin API. Contribute to mtane0412/ghocli development by creating an account on GitHub.

ghoコマンドを使って必要な時に必要な情報を取得したり書き込んだりすることができるようになった。「ふーん、まぁ便利っちゃ便利かな」くらいで劇的な変化があったわけだはないのだけど作ってて面白かった。

gogcliのリポジトリで設計思想などを調査したり、判断に迷ったときにgogではどうしているのかといった問いを出すことで理解も爆速になった。例えばgogの各種catコマンドで内容を表示するところなどはとてもUnixっぽいのでghoでも採用した。AIエージェント時代でも写経の本質的な部分は同じで面白い。

単純なGhost Admin APIラッパーではなく、どういう文脈でコマンドを叩くのかなど結構考えなければならないことは多い。CLIなのでpipeline処理も考えて入出力をうまく設計すると使い心地があるのだとわかった。

AIエージェントには「ひとつのことをうまくやる」ツールを作る

Unix哲学というと「ひとつのことをうまくやれ」「協調して動くプログラムを作れ」という部分が有名で、これがAI時代においてもさらに重要になってくると感じた。実際、LLMにCLIを作らせる機運は高まっているように感じる。

AIエージェントは「強調して動くプログラム」の究極系のようなものなので、シンプルなひとつのことをうまくやるツールを開発していくとそれは長く使える資産になる気がする。LLMの実装力で高速で作って捨てる部分と、Unix哲学的な長く使える部分とが両極端になってきそうだなーと思った。