AI・自動化17 min read

問い合わせメールの一次仕分けを Apps Script と Claude で自動化【2026年9月】— 返信下書きまで任せ、送信は人が握る

Google Apps Script の時間トリガーで Gmail の未読を拾い、Claude API の構造化出力で分類してラベルと返信下書きを作る手順を公式ドキュメントで整理。個人情報保護委員会の注意喚起に沿った「送ってよい情報」の決め方、二重処理を防ぐ設計、コピペで使うコード、導入前チェックリスト付き。

「代表アドレスに届く問い合わせを、誰かが毎朝読んで担当に振っている」。この仕事は、Google Workspace を使っている会社なら、Google Apps Script と Claude API で機械に渡せます。ただし、渡してよいのは「読んで分けて下書きする」までです。送信の判断まで渡すと、間違いが取り消せない形で外に出ます。

この記事では、Google の公式ドキュメントと Anthropic の公式ドキュメント(いずれも 2026年9月時点)だけを出典に、Gmail の未読を拾って Claude に分類させ、ラベルと返信下書きを作る仕組みの組み方を整理します。個人情報保護委員会の注意喚起に沿った「送ってよい情報の決め方」、二重処理を防ぐ設計、コピペで使うコードとプロンプト、導入前のチェックリストまで載せています。読者は、企業の業務改善・情報システム・Web の担当者を想定しています。

結論 — 先に要点だけ

  1. 機械に渡すのは「読む・分ける・下書きする」まで。送るのは人。 Apps Script の createDraftReply は下書きを作るだけで送信しません。この一線を守ると、分類ミスが顧客の目に触れる前に止められます
  2. 分類は Claude API の構造化出力(JSON スキーマ)で受け取る。 自由文を正規表現で拾う作りは壊れます。output_config.format にスキーマを渡すと、決めた形の JSON だけが返ります
  3. 二重処理は「処理済みラベル + 検索条件で除外 + LockService」で防ぐ。 エラーになったメールは処理済みにせず、次回の実行に回します
  4. 個人情報を送る前に、利用目的と学習利用の有無を確認する。 個人情報保護委員会は、この2点の確認を事業者に求めています。Anthropic の商用製品は既定で入出力を学習に使いません
  5. 上限を先に知っておく。 Apps Script には1回の実行時間と、時間トリガーの合計実行時間に上限があります。1回に扱う件数を絞り、短い実行を繰り返す設計にします

全体の流れ — 5つの段階と、それぞれの担当

仕組みの骨格は5段階です。どこまでを機械が担い、どこから人が担うかを先に固定します。

段階やること担当使う部品
1. 拾う未読で未処理の問い合わせスレッドを検索するApps ScriptGmailApp.search と Gmail の検索演算子
2. 読む最初のメッセージの件名と本文(テキスト)を取り出すApps ScriptgetPlainBody getSubject
3. 分ける分類・確信度・要確認フラグ・下書き文を JSON で返すClaude APIMessages API + 構造化出力
4. 印を付ける分類ラベルと処理済みラベルを付け、下書きを作るApps ScriptaddLabel createDraftReply
5. 送る下書きを読み、直して送る。分類が違えばラベルを付け替えるGmail の画面

Apps Script の Gmail サービスには、検索・ラベル作成・ラベル取得・下書き作成・スレッド取得のメソッドが揃っています。getPlainBody は「HTML 書式を除いた本文」を返すので、Claude に渡すのはこちらを使います。

※ 出典: Google — Apps Script Class GmailApp(取得 2026-09)/Google — Apps Script Class GmailThread(取得 2026-09)/Google — Apps Script Class GmailMessage(取得 2026-09)

段階5を人に残す理由は単純で、送信は取り消せないからです。createDraftReply の公式説明は「このスレッドの最後のメッセージの送信者に対する返信の下書きを作る」であり、送信は含みません。下書きが Gmail に並び、担当者が読んでから送る流れにすると、分類の間違いは社内で止まります。

使う部品と上限【2026年9月時点】

無料で始められますが、上限を知らずに組むと止まります。Apps Script の主な割り当ては次のとおりです。

