Media > AI活用ユースケース > 経営企画 > 他の自治体が公表する新しい施策・条例・計画をエージェントが毎月見回り、自分の市の重点課題と照らして参考になる事例を選び、概要と問い合わせ先の一覧を企画担当へ出す

他の自治体が公表する新しい施策・条例・計画をエージェントが毎月見回り、自分の市の重点課題と照らして参考になる事例を選び、概要と問い合わせ先の一覧を企画担当へ出す

実装ステータス:構成例 技術的に実現可能な構成として設計したもの。自社未検証

比較の対象に決めた他の自治体の報道発表や新着情報を、エージェントが毎月見回ります。新しい施策・条例・計画の中身と問い合わせ先を書かれたとおりに取り出し、自分の市の重点課題と既存の事業に照らして、参考事例の一覧を企画担当へ出します。

サマリー
生成AI
ChatGPT/Claude/Gemini
連携・自動化
Make/n8n/Power Automate/Zapier
対象業界
自治体
対象部門
経営企画
対象業務
情報検索/比較検討
主な課題
人手が足りない/属人化している/情報が見つからない
AIで行う処理
エージェント
主な効果
判断支援/工数削減/検索時間短縮
導入難易度
★★★☆☆
実装レベル
本格構成
費用感
API連携(中)
人間の確認
条件付き
現在工数
40h/月
AI導入後
12h/月
想定削減
70%
年間削減
336h
モデル条件による試算値です。実在企業の実績ではありません。

01導入前 / 導入後の業務フロー

導入前(Before)
  1. 月初に、担当者が受け持ちの自治体のページを順に開き、前月から増えた項目を探す
  2. 重点課題に関わりそうな公表を開き、資料(PDF)を読む
  3. 施策の名前、対象、内容、開始時期、予算(書かれていれば)、担当課と問い合わせ先を書き出す
  4. 自分の市の重点課題のどれに関わるか、自分の市に似た事業があるかを考える
  5. 自分のメモに記録し、目立つものは課内の打合せで紹介する
  6. 所管課から問い合わせがあれば、メモを探して渡す
導入後(After)
  1. 自動毎月1日と16日の朝にワークフローが動き、見回りのページの一覧を読む
  2. 自動RSS のあるページは RSS で、無いページは HTML からリンクと見出しを取り出す
  3. 自動これまでに見たリンクの表と比べ、新しい公表だけを残す
  4. 【AI】 見出しと冒頭の文から、重点課題に関わりそうかを一次の仕分けする
  5. 【AI】 関わりそうなものは、エージェントがページと資料を読み、施策の中身と問い合わせ先を書かれたとおり取り出す
  6. 【AI】 エージェントが重点課題の表、自分の市の事業の表、これまでの参考事例の表を引き、関係と重なりを付ける
  7. 自動参考事例の一覧に書き込み、重点課題ごとにまとめて企画政策課のチャットに知らせる
  8. 人企画担当が一覧を確かめ、参考にするものを選び、所管課へ回す
各工程の詳しい説明を読む
  1. 月初に、担当者が受け持ちの自治体のページを順に開き、前月から増えた項目を探す
  2. 重点課題に関わりそうな公表を開き、資料(PDF)を読む
  3. 施策の名前、対象、内容、開始時期、予算(書かれていれば)、担当課と問い合わせ先を書き出す
  4. 自分の市の重点課題のどれに関わるか、自分の市に似た事業があるかを考える
  5. 自分のメモに記録し、目立つものは課内の打合せで紹介する
  6. 所管課から問い合わせがあれば、メモを探して渡す

(a)見回りが担当者に依存している。 どの自治体の、どのページの、どの見出しの下に新しい公表が出るかを、担当者が覚えています。異動のある職場で、受け持ちが替わるたびに見るページが変わります。 引き継ぎの資料に「月初にこのページを見る」と書いても、どこまで見たかは残りません。

(b)同じ話を何度も読む。 国の交付金の制度ができると、比較の対象の半分近くが似た名前の事業を同じ月に公表します。中身はほとんど同じでも、4人がそれぞれ読み、それぞれ書き出しています。 独自の工夫のある1件が、その中に埋もれます。

