1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Gmail × 生成AI】Gmailフィルタ最適化をGeminiで自動化する手順まとめ

Posted at

― ラベル整理は“後”が正解。GAS連携まで含めた実践ガイド ―

🎯 概要

Gmailを長く使っていると、

  • フィルタが増えすぎて管理不能
  • ラベルが乱立してメールが見つからない
  • 優先度の高いメールが埋もれる
  • GASで削除しているのに動かなくなる

といった問題が発生します。

実際に Gemini(Googleの生成AI) を使って整理してみた結果、
最も効率の良い手順は次のとおりでした。

① 既存フィルタのクエリ最適化 → ② 必要ラベル構造を再設計 → ③ ラベル統合/名称変更 → ④ GASを修正

以降では、再現性のある「実践手順」と「Geminiへのプロンプト」まで含めてまとめます。


📌 なぜ“ラベル整理を先にやる”と破綻するのか?

多くのGmailフィルタは以下のように ラベル名に依存 しています。

Apply label: ProjectA
Apply label: Receipts
Apply label: LV1Important

先にラベル名を変えると、

  • フィルタが参照しているラベル名が壊れる
  • どのフィルタが何を処理していたか分からなくなる
  • メールが誤ったラベルに振り分けられる
  • GASの検索クエリ(label:xxx)が壊れる

という地獄が待っています。

したがって、フィルタ → ラベルの順番が最適解です。


🧩 全体フロー(再現性の高い順序)

1. フィルタ(クエリ)をAIで最適化する
2. 最適化されたフィルタ構成を元に「必要なラベルだけ」を再設計
3. ラベル名の変更・統合を実施
4. GAS(Apps Script)の検索クエリを修正する
5. 数日動作確認し、誤削除・誤アーカイブがないか確認

AIの能力を最大限活かすには、この順番が最も事故が少なく安定します。


🔍 Step 1:既存フィルタをGeminiで棚卸しする

1-1. Gmailフィルタをエクスポート

設定 → フィルタとブロック → エクスポート
mailFilters.xml が取得できる。

1-2. Geminiに渡すプロンプト(実際に使ったもの)

以下はGmailのmailFilters.xmlです。
- 条件の重複
- 論理的矛盾
- 優先度の見直し
- 統合できるフィルタ
- 不要なフィルタ
- 命名規則の改善

を指摘し、最適化後のフィルタ構成案を生成してください。

1-3. Geminiがやってくれること

  • 重複条件の統合
  • 矛盾・過剰条件の削除
  • 優先度(LV1, LV2, LV3)の自動分類
  • from / subject / negation の最適化
  • ラベル構造案の提示
  • 使っていないラベルの抽出

人間が数時間かかる作業が数十秒で終わる。


📁 Step 2:フィルタ最適化をもとにラベル再設計

Geminiが整理したフィルタを元に、
必要なラベルだけを抽出し、命名規則を統一する。

推奨命名例(AIがよく生成する)

[LV1] Client-ProjectA
[LV1] Billing-Invoice
[LV2] Internal-Meeting
[LV2] System-Alert
[LV3] Promo-Newsletter
[LV3] SNS-Twitter

レベル prefix(LV1 / LV2 / LV3)を付けると管理しやすい。


🏷️ Step 3:ラベルの名称変更・統合

フィルタのロジックが安定したあとで、

  • 使っていないラベルの削除
  • 名前の統一
  • 系統別にprefix付与

を行う。

Google公式UIでは複数ラベルの一括操作ができないため、
この段階もGeminiに「ラベル整理の手順」をまとめさせると楽。


⚠ Step 4:GASスクリプト側のクエリも必ず修正する

ここが最も見落としやすいポイント。

GASでメール削除や整理をしている場合、
GAS内に検索クエリがハードコーディングされている。

例:

var threads = GmailApp.search('label:OldLabelName');
var threads = GmailApp.search('from:amazon.co.jp');
var threads = GmailApp.search('subject:(請求書) -from:boss@example.com');

ラベル名や条件を変えると、
GASが正しく動かなくなる/誤削除する可能性がある。

4-1. Geminiにスクリプトを渡すプロンプト例

以下はGASのコードです。
Gmailフィルタを最適化してラベル名と検索クエリが変わりました。
このスクリプト内のクエリを、現在のフィルタ構成に合わせて修正してください。

Geminiは、差分を比較しながら正しいクエリを自動で生成してくれる。


🔧 Step 5:数日間モニタリングして誤動作チェック

  • 誤って削除されていないか
  • フィルタが意図どおりに作動しているか
  • GASの動作が安定しているか

を確認する。

必要ならGeminiに

「昨日のログを基に、GASの動作ログから異常がないか分析して」

と丸投げしてもよい。


📘 付録:Geminiに渡す万能プロンプト(保存推奨)

以下の3つの資料を入力します。
1. GmailのmailFilters.xml
2. ラベル一覧(スクリーンショットでも可)
3. 使用中のGASソースコード

これらを基に、

- フィルタの重複・矛盾の解消
- 優先度別フィルタ構造案の生成
- 不要ラベルの抽出
- 新しい命名規則案
- GASの検索クエリ修正版
- 修正後のmailFilters.xml(生成可能な範囲で)

を出力してください。

🧠 まとめ:Gmail × 生成AI は“圧倒的に効果が高い”

  • ラベルからいじるのは危険
  • フィルタ → ラベル → GAS の順で整理する
  • GeminiはGmail仕様・検索構文・GASを深く理解しているため相性が良い
  • メール管理のストレスを大きく削減できる

生成AIの活用例としては地味ですが、
日々の業務効率に直結する非常に有効な使い方です。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?