項目無料の Google アカウントGoogle Workspace
メールの読み書き(送信を除く)20,000 / 日50,000 / 日
メール送信先の数100 / 日1,500 / 日
URL Fetch の呼び出し20,000 / 日100,000 / 日
トリガーの合計実行時間90 分 / 日6 時間 / 日
1回の実行時間6 分 / 実行6 分 / 実行
トリガーの数20 / ユーザー / スクリプト20 / ユーザー / スクリプト
プロパティの保存容量500 KB / ストア、9 KB / 値500 KB / ストア、9 KB / 値

※ 出典: Google — Quotas for Google Services(Apps Script)(取得 2026-09)

問い合わせの仕分けで先に効いてくるのは「1回の実行は6分まで」と「トリガーの合計実行時間」です。Claude API の応答を待つ時間はメール1通ごとに積み上がるので、1回に扱う件数を絞り、短い実行を10分おきなどに繰り返す設計が向いています。

Claude 側の費用は、モデルごとの入出力トークン単価で決まります。分類と短い下書きは入出力とも小さいため、まず最も速いモデルから始めます。表の単価は100万トークンあたりの米ドルです(2026年9月時点)。

※ 出典: Anthropic — Pricing(取得 2026-09)

モデル入力出力公式の位置づけ
Claude Haiku 4.5$1$5最速。フロンティアに近い知能
Claude Sonnet 5$2$10速度と知能の最良の組み合わせ
Claude Opus 5.5$4$20長時間のエージェント作業向け(2026-09-22 公開)

※ 出典: Anthropic — Models overview(取得 2026-09)/Anthropic — Pricing(取得 2026-09)/Anthropic — Claude Platform release notes(取得 2026-09)

料金ページには2つの注記があります。Sonnet 5 の $2 / $10 は当初「2026年8月31日までの導入価格」でしたが、そのまま標準価格になり、9月1日に予定されていた値上げは行われないと明記されています。もう1つ、Claude 4.7 以降のモデルは新しいトークナイザを使い、同じ文章でおよそ 30% 多くトークンを数えるとあります。Haiku 4.5 は旧トークナイザなので、モデルを切り替えて比べるときはこの差を頭に入れておきます。

※ 出典: Anthropic — Pricing(Model pricing の注記)(取得 2026-09)

もう1点、モデルの寿命です。Models overview の表では、Haiku 4.5 の退役は「2026年10月15日より前にはならない」、Sonnet 5 は「2027年6月30日より前にはならない」とあります。コードにモデル ID を直書きせず設定値にしておき、退役の告知が出たら切り替えられるようにしておきます。

※ 出典: Anthropic — Models overview(Retirement 行)(取得 2026-09)

社内で先に決めること — 何を Claude に送ってよいか

問い合わせメールには、氏名・連絡先・相談内容が入っています。外部の AI に送る前に、個人情報の扱いを決めておかないと、仕組みが動き始めてから止めることになります。

個人情報保護委員会は 2023年6月2日、生成 AI サービスの利用に関する注意喚起を出しました。事業者向けの注意点は2つです。第1に、個人情報を含むプロンプトを入力する場合は、特定した利用目的を達成するために必要な範囲内であることを十分に確認すること。第2に、本人の同意を得ずに個人データを含むプロンプトを入力し、その個人データが応答結果の出力以外の目的で取り扱われる場合は、個人情報保護法に違反する可能性があるため、提供事業者がその個人データを機械学習に利用しないこと等を十分に確認すること。

※ 出典: 個人情報保護委員会 — 生成AIサービスの利用に関する注意喚起等について(取得 2026-09)/同 別添1 PDF(取得 2026-09)

Anthropic 側の扱いは、プライバシーセンターに「既定では、商用製品(Claude for Work、Anthropic API など)の入力・出力をモデルの学習に使わない」と書かれています。例外は、利用者が明示的にフィードバックやバグを報告した場合などです。この仕組みは API を使うので、既定の扱いが当てはまります。

※ 出典: Anthropic Privacy Center — Is my data used for model training?(取得 2026-09)

これを踏まえて、社内で決める項目を表にしました。