(c)見つけた事例が使える形で残らない。 メモの書き方は担当者ごとに違い、重点課題との関係も、問い合わせ先も、書いてある人と書いていない人がいます。 所管課から問い合わせ先を聞かれて、元のページを探し直すことがあります。

(d)自分の市の事業との重なりが見えない。 他の市の新しい事業が、自分の市ですでに名前を変えて行っている事業と同じことがあります。所管課に紹介してから「うちでもやっています」と返ってくると、紹介の信用が下がります。

  1. 【自動】 毎月1日と16日の朝にワークフローが動き、見回りのページの一覧を読む
  2. 【自動】 RSS のあるページは RSS で、無いページは HTML からリンクと見出しを取り出す
  3. 【自動】 これまでに見たリンクの表と比べ、新しい公表だけを残す
  4. 【AI】 見出しと冒頭の文から、重点課題に関わりそうかを一次の仕分けする
  5. 【AI】 関わりそうなものは、エージェントがページと資料を読み、施策の中身と問い合わせ先を書かれたとおり取り出す
  6. 【AI】 エージェントが重点課題の表、自分の市の事業の表、これまでの参考事例の表を引き、関係と重なりを付ける
  7. 【自動】 参考事例の一覧に書き込み、重点課題ごとにまとめて企画政策課のチャットに知らせる
  8. 【人】 企画担当が一覧を確かめ、参考にするものを選び、所管課へ回す

4番目と5番目を分けているのは、意図してのことです。 新しい公表の多くは、イベントの案内や募集の結果など、重点課題に関わらないものです。全件をエージェントに読ませると、利用料と時間がかさみ、確かめる量も増えます。 見出しで振り落としたものも件数と見出しは残し、振り落としすぎていないかを後から見られるようにします。

8番目の判断は、すべて人が行います。 エージェントが出すのは「この重点課題に関わる可能性がある新しい事例」と、その根拠です。

02今回想定するシステム構成

構成図
見回りのページの一覧(比較の対象30自治体、約90ページ。Data table)
   │
   ▼【トリガー】Schedule Trigger(毎月1日・16日 7時、Asia/Tokyo)
n8n のワークフロー
   ├──▶ RSS のあるページ:RSS Read で項目を読む
   ├──▶ RSS の無いページ:HTTP Request で取り、HTML ノードでリンクと見出しを取り出す
   ├──▶ 見たリンクの表(Data table)と比べ、新しい公表だけを残す
   ├──▶ 見出しと冒頭の文で一次の仕分け(重点課題のどれか/関係なし)
   ▼
AI Agent ノード(Tools Agent)+ Claude
   │  新しい公表1件ごとに、道具を選んで引く
   │   ・ページと資料を取る(HTTP Request)
   │   ・重点課題の表を引く   ・自分の市の事業の表を引く
   │   ・これまでの参考事例の表を引く
   │  Structured Output Parser で決まった形のJSONを返す
   ▼
参考事例の一覧(Data table)→ 重点課題ごとに企画政策課のチャットへ
   ▼【人】参考にする事例の選定・所管課への回付
役割想定する製品代替候補
ワークフローn8nMake、Power Automate、Zapier
生成AIClaude API(n8n の Anthropic Chat Model ノード)OpenAI API、Gemini API
保管n8n の Data tables(見回りのページ、見たリンク、参考事例)PostgreSQL
通知庁内のチャットメール

新しく足すのは、n8n のワークフローと、その中の3つの表だけです。 庁内の基幹のシステムにはつなぎません。扱うのは他の自治体が公開しているページと、自分の市の総合計画と事業の一覧で、いずれも公表された情報です。

表は n8n の Data tables に持たせます。 Data tables は、外部のデータベースに頼らずにワークフローの中でデータを保存し、扱える、プロジェクト単位の表とされています。インスタンス全体の既定の上限は 200 MiB で、セルフホストでは環境変数で変えられ、上限に達すると手での追加ができなくなり、ワークフローの実行がエラーになるとされています。この構成の表は見出しとURLと短い要約が中心で、上限に近づくものではありませんが、ページの本文は表に入れません。

