gogcliのgog gmail searchコマンドを使えば、ターミナルからGmailを検索・要約・Slack通知まで自動化できます。
- 要点1:
gog gmail search 'is:unread newer_than:1d'で当日の未読メールを一括取得できる - 要点2:
--jsonフラグとjqを組み合わせてClaude Codeに渡し、メール内容の要約が可能 - 要点3: 検索→要約→Slack通知のスクリプトをcronで定期実行することで、メールチェック業務を大幅に削減できる
対象: gogcliを導入済みで、Gmail操作を自動化したい経営者・エンジニア・DX推進担当者
今日やること: gog gmail search 'is:unread newer_than:1d' --max 10を実行して、未読メールの一覧取得を試す
この記事の目次
gogcliのGmail機能を使えば、ターミナルから直接メールを検索・フィルタリングし、Claude Codeとの連携でメール要約からSlack通知まで一気通貫で自動化できます。
「毎日のメールチェックに時間がかかりすぎる」「重要なメールを見落としてしまう」——こうした課題を抱える方は少なくありません。実際、あるビジネスメール調査(2026年)では、メール1通の対応に5分以上かかると答えたビジネスパーソンが全体の3割以上を占めることが明らかになっています。
この記事では、gogcliを使ったGmail検索の基本構文から、未読フィルタ・送信者絞り込み・期間指定などの実践的なフィルタリング手法、さらにClaude Codeと組み合わせた返信文の自動生成とSlack通知連携まで、コマンド例を交えて詳しく解説します。
gogcliのGmail機能の全体像
gogcliは、Google Workspaceの各サービスをターミナルから操作できるオープンソースのCLIツールです。Gmail・Calendar・Drive・Sheets・Docsなど10以上のサービスに対応しており、スクリプティングやAIエージェントとの統合に特化して設計されています。
gogcliでできること・できないこと(Gmail APIとの比較)
gogcliは内部でGmail APIを呼び出しており、OAuth2による安全な認証を経た上でメールにアクセスします。Gmail APIを直接扱う場合と比較すると、以下のような違いがあります。
| 項目 | gogcli | Gmail API直接利用 |
|---|---|---|
| 導入の手軽さ | コマンド1つ(CLIインストール+OAuth) | Pythonなどのコード実装が必要 |
| 認証管理 | gogcliが自動管理 | credentials.jsonの管理が必要 |
| Claude Codeとの連携 | --jsonフラグで直接渡せる |
専用ラッパーが必要 |
| 細かいAPI制御 | 制限あり | 自由度が高い |
| 速度 | 日常的な用途には十分 | バッチ処理に向いている |
日常的なメール確認・検索・通知の自動化であれば、gogcliで十分です。より高度な大量データ処理が必要な場合は、Gmail APIを直接利用する設計を検討します。
5つのGmail操作コマンド一覧
gogcliがGmailに対して提供する主要なコマンドは以下の5種類です。
| コマンド | 用途 | 概要 |
|---|---|---|
gog gmail search |
メール検索 | 検索クエリでメールを絞り込む |
gog gmail get |
本文取得 | メールIDを指定して本文を取得 |
gog gmail send |
新規送信 | 新しいメールを送信する |
gog gmail reply |
返信 | スレッドに返信する |
gog gmail label |
ラベル操作 | ラベルの付与・削除・一覧取得 |
この記事では特に使用頻度の高いsearchとget、そして自動化に欠かせないsend・replyを重点的に解説します。
ポイントgogcliのGmail機能を活用するには、事前にgogcliのインストールとOAuth2認証の設定が必要です。設定手順はgogcli入門 — Claude CodeからGoogle Workspaceを丸ごと操作するを参照してください。
gog gmail searchの検索クエリ構文を完全解説
gogcliのGmailメール検索は、Gmailの検索オペレーターをそのまま使用できます。Gmailのブラウザ版で使える検索クエリが、コマンドラインでもほぼそのまま動作します。
基本構文:gog gmail search '検索クエリ' --max N
基本構文は以下の通りです。
gog gmail search '検索クエリ' --max 件数
- 検索クエリはシングルクォートで囲む
--maxで取得件数の上限を指定(省略時はデフォルト値が適用される)--jsonフラグを付けるとJSON形式で出力され、スクリプトでの処理に向いている
最もシンプルな使用例:
# 今日の未読メールを10件取得gog gmail search 'is:unread newer_than:1d' --max 10# 特定の送信者からのメールを5件取得gog gmail search 'from:client@example.com' --max 5# 件名に「請求書」を含むメールを取得gog gmail search 'subject:請求書' --max 10
よく使う検索オペレーター一覧
Gmailの検索オペレーターはgogcliでもそのまま利用できます。特に業務で使いやすいオペレーターを整理しました。
| オペレーター | 意味 | 使用例 |
|---|---|---|
is:unread |
未読メール | 'is:unread' |
is:starred |
スターつき | 'is:starred' |
from: |
送信者 | 'from:boss@company.com' |
to: |
宛先 | 'to:me' |
subject: |
件名 | 'subject:議事録' |
newer_than:Nd |
N日以内 | 'newer_than:3d' |
older_than:Nd |
N日より前 | 'older_than:30d' |
has:attachment |
添付ファイルあり | 'has:attachment' |
in:inbox |
受信トレイ | 'in:inbox' |
label:ラベル名 |
特定ラベル | 'label:重要' |
組み合わせ例:未読の重要メールだけ抽出する
複数の条件を組み合わせることで、より精度の高い絞り込みが可能です。スペースで区切ることでAND条件になります。
# 過去3日以内の未読メールで、添付ファイルあり(重要な書類のある可能性が高い)gog gmail search 'is:unread newer_than:3d has:attachment' --max 20# 特定の取引先からの未読メールを検索gog gmail search 'is:unread from:@client-domain.co.jp' --max 10# 件名に「承認」または「確認」を含む未処理のメールgog gmail search 'is:unread subject:承認 OR subject:確認' --max 15# 受信トレイにある未読で、1日以内に届いたものgog gmail search 'in:inbox is:unread newer_than:1d' --max 30
実務での活用ポイント朝のメールチェック時間を削減するには、「昨夜から今朝までの未読で、件名に重要なキーワードを含むもの」だけを抽出するクエリを定型化しておくと効果的です。
\ Claude Codeの導入、何から始めればいいかわかります /
法人向けClaude Code個別指導の無料相談はこちらメールの本文取得と要約への活用
gog gmail searchでメール一覧を取得した後、個別のメールIDを使って本文を取得できます。ここからClaude Codeと組み合わせることで、メール内容の自動要約が実現します。
gog gmail getでメール本文を取得する
gog gmail searchで取得したメールIDを使って本文を取得します。
# メールIDを指定して本文取得gog gmail get --id [メールID]# JSON形式で取得(スクリプト処理向け)gog gmail get --id [メールID] --json
実際の使い方としては、searchの結果からIDを抽出して、getに渡すという流れになります。
# 未読メールのIDリストを取得してJSONで処理gog gmail search 'is:unread newer_than:1d' --max 5 --json | jq '.[].id'
--jsonフラグでClaude Codeに渡す
gogcliの--jsonフラグは、スクリプト自動化との統合において特に重要な機能です。Claude Codeはターミナルの標準入力・標準出力を通じてデータをやり取りできるため、gogcliのJSON出力をそのままClaude Codeに渡すことができます。
# メール本文をJSONで取得してファイルに保存gog gmail search 'is:unread newer_than:1d' --max 3 --json > /tmp/unread_mails.json# Claude Codeに要約を依頼(CLIから実行する場合)claude -p "以下のメールを要約してください: $(cat /tmp/unread_mails.json)"
実際の業務では、シェルスクリプトにまとめることで定期実行が容易になります。
実践例:1日1回、重要メールを要約してSlackに通知するスクリプト
あるフリーランスのコンサルタント(複数の事業を並行して運営)は、毎日届くクライアントからのメールチェックに追われていました。gogcliとClaude Codeを組み合わせることで、「朝9時に前日の未読メールを要約してSlackに自動通知する」仕組みを構築し、朝のメールチェック時間を大幅に削減しました。
スクリプトの概要は以下の通りです。
#!/bin/bash# mail_summary.sh — 未読メール要約&Slack通知スクリプトSLACK_WEBHOOK_URL="https://hooks.slack.com/services/xxx/yyy/zzz"# 前日の未読メールをJSON取得MAILS=$(gog gmail search 'is:unread newer_than:1d in:inbox' --max 20 --json)# メール件数を確認MAIL_COUNT=$(echo "$MAILS" | jq 'length')if [ "$MAIL_COUNT" -eq 0 ]; then echo "未読メールなし" exit 0fi# 件名と送信者の一覧を抽出SUMMARY=$(echo "$MAILS" | jq -r '.[] | "- \(.from): \(.subject)"')# Slack通知curl -s -X POST -H 'Content-type: application/json' \ --data "{\"text\":\"📧 未読メール ${MAIL_COUNT}件\n${SUMMARY}\"}" \ "$SLACK_WEBHOOK_URL"
このスクリプトをcronで毎朝9時に実行することで、メールを開かなくてもSlackで重要メールを把握できるようになります。
# cronに登録(毎朝9時)0 9 * * * /path/to/mail_summary.sh
Slack通知の詳細な設定方法については、Claude Code × Slackで業務報告・通知を自動化するも合わせてご参照ください。
Claude Codeの導入や活用方法について、個別にご相談いただけます。「gogcliの設定で詰まった」「自社のメール業務を自動化したい」という段階から対応しています。
Gmailへの返信・新規送信をコマンドで行う
メールの検索・取得に加えて、返信・送信もgogcliから実行できます。Claude Codeに返信文を生成させ、そのままgogcliで送信するワークフローは、定型的なメール返信の半自動化に有効です。
新規メールを送信する(gog gmail send)
# 基本的な送信コマンドgog gmail send \ --to "recipient@example.com" \ --subject "件名" \ --body "本文テキスト"# 複数の宛先に送信gog gmail send \ --to "a@example.com" \ --cc "b@example.com" \ --subject "共有事項について" \ --body "本文"# ファイルから本文を読み込むgog gmail send \ --to "client@example.com" \ --subject "月次レポート" \ --body-file /tmp/report_body.txt
スレッドに返信する(gog gmail reply)
スレッドへの返信は、スレッドIDまたはメッセージIDを指定します。
# スレッドIDを指定して返信gog gmail reply \ --thread-id [スレッドID] \ --body "返信内容のテキスト"
返信文生成→送信の半自動化フロー
実際のユースケースとして、問い合わせメールへの返信を半自動化する流れを紹介します。あるメディア運営者は、読者からの問い合わせメールに対して、以下のフローで対応時間を短縮しました。
gog gmail searchで未処理の問い合わせメールを取得gog gmail getで本文を取得してClaude Codeに渡す- Claude Codeが返信文の草案を生成(トーン・内容を指定)
- 生成された草案を確認後、
gog gmail replyで送信
# ステップ1: 問い合わせメールを取得MAIL=$(gog gmail search 'subject:お問い合わせ is:unread' --max 1 --json | jq '.[0]')THREAD_ID=$(echo "$MAIL" | jq -r '.threadId')BODY=$(echo "$MAIL" | jq -r '.body')# ステップ2: Claude Codeに返信文を生成させるREPLY_DRAFT=$(claude -p "以下のお問い合わせメールに対する丁寧な返信文を作成してください: ${BODY}")# ステップ3: 内容確認後、承認したら送信(このステップは手動で行う)echo "生成された返信文:"echo "$REPLY_DRAFT"
このフローにより、返信文の作成時間を大幅に短縮しながら、最終的な送信前に内容を確認するというプロセスを維持できます。
実務での活用ポイント完全自動送信は誤送信のリスクがあります。返信文の生成はAIに任せ、最終確認と送信トリガーは人が担う「半自動化」から始めることをおすすめします。
\ 業務自動化のお悩み、プロが30分で整理します /
法人向けClaude Code個別指導の無料相談はこちらラベル管理・既読化・アーカイブをCLIで行う
メールの整理作業——ラベルの付与、既読化、アーカイブ——もgogcliから実行できます。大量のメールを一括処理する際に役立ちます。
ラベルの一覧取得と付与
# 既存のラベル一覧を取得gog gmail label list# メールにラベルを付与(メールIDが必要)gog gmail label add --id [メールID] --label "対応済み"# ラベルを削除gog gmail label remove --id [メールID] --label "未対応"
既読化・アーカイブのコマンド
# メールを既読にするgog gmail mark-read --id [メールID]# メールをアーカイブ(受信トレイから除外)gog gmail archive --id [メールID]
実践例:処理済みメールを自動アーカイブするスクリプト
特定のラベルが付いたメールを自動的にアーカイブする処理は、受信トレイの整理に活用できます。
#!/bin/bash# archive_processed.sh — 「対応済み」ラベルのメールを自動アーカイブ# 「対応済み」ラベルのメールIDを取得MAIL_IDS=$(gog gmail search 'label:対応済み in:inbox' --max 50 --json | jq -r '.[].id')# 各メールをアーカイブfor ID in $MAIL_IDS; do gog gmail archive --id "$ID" echo "アーカイブ: $ID"doneecho "完了: 処理済みメールをアーカイブしました"
実務での活用ポイント受信トレイに残すメールを「未対応のもの」だけに絞ることで、見落としリスクを大きく下げられます。「対応済み」ラベル+自動アーカイブの仕組みは、1〜2時間で構築できます。
よくある質問
Q. gogcliとGmail APIを直接利用する場合の違いは何ですか?
gogcliはGmail APIのラッパーとして機能します。ライブラリのインストールやAPIクライアントのコード実装が不要なため、すぐにコマンドラインから使い始められます。一方、大量のメールを高速処理したい場合や、APIの細かい制御が必要な場合はGmail APIを直接利用する方が適しています。日常的なメール確認・通知の自動化であれば、gogcliで十分対応できます。
Q. gogcliでのGmail操作はGoogleの利用規約に問題ありませんか?
gogcliはGoogle公式のOAuth2認証を使用しており、適切な権限スコープの範囲内でAPIにアクセスします。個人アカウントや組織内での業務利用であれば問題ありません。Google Workspaceを業務で使用している場合は、組織の情報セキュリティポリシーと合わせて確認することをおすすめします。
Q. gogcliとgwsはどちらを使えばよいですか?
gogcliはgog <サービス> <アクション>というラッパー構文で直感的に使えます。gwsはgws <service> <resource> <method>というGoogle APIに近い構文で、より細かい操作が可能です。初めての方はgogcliから始め、より高度な操作が必要になった段階でgwsを検討することをおすすめします。
Q. 認証設定(OAuth)はどのくらいで完了しますか?
gogcliの初回設定はインストールからOAuth認証完了まで、おおよそ10〜15分程度です。Googleアカウントへのログインとアクセス許可の操作が主な手順です。設定時にKeychainのアクセス許可ダイアログが表示されることがあるため、ダイアログが出た場合は「許可」を選択してください。
\ AI活用の「次の一手」を一緒に考えませんか /
法人向けClaude Code個別指導の無料相談はこちらまとめ
gogcliのGmail機能を活用することで、以下の自動化が実現できます。
gog gmail search: Gmailの検索オペレーターをそのまま使った高精度なメール絞り込み--jsonフラグ: Claude CodeやシェルスクリプトにデータをJSON形式で渡せる- 未読フィルタ+Slack通知: 当日の重要メールをcronで自動チェック・通知
- 半自動返信フロー: Claude Codeが返信文を生成し、確認後にgogcliで送信
- ラベル+アーカイブ: 受信トレイの自動整理で見落としを防止
まずはgog gmail search 'is:unread newer_than:1d' --max 10を試し、ターミナルからGmailを操作する感覚をつかんでみてください。その後、Slack通知スクリプトの設定に進むことで、朝のメールチェック業務を大幅に効率化できます。
Claude Codeの導入・活用をサポートします
株式会社Nexaでは、Claude Codeを活用したメール自動化・業務効率化の個別指導・企業研修を提供しています。gogcliの設定から自動化スクリプトの構築まで、「何から始めればいいかわからない」という段階からご支援いたします。