決める項目決め方の目安
利用目的に「問い合わせ対応」が含まれるかプライバシーポリシーの利用目的を確認する。無ければ先に直す
送る範囲件名と本文テキストだけ。添付ファイルと HTML 本文は送らない
送らない範囲社内の他システムの情報、過去のやり取り全文、社員の個人メール
分類ラベルの体系5〜7個に絞る。「その他」を必ず入れて、無理に当てはめさせない
人が確認する条件確信度が低い、返金・解約・苦情・法務の語が入る、添付がある
下書きを作る分類定型で答えられるものだけ(資料請求、営業時間、対応エリアなど)
記録の場所実行ログに「スレッド ID・分類・確信度」を残す。本文は残さない

全社の AI 利用規程がまだ無い会社は、先に規程を作ってから個別の仕組みを乗せる順序を勧めます。規程の作り方は生成 AI の社内利用ガイドラインの作り方にまとめています。

手順 — 6ステップで組む

ステップ1 — Gmail にラベルを作る

分類ラベル(例: 見積依頼・既存サポート・採用・営業/広告・その他)と、運用ラベル2つ(AI仕分け済み・要確認)を先に作ります。コードからも createLabel で作れますが、名前の揺れを防ぐため手で作って、コード側は getUserLabelByName で取得する形にします。

ステップ2 — Apps Script のプロジェクトを作り、API キーを保存する

script.google.com で新しいプロジェクトを作ります。Claude の API キーはコードに書かず、プロパティサービスに保存します。公式ドキュメントは、スクリプトプロパティを「スクリプトの全利用者がアクセスでき、開発者の外部データベースのユーザー名やパスワードのようなアプリ全体の設定」に使う場所と説明しています。エディタの「プロジェクトの設定」からキー名 ANTHROPIC_API_KEY で登録します。

※ 出典: Google — Properties Service(取得 2026-09)

共有アカウントで動かす場合、そのスクリプトの編集権限を持つ人は誰でもキーを読めます。編集権限を絞ること、キーを Claude Console のワークスペース単位で分けて支出上限を付けることを、あわせて決めておきます。

ステップ3 — 検索条件を決める

Gmail の検索演算子で「未読・受信トレイ・直近2日・処理済みラベルなし」を表します。

text
is:unread in:inbox newer_than:2d -label:AI仕分け済み

newer_than: は「d(日)・m(月)・y(年)」の単位で期間を指定する演算子です。-label: は指定ラベルの除外です。処理済みラベルを検索条件で除外するのが、二重処理を防ぐ第1の仕組みになります。

※ 出典: Google — Gmail で使用できる検索演算子(取得 2026-09)

ステップ4 — Claude に分類させる(構造化出力)

Claude API の Messages API は POST /v1/messages に、ヘッダー x-api-keyanthropic-versioncontent-type を付け、本文に modelmax_tokensmessages を入れて呼びます。指示は system に書きます。応答の content 配列の text に本文が入り、usage に入出力トークン数が返ります。

※ 出典: Anthropic — Messages API(取得 2026-09)

返答を決まった形で受け取るには、構造化出力を使います。リクエストの output_config.formattype: "json_schema" とスキーマを渡すと、スキーマに合う JSON だけが返ります。この機能は GA(一般提供)で、ベータヘッダーは不要です。Haiku 4.5・Sonnet 5・Opus 5.5 のいずれも対応しています。

※ 出典: Anthropic — Structured outputs(取得 2026-09)

Apps Script から外部 API を呼ぶのは UrlFetchApp.fetch(url, params) です。methodheaderspayloadcontentType を指定し、muteHttpExceptions: true を付けると HTTP エラーで例外にならず、応答コードを自分で判定できます。

※ 出典: Google — Apps Script Class UrlFetchApp(取得 2026-09)

ステップ5 — ラベルと下書きを付ける

分類ラベルを thread.addLabel で付け、確信度が低いか要確認フラグが立ったものには「要確認」も付けます。下書き文が返ってきたスレッドには thread.createDraftReply(本文) で下書きを作ります。最後に処理済みラベルを付けます。順序が大事で、処理済みラベルは最後に付けます。途中で例外が出たスレッドを、次回もう一度拾えるようにするためです。