RSS は RSS Read ノードで読みます。 RSS Read は、インターネットに公開された RSS からデータを読むノードで、パラメーターは URL だけです。RSS の無いページは HTTP Request で取り、HTML ノードの Extract HTML content で、CSS セレクターを使ってリンク先(属性)と見出し(テキスト)を取り出します。

n8n を選ぶ理由は、公表1件ごとに読み方が変わるからです。 報道発表の本文だけで足りるもの、PDFの資料を開かないと対象や開始時期が分からないもの、自分の市の事業の表を引いて重なりを確かめるものがあります。Tools Agent は、外部の道具と API を使って情報を取り、タスクに応じてどの道具を使うかを決めるとされています。

03どうやって実装するのか

Step1

処理の起点を決める

毎月1日と16日の朝7時に、Schedule Trigger で動かします。 題材は毎月の見回りですが、月に2回にするのは、月初に公表された事例を翌月まで知らないままにしないためです。 工数の試算は月の件数で数えているので、回数を増やしても件数は変わりません。

Schedule Trigger は、ワークフローのタイムゾーンが無ければインスタンスのタイムゾーンを使い、セルフホストの既定は America/New York とされています。ワークフローのタイムゾーンを Asia/Tokyo にします。Schedule Trigger を使うワークフローは、保存して公開する必要があるとされています。月単位の間隔では日付を1〜31で指定でき、その日が無い月には動かないとされているので、29日以降は指定しません。

見回りのページは、URLの一覧として Data table に持ちます。 列は自治体名、ページの種類(報道発表/新着情報/条例/計画・意見募集)、RSS の有無、見る見出しの CSS セレクター、比較の対象に選んだ理由です。追加も削除も、表を直すだけで済みます。 第3章の(a)は、この表で解きます。

Step2

入力データを集める

データ中身取得元
見回りのページの一覧自治体名、URL、ページの種類、RSS の有無、CSS セレクターData table(企画政策課が作る)
見たリンクの表ページごとのリンク、見出し、最初に見た日Data table(前回までの実行の記録)
新しい公表見出し、リンク先の本文、添付のPDF各自治体のページ
重点課題の表重点課題の名前、総合計画の中の位置、言い換えの語、いまの課題の説明Data table(企画政策課が作る)
自分の市の事業の表事業名、所管課、対象、内容の要約、関わる重点課題Data table(予算書と事務事業の一覧から作る)
これまでの参考事例自治体名、施策名、関わる重点課題、国の制度の名前、企画担当の判断Data table(この構成の出力)

質を決めるのは、重点課題の表の「言い換えの語」です。 他の自治体は、同じ取り組みを違う言葉で呼びます。移住・定住は「関係人口」「二地域居住」「お試し移住」、空き家は「住宅ストック」「管理不全」と書かれます。言い換えの語が無いと、一次の仕分けで落とします。 最初は課の4人で、それぞれの分野で見かける言葉を出し合って作ります。

自分の市の事業の表は、第3章の(d)を解くために持ちます。 事業名だけでなく内容の要約を入れておくと、名前の違う同じ事業にエージェントが気づけます。予算書の事業名は短く、それだけでは中身が分からないので、事務事業の一覧の説明から要約を作ります。

Step3

データの取得方法を決める

取るものどこからどう取るか
RSS の項目RSS のあるページRSS Read(URL を一覧の表から渡す)
ページのHTMLRSS の無いページHTTP Request(GET)、Response Format は Text
リンクと見出し取ったHTMLHTML ノードの Extract HTML content(a 要素の属性とテキスト)
新しい公表今回のリンクと、見たリンクの表表に無いリンクだけを残す
公表の本文と資料新しいリンクの先エージェントの道具の HTTP Request

リンクの比較は、リンク先のURLと見出しの文字の組で行います。 自治体のページでは、同じ資料が更新されるとURLはそのままで見出しの日付だけが変わることも、URLが変わって見出しはそのままのこともあります。どちらか片方が変わったものは「更新」として拾い、一覧では新しい公表と分けて示します。

ページは、決まったURLだけを月2回取ります。 サイト全体を巡回しません。HTTP Request の Batching の Batch Interval で、1件ずつ間を空けて取ります。 自治体のサイトは住民のためのもので、見回りの負荷をかけないことが前提です。

