Gemini CLI × Google Workspace CLIで、ターミナルから自分のGoogleを丸ごと操作できるようにした話

やりたかったこと

「ターミナルからGoogleドライブのファイルを検索して、AIに要約させたい」

ずっとこれがやりたかった。ブラウザを開いてドライブを漁って、コピペしてAIに投げて…という作業が地味にだるい。全部コマンドラインで完結したら最高じゃないか、と。

調べていくと、Google公式がGoogle Workspace CLI(gws)というOSSを出していて、さらにGemini CLIと組み合わせると「AIがgwsを自律的に叩いてくれる」構成が作れることがわかった。

実際にやってみたら、設定でかなりハマったので、つまずきポイント込みで全部書いておく。


gwsとgogの違い(ここ、最初混乱した)

似た名前のツールに`gog`(gogcli.sh)がある。自分も最初どっちを使えばいいか迷ったんだけど、目的が全然違う。

  • gog → 人間がコマンドを打って手動で効率化するためのもの

  • gws → AIエージェントに操作させることを前提に設計されている

今回はGeminiに自律的に動いてもらいたいので、gwsの一択。


構築手順

1. 下準備(CLIのインストール)

Mac環境での話。まずgcloud CLIが入っていないと後で認証周りで詰むので、先に入れておく。

brew install --cask google-cloud-sdk
npm install -g @googleworkspace/cli

2. OAuth設定(ここが一番キツかった)

gws auth setup

これを叩くと対話形式で設定が始まる。流れとしては以下の通り。

プロジェクト作成 → 「Create new project」を選んで、`gws-my-project-01`みたいなユニークな名前をつける(ハイフンと小文字のみ)。

API有効化 → 22個のAPI(Drive、Gmailなど)がずらっと出てくる。全選択のままEnterでOK。

ブラウザでのOAuth同意画面 → ここがハマりポイント。途中でブラウザが開くので、User Typeは「外部(External)」を選択。そして**「テストユーザー」の欄に、自分のGoogleアカウントのメールアドレスを必ず追加する**。これを飛ばすとログインできなくなって最初からやり直しになる。自分はここで30分溶かした。

クライアントIDとシークレットのコピペ → ブラウザで発行されたものをターミナルに貼り付ける。

最後にもう一度ブラウザでログイン画面が出る。「Googleではこのアプリを確認していません」という警告が出るけど、自分で作ったアプリなので「詳細」→ 進む、で全権限を許可。

3. Gemini CLIの導入

gwsが動く状態になったら、次はAI側。

npm install -g @google/gemini-cli
gemini extensions install https://github.com/googleworkspace/cli

ここで`API_KEY`関連のエラーが出ることがある。その場合は、ターミナルで`gemini`とだけ打って起動し、「1. Login with Google」を選んでブラウザ認証すれば、APIキーなしで通る。


実際に動かしてみた

ターミナルで`gemini`を起動して、こう聞いてみた。

「Googleドライブにある最新のファイル名を3つ教えて」

すると、Geminiが裏側で`gws drive files list --params ...`を勝手に組み立てて実行。自分のドライブの中身を正確に3つ返してきた。ちゃんと実ファイル名が出てくるので、動いているのが実感できる。

ここまで来れば、あとは応用。

  • 「今日のカレンダーの空き時間に打ち合わせを入れて」

  • 「Gmailから昨日届いた請求書メールを探して」

こういう指示も自然言語で通る。


NotebookLMと組み合わせるなら

Gemini CLIとNotebookLMは直接つながらないけど、Googleドライブを中継地点にすればいい。

  1. Gemini CLIに「過去のメールを要約してGoogleドキュメントとしてドライブに保存して」と指示

  2. NotebookLMを開いて、そのドキュメントをソースとして追加

  3. あとはNotebookLM上で深掘り

Gemini CLIがリサーチ担当、NotebookLMが分析担当、という役割分担。情報を集める工程と考える工程を分けると、かなり回しやすくなる。


まとめ

正直、OAuth周りの設定はかなり面倒だった。ただ、一度つながってしまえば「ターミナルから自然言語でGoogleの各サービスを操作できる」状態が手に入る。

個人的には、ドライブの検索とGmailの検索が一番使用頻度が高くなりそう。ブラウザを開かずにAIが勝手にファイルを探して要約してくれるのは、想像以上に快適だった。

設定でつまずいた人がいたら、この記事のOAuthのところを重点的に読み返してみてほしい。大体あそこで詰まるので。

いいなと思ったら応援しよう!