ステップ6 — 時間トリガーで回す

Apps Script の時間主導型トリガーは「1分ごとから月1回まで」の間隔で設定できます。作成した人のアカウントで動き、失敗すると作成者にメールで通知が届きます。エディタの「トリガー」から手で作るか、コードで ScriptApp.newTrigger("triageInbox").timeBased().everyMinutes(10).create() のように作ります。

※ 出典: Google — Installable Triggers(取得 2026-09)

日次で決まった時刻に動かす場合は注意が1つあります。公式ドキュメントは「9時のトリガーを作ると、Apps Script は9時から10時の間の時刻を選び、その時刻を日ごとに一定に保つ」と説明しています。分単位で正確な時刻が必要な業務には向きません。

共有の受信箱をこの手順で自分たちで仕分ける場合の進め方と止め方は、企業向けの実務書にもまとめています。

コピペで使えるコード

ラベル名・分類・モデル ID は CONFIG にまとめました。分類の一覧はステップ1で作ったラベル名と一致させます。

javascript
const CONFIG = {
  model: "claude-haiku-4-5",
  query: "is:unread in:inbox newer_than:2d -label:AI仕分け済み",
  maxThreads: 15,
  categories: ["見積依頼", "既存サポート", "採用", "営業・広告", "その他"],
  draftFor: ["見積依頼"],
  labelDone: "AI仕分け済み",
  labelReview: "要確認",
  minConfidence: 0.7,
};

function triageInbox() {
  const lock = LockService.getScriptLock();
  if (!lock.tryLock(10000)) return; // 前回の実行が終わっていなければ何もしない
  try {
    const apiKey = PropertiesService.getScriptProperties().getProperty("ANTHROPIC_API_KEY");
    if (!apiKey) throw new Error("ANTHROPIC_API_KEY が未設定");
    const threads = GmailApp.search(CONFIG.query, 0, CONFIG.maxThreads);
    for (const thread of threads) {
      const first = thread.getMessages()[0];
      const result = classify(apiKey, first.getSubject(), first.getPlainBody().slice(0, 4000));
      if (!result) continue; // API エラー。処理済みにせず次回に回す
      thread.addLabel(labelFor(result.category));
      if (result.needs_human || result.confidence < CONFIG.minConfidence) {
        thread.addLabel(labelFor(CONFIG.labelReview));
      }
      if (CONFIG.draftFor.includes(result.category) && result.draft_reply) {
        thread.createDraftReply(result.draft_reply);
      }
      thread.addLabel(labelFor(CONFIG.labelDone)); // 最後に付ける
      console.log(JSON.stringify({ thread: thread.getId(), category: result.category, confidence: result.confidence }));
    }
  } finally {
    lock.releaseLock();
  }
}

function labelFor(name) {
  return GmailApp.getUserLabelByName(name) || GmailApp.createLabel(name);
}

function classify(apiKey, subject, body) {
  const schema = {
    type: "object",
    properties: {
      category: { type: "string", enum: CONFIG.categories },
      confidence: { type: "number" },
      needs_human: { type: "boolean" },
      reason: { type: "string" },
      draft_reply: { type: "string" },
    },
    required: ["category", "confidence", "needs_human", "reason", "draft_reply"],
    additionalProperties: false,
  };
  const payload = {
    model: CONFIG.model,
    max_tokens: 800,
    system: SYSTEM_PROMPT,
    messages: [{ role: "user", content: "件名: " + subject + "\n\n本文:\n" + body }],
    output_config: { format: { type: "json_schema", schema: schema } },
  };
  const res = UrlFetchApp.fetch("https://api.anthropic.com/v1/messages", {
    method: "post",
    contentType: "application/json",
    headers: { "x-api-key": apiKey, "anthropic-version": "2023-06-01" },
    payload: JSON.stringify(payload),
    muteHttpExceptions: true,
  });
  const code = res.getResponseCode();
  if (code !== 200) {
    console.error("Claude API " + code + ": " + res.getContentText().slice(0, 300));
    return null;
  }
  const json = JSON.parse(res.getContentText());
  const text = json.content.find((block) => block.type === "text");
  return text ? JSON.parse(text.text) : null;
}