取得の失敗は、Response のオプションで扱います。 Include Response Headers and Status を有効にすると、本文だけでなくステータスコードも受け取れます。 404 や 503 は「本日取得なし」として記録し、前回の一覧を今回とみなしません。

Step4

AIへ渡す前に整形する

  1. ページの共通部分を外す … メニュー、フッター、関連リンクは毎回同じなので、CSS セレクターで見る見出しの下だけに絞ります
  2. 関係の無い種類を落とす … イベントの開催報告、職員の採用、入札の結果、選挙の告示など、見出しの決まった言葉で分かるものは規則で落とします
  3. 一次の仕分けをする … 残った見出しと冒頭の文を生成AIに渡し、重点課題のどれに関わるか、関係が無いかだけを返させます
  4. 同じ公表の重複を除く … 新着情報と報道発表の両方に同じものが出ることがあります。リンク先のURLで1つにまとめます
  5. PDFの文字が取れるかを確かめる … 画像だけのPDFは文字が取れません。取れた文字数が少なければ「資料の中身は未確認」として人に回します

2番目と3番目は、落としたものの数を残します。 規則で落とした件数、一次の仕分けで「関係なし」とした件数と見出しを、実行ごとに記録します。関係のある事例を落としていないかは、この記録を月に1回、人が流し読みして確かめます。

Step5

AIに処理させる

させるのは、新しい公表1件ごとに、施策の中身と問い合わせ先を書かれたとおりに取り出し、重点課題と自分の市の事業に照らして関係と重なりを付けることです。

させること使う道具返すもの
公表の本文と資料を読むページと資料を取る本文、資料の題名
施策の中身を取り出す-施策名、種類(条例/計画/事業/実証)、対象、内容、開始時期、予算(書かれていれば)
国の制度との関係を記録する-本文に書かれた国・県の制度や交付金の名前、独自と書かれているか
問い合わせ先を写す-担当課、電話番号、メール(書かれたとおり)
重点課題に照らす重点課題の表を引く関わる重点課題と、根拠にした本文の文
自分の市の事業と比べる自分の市の事業の表を引く内容の近い事業と、どこが違うか
これまでの事例と比べるこれまでの参考事例の表を引く同じ制度・同じ施策の過去の事例

国の制度との関係は、本文に書かれた名前だけで記録させます。 「国の○○交付金を活用し」のように本文に制度の名前があれば、それを写します。書かれていなければ「記載なし」で、独自の施策だと決めつけません。 一覧では、制度の名前が同じ事例をまとめて1つの塊にし、塊の外にあるものを先に並べます。 第3章の(b)は、ここで解きます。

させないこと理由
問い合わせ先の補完課の名前や電話番号を記憶や推測で書くと、所管課が誤った先に連絡する
施策の評価(「先進的」「効果が高い」)良し悪しは企画担当と所管課が、資料と問い合わせで判断する
効果の数字の作成ページに書かれた実績の数字だけを写す。計算や見込みを足さない
自分の市に取り入れるべきかの結論重なりの事実だけを書く
開始時期・予算の推測書かれていなければ「記載なし」

1行目がいちばん起きやすい失敗です。 報道発表の本文に担当課しか書かれていないと、生成AIはその自治体の代表電話や、よくある課の名前を補って書きます。補った電話番号に所管課が電話をかけると、相手の自治体の別の課の手を止めます。 書かれていなければ空欄にし、ページのURLを添えるだけにします。

Step6

指示内容を固定する

AI Agent ノードの System Message に、次のように書きます。

あなたは市の企画政策課で、他の自治体の新しい施策・条例・計画の公表を、
本市の総合計画の重点課題と照らす担当です。入力は、新しく見つかった
公表1件(自治体名、見出し、URL、一次の仕分けで付いた重点課題)です。

【やること】
1. 道具でページと添付の資料を取り、施策名、種類(条例/計画/事業/実証)、
   対象、内容、開始時期、予算を取り出す。
2. 本文に国・県の制度や交付金の名前があれば、そのまま写す。
3. 担当課、電話番号、メールアドレスを、本文に書かれたとおりに写す。
4. 重点課題の表を引き、関わる重点課題と、根拠にした本文の文を挙げる。
5. 本市の事業の表を引き、内容の近い事業があれば、どこが同じで
   どこが違うかを書く。
6. これまでの参考事例の表を引き、同じ制度・同じ施策の事例があれば挙げる。

【厳守事項】
- 施策名、対象、開始時期、予算、実績の数字は、本文と資料に書かれた
  文言をそのまま写してください。書かれていなければ「記載なし」です。
- 担当課・電話番号・メールアドレスは、本文に書かれていないとき空欄に
  してください。推測で補わないでください。contact_in_source を false に
  してください。
- 国・県の制度の名前は、本文に書かれているときだけ書いてください。
  書かれていないことを理由に「独自の施策」と書かないでください。
- 施策を「先進的」「効果が高い」などと評価しないでください。
- 本市に取り入れるべきかを書かないでください。本市の事業との重なりは、
  事実だけを書いてください。
- 重点課題に関わらないと判断したときは relevant を false にし、
  取り出しをしないでください。

【出力】指定のJSONの形で返してください。

「問い合わせ先を補わない」と「contact_in_source」を組にしているのが、この指示の要です。 補わないよう指示するだけだと、本文にあった連絡先と、補った連絡先の区別が出力から消えます。 本文にあったかどうかを項目として持たせれば、後段の規則でfalse の事例は一覧で「問い合わせ先は元のページで確認」と表示する、と決められます。

「書かれていないことを理由に独自と書かない」も同じ考えです。 制度の名前が本文に無いのは、書いていないだけのことが多くあります。独自かどうかの見立ては、企画担当が資料と問い合わせで確かめます。

Step7

出力形式を固定する

Structured Output Parser で、次の形のJSONを返させます。

{
  "municipality": "",
  "source_url": "",
  "title": "",
  "relevant": true,
  "measure": {
    "name": "", "type": "ordinance | plan | project | pilot",
    "target": "", "summary_quote": "",
    "start": "", "budget": ""
  },
  "national_scheme": { "name_in_source": "", "in_source": false },
  "contact": { "section": "", "tel": "", "email": "", "contact_in_source": true },
  "priority_issues": [ { "issue": "", "evidence_quote": "" } ],
  "own_overlap": [ { "project": "", "department": "", "same": "", "different": "" } ],
  "past_cases": [ { "municipality": "", "name": "", "date": "" } ],
  "unverified": [""]
}

1つ目の理由は、national_scheme で一覧の並べ方を変えられることです。 制度の名前が同じ事例は1つの塊にまとめ、件数と自治体名だけを見せます。塊の外にある事例、つまり制度の名前の無い事例と、制度に乗りながら対象や中身が他と違う事例を先に並べます。

2つ目は、own_overlap で紹介の前に重なりが見えることです。 自分の市の事業と重なる事例は、所管課へ回す前に「本市の○○事業と対象が同じで、違うのは申請の方法」と書き添えられます。 第3章の(d)は、ここで解けます。

3つ目は、contact_in_source で補った連絡先を締め出せることです。

並べ順中身
1重点課題に関わり、national_scheme の名前が無く、own_overlap が空の事例
2制度に乗っているが、対象や中身が同じ制度の他の事例と違う事例
3同じ制度の事例の塊(件数と自治体名だけ)
4own_overlap がある事例(本市の事業と比べる材料として)
5一次の仕分けで関係なしとした件数と見出し

5行目も消さずに残します。 「関係なし」も、見回りをした記録だからです。

Step8

システムへ連携する

つなぎ先方式内容
各自治体のページRSS Read、HTTP Request(GET)新着の項目、ページ、資料を取る
見回りのページ・見たリンク・参考事例Data table ノード読み取りと書き込み
重点課題・本市の事業Data table ノード(読み取りだけ)エージェントの道具として引く
Claude APIAnthropic Chat Model ノード一次の仕分けと、取り出し・照合
庁内のチャット通知重点課題ごとの一覧

参考事例の表への書き込みは、ワークフローの側で行います。 エージェントの道具には、重点課題・本市の事業・これまでの参考事例を引くための読み取りだけを渡します。エージェントが表を書き換える経路を作りません。