ポイントは3か所です。tryLock で前回の実行が動いていれば何もせず終わること、API がエラーを返したスレッドは continue で飛ばして処理済みラベルを付けないこと、ログに本文を残さず「スレッド ID・分類・確信度」だけを残すことです。

LockService の公式説明は「コードの一部への同時アクセスを防ぐ。複数のユーザーやプロセスが共有リソースを変更するときの衝突を防ぐのに役立つ」です。時間トリガーが重なったときの二重処理を、この1行で防ぎます。

※ 出典: Google — Apps Script Class LockService(取得 2026-09)

コピペで使える分類プロンプト

SYSTEM_PROMPT の中身です。分類の定義と「人に回す条件」と「下書きを書く条件」を、業務側が日本語で書きます。ここが仕組みの本体で、コードより時間をかける価値があります。

text
あなたは当社の代表アドレスに届いた問い合わせメールを一次仕分けする担当です。
メールの件名と本文を読み、次の JSON を返してください。

category は次のいずれか1つ:
- 見積依頼: 料金・見積・提案を求めている
- 既存サポート: すでに契約・購入した相手からの質問や不具合の連絡
- 採用: 求人への応募、採用に関する質問
- 営業・広告: 当社への売り込み、広告・掲載の勧誘
- その他: 上のどれにも当てはまらない

confidence は 0 から 1 の数値。迷いがあれば低くしてください。

needs_human は次のどれかに当てはまれば true:
- 返金・解約・苦情・損害・法的措置・弁護士 の語がある
- 期限が今日または明日と書かれている
- 本文が極端に短い、または内容が読み取れない
- 添付ファイルの内容を前提にしている

draft_reply は category が「見積依頼」のときだけ、次の型で書く。それ以外は空文字。
- 冒頭で問い合わせへの礼を1文
- 担当者が内容を確認してから折り返す旨を1文
- 確認のために聞きたいこと(対象の業務、時期、規模)を箇条書きで3つまで
- 結び1文。署名は書かない
- 料金・納期・できることの約束は書かない

reason には判断の根拠を40字以内で書く。

下書きに「料金・納期・できることの約束を書かない」と明記するのは、機械が書いた文が会社の約束になるのを防ぐためです。約束は人が下書きを直す段階で入れます。

人が送る線引き — 自動でよいこと・人が見ること

自動でよいこと人が見ること
分類ラベルを付ける分類が合っているか(違えば付け替える)
「要確認」ラベルを付ける要確認の中身を読み、担当を決める
定型で答えられる分類に下書きを作る下書きを読み、約束事を足して送る
実行ログに ID・分類・確信度を残す週1回、確信度が低かった件と付け替えた件を見直す
API エラーの件を次回に回す同じ件が何度も残っていたら原因を見る

「付け替えた件」の記録が、分類プロンプトを直す材料になります。付け替えが多い分類は定義が曖昧で、要確認が多すぎるなら条件が広すぎます。

止まらない・二重処理しない・気づける運用

無人で動く仕組みは、止まっていることに気づけない作りが一番の問題です。次の4つを最初から入れます。

  1. 失敗の通知。 時間トリガーが失敗すると Apps Script が作成者にメールを送ります。通知先が退職者の個人アカウントにならないよう、トリガーは共有の管理用アカウントで作ります
  2. 実行ログの確認場所。 エディタの「実行ログ」は開発中の確認用で長くは残りません。継続的な確認は script.google.com の「実行数」の一覧か、Cloud Logging で行います
  3. API エラーの扱い。 Claude API は 429(レート制限や支出上限)・500(内部エラー)・529(一時的な過負荷)を返すことがあります。公式は 500 を指数バックオフで再試行するよう案内しています。この仕組みでは再試行を組み込まず、失敗した件を次回の実行に回す設計にしています
  4. 1回に扱う件数の上限。 1回の実行は6分までなので、maxThreads を小さく保ち、間隔を短くして繰り返します