生成AIのノードは Anthropic Chat Model ノードを使います。 Claude のモデルを会話型のエージェントで使うためのノードとされ、最大トークン数やサンプリングの温度を設定できます。取り出しの段では温度を低くし、同じ公表から同じ取り出しが返るようにします。

Step9

人が確認する

  1. 並べ順の1と2を読む … 重点課題ごとに、新しい事例の取り出しと根拠の文を読みます。ここが企画担当の仕事の中心です
  2. 元のページを開く … 参考にしそうな事例は、取り出しと元のページを見比べます
  3. 本市の事業との重なりを確かめる … own_overlap がある事例は、所管課に回す前に重なりの書き方を確かめます
  4. 参考にするかを決める … 参考事例の表に、判断(所管課へ回す/課内の記録に留める/対象外)と理由を残します
  5. 所管課へ回す … 問い合わせ先は、contact_in_source が false なら元のページで確かめてから伝えます
  6. 振り落とした見出しを流し読む … 月に1回、並べ順の5を見ます

4番目の判断の記録は、次の見回りで生きます。 「対象外」と判断した理由が残っていれば、同じ制度の事例が別の自治体から出たときに、エージェントがこれまでの事例として引きます。

目標は、1件をならして12分です。 取り出しと根拠の確認に6分、参考にするかの判断に4分、一覧の確認と回付に2分という見込みです。

Step10

例外に対処する

起きること対応
ページが取れない「本日取得なし」として記録。前回のリンクの一覧を今回とみなさない
サイトの模様替えで全リンクが新しく見える1ページの新しいリンクが決めた件数を超えたら比較を止め、人に回す
PDFが画像だけで文字が取れない資料の題名だけを一覧に載せ、「資料の中身は未確認」とする
本文に問い合わせ先が無い空欄。一覧で「元のページで確認」と表示する
同じ施策が報道発表と新着情報に出るリンク先のURLで1つにまとめる
同じ施策の続報(募集の開始、結果の公表)これまでの参考事例に同じ施策名があれば、続報として紐づける
エージェントの出力がスキーマに合わない見出しとURLだけを一覧に載せ、人に回す
RSS の配信が止まった前回から一定の日数、項目が増えていなければ、ページの見方を HTML に切り替える候補として知らせる

上から2行目は、自治体のサイトの改修のときに起きます。 改修は年度の替わり目に多く、メニューや見出しの作りが変わると、すべてのリンクが新しく見えます。件数の上限を決めておき、超えたら止めるのが、同じ話を数百件並べないための仕組みです。

Step11

記録を残す

  • 実行ごとの、ページの取得の成否とステータスコード
  • 新しく拾った公表と、規則で落とした件数、一次の仕分けで関係なしとした見出し
  • エージェントのJSON出力と、呼んだ道具の順番(Return Intermediate Steps)
  • 企画担当の判断 … 事例ごとの判断と理由、所管課へ回した日
  • 所管課からの反応(問い合わせた、事業の検討に入った、など)

3つ目の道具の順番は、Tools Agent の Return Intermediate Steps を有効にして残します。 エージェントが取った中間の手順を最終の出力に含めるかを選べるとされ、本市の事業の表を引かずに「重なりなし」と書いていないかを後から確かめられます。

04実装レベルの3段階

最小構成:ページの本文と重点課題を生成AIの画面に貼る / 1件ごとの取り出しと照合
半自動化:上記+n8n で見回りのページの新しい公表を拾い、見出しで一次の仕分けをして一覧にする / 見回りと、重点課題ごとの仕分け
本格構成:上記+エージェントによる本文と資料からの取り出し、本市の事業・これまでの事例との照合 / 見回りから参考事例の一覧まで

半自動化だけでも、①の新しい公表を探す時間はほぼ無くなります。 ページの比較と見出しの仕分けは、エージェントを使わずに組めます。残るのは、資料を読んで書き出す②と、本市の事業と照らす③です。 本格構成で減るのは、その②と③と④です。 段階を飛ばさず、半自動化の見回りを2〜3か月回して、拾った公表に漏れが無いかを担当者のこれまでの見回りと比べてから、エージェントを足してください。

05工数削減シミュレーション