※ 出典: Google — Installable Triggers(取得 2026-09)/Google — Logging(Apps Script)(取得 2026-09)/Anthropic — Claude API errors(取得 2026-09)/Google — Quotas for Google Services(取得 2026-09)

支出の上限は Claude Console のワークスペース単位で設定でき、上限に達すると API は 400 または 429 を返します。仕分け用のキーを専用ワークスペースに置き、上限を小さく切っておくと、設定ミスで大量に呼び出したときの被害を金額で止められます。

※ 出典: Anthropic — Claude API errors(400 と 429 の説明)(取得 2026-09)

効果の測り方 — 記録表の型

数字は自社で取ります。仕組みを入れる前に1〜2週間、次の表を手で付けておくと、入れた後との比較ができます。

記録する項目前(手作業)後(仕組みあり)
1日の問い合わせ件数手で数える実行ログの件数
最初の返信までの時間受信時刻と返信時刻の差同じ
分類の付け替え件数該当なし人が付け替えた件数
要確認になった件数該当なしラベル数
下書きをそのまま使えた割合該当なし送信前に直した箇所の有無を記録
仕分けに使った人の時間担当者の自己申告見直しに使った時間

「最初の返信までの時間」だけを追うと、下書きをろくに読まずに送る動機が生まれます。「付け替え件数」と「直した箇所」をセットで追い、品質の指標を必ず1つ入れます。

導入前セルフチェックリスト(12項目)

  • プライバシーポリシーの利用目的に、問い合わせへの対応が含まれている
  • 外部 AI に送る範囲を「件名と本文テキストのみ」と決め、添付は送らない
  • 全社の AI 利用規程があり、この仕組みがその範囲に入っている
  • 分類ラベルは7個以内で、「その他」がある
  • 「人が確認する条件」を業務側が日本語で書いた
  • 下書きを作る分類を、定型で答えられるものに限定した
  • 下書きに料金・納期・約束を書かせない指示を入れた
  • API キーはプロパティサービスに置き、スクリプトの編集権限を絞った
  • 仕分け用のキーを専用ワークスペースに置き、支出上限を設定した
  • トリガーは共有の管理用アカウントで作り、失敗通知が届く先を確認した
  • 処理済みラベル・LockService・エラー時の持ち越しの3つが入っている
  • 導入前の1〜2週間分の記録表を取った

よくある失敗パターン 5つ

失敗何が起きるか防ぎ方
送信まで自動にした誤分類のメールに定型返信が飛び、取り消せない下書きまでに留める。送信は人
分類を細かくしすぎた判定が割れ、要確認だらけになる7個以内。迷うものは「その他」へ
処理済みラベルを最初に付けた途中で例外が出た件が二度と拾われない処理済みは最後。エラー時は付けない
本文全文をログに残した個人情報が実行ログに蓄積するID・分類・確信度だけを残す
モデル ID を直書きした退役時にコードを探して直すことになる設定値にまとめ、退役告知を追う

公式ドキュメント・リソース集

よくある質問

Q. 返信の送信まで自動にしてはいけませんか?

止めておくことを勧めます。分類を間違えたメールに自動返信が飛ぶと、取り消せません。Apps Script には createDraftReply という下書きを作るメソッドがあり、下書きまでを機械に任せ、人が読んでから送る形にすると、間違いが表に出る前に止められます。送信の判断を人に残すのが、この仕組みの安全装置です。

Q. 問い合わせメールには氏名や連絡先が入っています。Claude に送ってよいのですか?

個人情報保護委員会は、事業者が個人情報を含むプロンプトを入力する場合に、特定した利用目的の範囲内であることと、提供事業者がその個人データを機械学習に利用しないことを十分に確認するよう求めています。Anthropic は API など商用製品の入出力を既定では学習に使わないと明記しています。自社の利用目的に問い合わせ対応が含まれるかを先に確かめてください。

Q. どのモデルを使えばよいですか?費用はどのくらいですか?

分類と短い下書きなら、公式が最速と位置づける Claude Haiku 4.5 から始めるのが妥当です。料金は入力 $1 / 出力 $5(100万トークンあたり、2026年9月時点)で、問い合わせ1通あたりの入出力はごく小さいため、費用より Apps Script 側の実行時間の上限を先に気にすることになります。判定が不安定なら Sonnet 5 に切り替えて比べます。

※ 出典: Anthropic — Pricing(取得 2026-09)

Q. 同じメールに二重にラベルが付いたり、下書きが2つできたりしませんか?

3つの仕組みで防ぎます。処理済みラベルを付けて検索条件で除外する、LockService で前回の実行が終わるまで次の実行を始めない、Claude API がエラーを返したメールには処理済みラベルを付けずに次回に回す、の3つです。Apps Script の1回の実行は6分までなので、1回に扱う件数も絞ります。

※ 出典: Google — Quotas for Google Services(取得 2026-09)

Q. 社内にプログラマーがいなくても組めますか?

この記事のコードは Apps Script のエディタに貼り付けて、API キーとラベル名を設定すれば動く形にしています。ただし、分類の基準と返信文の型を決めるのは業務側の仕事で、ここに時間をかける価値があります。ラベルの体系と「人が確認する条件」を先に紙で決めてから、コードに移してください。

次の一歩

まず、チェックリストの最初の3項目(利用目的・送る範囲・社内規程)を確かめてください。ここが未整備なら、コードより先に整えるのが順序です。次に、分類ラベルと「人が確認する条件」を業務側が紙に書き、コードの CONFIGSYSTEM_PROMPT に写します。最初の2週間は maxThreads を小さくし、付け替え件数を毎日見て、分類の定義を直します。

自社の問い合わせの種類に合わせた分類の設計、既存の顧客管理や社内システムとの接続、全社の AI 利用規程との整合まで含めて相談したい場合は、状況を書き添えてお問い合わせください。Claude の法人導入全般の考え方は Claude 導入支援 に、サービスの一覧はサービスにまとめています。

更新履歴

  • 2026-09-24: 初版公開

関連ページ

Tufe Company

AI Division

Tufe Company の編集部。AI・SEO・LLMO・業務自動化に関する実務で得た知見を、 現場で使える形にして発信しています。記事への質問やテーマのリクエストは お問い合わせフォームからどうぞ。

§ Tufe Market · 今日から動かす

相談ではなく、いま手を動かしたい方へ。

この記事と関連するTufeの即時納品プロダクト。問い合わせ不要、決済後すぐにダウンロード/レポート納品されます。

01

AI Search Pack

自社サイトを「AI 検索から引用されるサイト」に。llms.txt、robots.txt、構造化データを AI がその場で書き出します。

¥2,980Instant
02

AI Search Health Check

毎月、DataForSEO LLM Responses API経由でChatGPT + Claude + Gemini + PerplexityのモデルAPIをWeb検索有効・10プロンプト(最大40 calls)で定点観測。名称・公式ドメイン参照、応答内SoV、AI検索量、Google AI Overview引用を分けて報告し、robots.txt・公式情報・JSON-LDの改善案を更新します。消費者向け各サービス画面の順位ではありません。

¥14,800/月Subscription
03

Review Booster

Map Pack 1-3 位の店の口コミ実本文を並列取得して、自店と並べる。AI が「他店だけ褒められてる強み」「自店だけ叩かれてるテーマ」を本文単位で抽出。返信テンプレ 15 種、印刷向け SVG POP、声かけ台本、依頼文 5 チャネル、GBP 投稿カレンダー 12 ヶ月分も同梱。QR から先までの動線が、まるごと揃う。

¥7,980Instant
§ Postscript · 読者の方へ

ここまで読んでくださって、ありがとうございます

記事の内容を自社で試したい、あるいは近い課題にどう手をつけるか相談したい — そういう方は、一度 Tufe Company にご連絡ください。 AI・SEO・LLMO・業務自動化の領域で、中小企業の現場に合わせた支援を行っています。

  • お問い合わせ・初回ヒアリングは無料
  • 現状分析と、具体的な次の一手を書面でお渡しします
  • 契約前提の相談ではありません。判断は後日で問題ありません