前提値(モデル条件)
対象人数
4 名
月間件数
60 件
1件あたり現在時間
40 分
1件あたり導入後時間
12 分
現在  60件 × 40分 ÷ 60 = 40 時間/月
導入後 60件 × 12分 ÷ 60 = 12 時間/月
月間削減時間
28h
削減率
70%
年間削減時間
336h
年間金額換算(時間単価3,500円)
118万円
モデル条件による試算であり、実際の効果は業務内容・運用方法によって異なります。

自社条件で導入効果を整理したい方へ

このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。

AI活用について相談する

06向いている企業・向いていない企業

向いている
  1. 市の企画政策課・政策推進課などで、総合計画の重点課題(子育て、移住・定住、公共交通、空き家、デジタル化など)に関わる他の自治体の新しい取り組みを、担当者が各自治体のWebを見て追いかけている場合。議会の質問や庁内の検討で「他の市ではどうしているか」を聞かれるたびに、調べ直しになっている場合。比較の対象の自治体を、類似団体や近隣、先行例のある自治体として20〜40に決められる場合。
向いていない
  1. 比較の対象が数自治体に限られ、担当者が月に1回ページを見れば足りる場合。総合計画の重点課題が言葉として整理されておらず、照らす先が決まらない場合(先に重点課題の一覧を作ります)。なお、どの事例を自分の市に取り入れるか、他の自治体へ問い合わせるかの判断は、企画担当と所管課が行います。この構成は見つけて並べるところまでで、施策の良し悪しは判断しません。

07最小構成で試す方法

  1. 過去3か月に担当者が見つけた事例から、5件を選ぶ(国の制度に乗った事例と、本市の事業と重なる事例を1件ずつ入れる)
  2. 重点課題の一覧と、関係しそうな本市の事業の説明を書き出す
  3. 生成AIの画面に、各事例のページの本文と、重点課題・本市の事業を貼る
  4. 「施策名・対象・開始時期・問い合わせ先を書かれたとおり取り出し、関わる重点課題と本市の事業との重なりを挙げてください。書かれていないことは記載なしとし、評価はしないでください」と指示する
  5. 出てきた結果を、当時の担当者のメモと比べる
出てきた内容判断
当時のメモと同じ重点課題と重なりが出たワークフローを組む段階に進む
問い合わせ先を補った指示の書き方で直る。contact_in_source を持たせる構成で進める
本市の事業との重なりが出ない事業の表の要約が足りない。 要約を書き足すのが先

3行目が出ることは珍しくありません。 その場合は、重点課題ごとに主な事業10件ほどから、事務事業の一覧の説明を写して要約を作ってください。

08実装時につまずきやすいポイント

問題対策
エージェントが問い合わせ先を補う指示で禁じ、contact_in_source を持たせる
同じ制度の事例で一覧が埋まるnational_scheme で塊にまとめ、塊の外を先に並べる
言い換えで一次の仕分けから落ちる重点課題の表に言い換えの語を持たせ、落とした見出しを月1回見る
本市の事業と重なる事例を紹介してしまう本市の事業の表に内容の要約を持たせる
サイトの改修で全リンクが新しく見える新しいリンクの件数に上限を置き、超えたら止める
自治体のサイトに負荷をかける決まったURLだけ、月2回、間を空けて取る
施策の評価が一覧に混ざる指示で禁じ、取り出しは本文の文言の写しにする
月1回では公表から知るまでが長い月2回動かす。件数の数え方は変えない

上の3行が、この構成の失敗のほとんどです。 どれも「見つけて並べる」と「参考にするか決める」の境目の問題です。AIが拾い、人が選ぶ、の線を出力の形で守ってください。

09セキュリティ・AIガバナンス上の注意点

この構成で扱うデータ: 他の自治体が公開しているページと資料、本市の総合計画の重点課題、本市の事業の一覧です。いずれも公表された情報で、住民の個人情報は扱いません。

  1. 住民の情報を表に入れない … 本市の事業の表には事業の説明だけを入れ、利用者の名簿や相談の記録を道具の先に置きません
  2. 他の自治体のサイトの利用の決まりを確かめる … 見回りの対象を決めるときに、各自治体のサイトの利用の案内を確かめます。自動での取得を断っているサイトは、人が見る一覧に回します
  3. 見回りの負荷を抑える … 決まったURLだけを月2回、間を空けて取ります
  4. 参考にするかの判断は人が行う … この構成が出すのは候補と根拠です。他の自治体の施策の良し悪しを、AIの出力で判断しません
  5. 庁内で生成AIを使うときの決まりに沿う … 外部の生成AIのAPIを使ってよいかは、庁内の生成AIの利用の方針で確かめます。扱うのは公表された情報ですが、一次の仕分けに本市の検討中の事業の情報を混ぜないよう、表に入れる範囲を決めておきます

誤りが起きた場合のリスクは、誤った問い合わせ先を所管課に渡すことと、本市ですでに行っている事業を新しい事例として紹介することの2つです。 前者は連絡先の補完で起き、後者は本市の事業の表の要約の不足で起きます。

10まず何から始めるか

1週目:比較の対象と見回りのページの表を作る

担当者4名に、毎月見ている自治体とページを書き出してもらい、1つの表にします。比較の対象を選び直すなら、類似団体別市町村財政指数表の団体名の一覧を出発点にします。この表ができた時点で、第3章の(a)の半分は解けています。

2週目:5件で試す

第8章の手順で、過去の事例5件の取り出しと照合をさせます。問い合わせ先を補っていないかと、本市の事業との重なりが出るかを見ます。

3週目:重点課題の表と本市の事業の表を作る

重点課題ごとに言い換えの語を出し合い、主な事業の要約を事務事業の一覧から写します。

4週目:見回りと一次の仕分けを n8n で動かす

RSS とページの比較、見出しでの一次の仕分けまでを組みます。エージェントはまだ入れず、拾った公表を担当者の見回りと2〜3か月比べます。

それ以降: エージェントを足し、参考事例の表に企画担当の判断を毎月残します。議会の質問の準備で、表を絞るだけで答えの材料がそろうようになった時点で、この構成は完成です。


11関連ユースケース

12この仕組みを理解するための記事

13技術仕様の確認日・参考情報

技術仕様確認日:2026-10-08/最終更新:2026-10-08
確認した内容情報源確認日
令和6年度類似団体別市町村財政指数表が公表され、類型の設定と市町村の選定の章、政令指定都市・特別区・中核市・特例市・都市類型・町村類型ごとの表、都道府県別団体名一覧表が載っていること(原文を取得して確認)総務省: 令和6年度類似団体別市町村財政指数表2026-10-08
Schedule Trigger が、ワークフローのタイムゾーンかインスタンスのタイムゾーン(セルフホストの既定は America/New York)を使うこと。保存して公開する必要があること。月単位では日付を1〜31で指定でき、その日が無い月には動かないことn8n Docs: Schedule Trigger2026-10-08
RSS Read ノードが公開された RSS からデータを読み、パラメーターが URL であることn8n Docs: RSS Read2026-10-08
HTTP Request ノードの Response のオプション(Include Response Headers and Status、Response Format)と Batching(Batch Interval)。AIエージェントの道具として使えることn8n Docs: HTTP Request2026-10-08
HTML ノードの Extract HTML content が、CSS セレクターで属性・テキストなどを取り出せることn8n Docs: HTML2026-10-08
Data tables がプロジェクト単位の表で、ワークフローの中でデータを保存・操作できること。インスタンス全体の既定の上限が 200 MiB で、セルフホストでは変更でき、上限に達すると実行がエラーになることn8n Docs: Data tables2026-10-08
Tools Agent が外部の道具と API を使い、タスクに応じて使う道具を決めること。System Message、出力パーサー(Structured Output Parser)、Return Intermediate Steps のオプションn8n Docs: Tools Agent2026-10-08
Anthropic Chat Model ノードが Claude のモデルを会話型のエージェントで使うためのノードで、最大トークン数とサンプリングの温度を設定できることn8n Docs: Anthropic Chat Model2026-10-08

比較の対象の自治体のサイトの利用の決まりは、各自治体の案内で確かめてください。 本記事は確認できた範囲だけを扱っています。

実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。

自社の業務に使えるAI活用候補を整理します

このユースケース(UC-0919)についてのご相談はこちらから。

AI活用について相談する
目次