災害時の SNS 発信文を Claude Code で多言語化
はじめに

午前 3 時 12 分、線状降水帯が市域にかかり「土砂災害警戒情報」が発令さ
れました。広報担当の机に電話とチャットが同時に鳴ります。「英語、中国語、ベトナム語で X と Facebook と Instagram、5 分で出してください」。
深夜の宿直は 2 人、片方は防災対策本部に詰めています。残った 1 人が DeepL のタブを 6 つ開いて、ハッシュタグを手で打ち、絵文字を消し、「警戒区域」を訳しわけ、文字数を 280 に削ります。
30 分後、英語版だけ間に合いました。翌朝、在留外国人支援団体から「ベトナム語が出てなかったですよね」とメッセージが届きます。
これが多くの自治体広報の現在地です。本稿は、`.claude/skills/disaster/translate-sns/SKILL.md` 1 枚と、災害種別ごとのテンプレ 4 枚で、この 30 分を 2 分に圧縮する設計を示します。Claude Code を入れた職員の机から始められる、起案・決裁ゼロの個人改善ルートです。
災害時広報の修羅場として典型的に語られるのは、深夜から早朝にかけての気象警報発令時です。中規模市 (人口 10-30 万人) の宿直体制では広報担当が 1-2 人、片方は対策本部詰めで実質 1 人が SNS と Web の更新を回します。1 言語あたり原稿確定から配信までに 15-25 分、6 言語なら 90-150 分かかる例が珍しくありません。
詰まりやすい工程は「警報名・地区名・避難所名の固有表現を訳しわける」「文字数を 280 字に詰める」「絵文字とハッシュタグを整える」の 3 つです。
深夜の判断負荷とも相まってベトナム語・ポルトガル語など職員に話者が少ない言語ほど後回しになり、結果的に翌朝の在留外国人支援団体からの問い合わせにつながります。
こんな方に向けた記事です
深夜の気象警報発令時に、多言語の SNS 発信を一人で回している防災・広報担当
翻訳ツールのタブを何枚も開いて手作業で訳し、配信が間に合わないことに悩む方
在留外国人への情報到達を、宿直当番が誰でも同じ品質で出せる型にしたい方
この記事でわかること
日本語原稿から 6 言語 + やさしい日本語を 1 プロンプトで生成する SKILL.md の作り方
30 分かかっていた多言語発信を 2 分に圧縮する災害種別テンプレの構成
翻訳結果を「数字・固有名詞・断定/推量」の 3 点だけで確認する人間チェックの絞り方
執筆者は元自治体職員です。現在は Claude Code を使い、47 都道府県の統計サイト stats47.jp(約 2,000 のランキングを毎日自動更新)を個人で開発・運用しています。
📌 この記事の読み方 — 本記事にはコマンド・設定例・プロンプト例など、やや専門的な記述も出てきます。ですが Claude Code の本質は「それらを自分で覚えること」ではなく、「やってほしいことを言葉で頼めば、専門的な部分は AI が代わりに用意してくれる」点にあります。掲載するコマンドや設定は丸暗記の対象ではなく「こう頼めば、こういうものが返ってくる」という地図として読んでください。頼み方そのものの型は #31 Claude Code への頼み方、うまくいった頼み方を再利用する仕組みは #32 .claude/skills 入門 にまとめています。
背景: なぜ公務員にこの課題があるか
総務省「在留外国人統計」(2024 年 6 月時点) によれば、在留外国人は約 358 万人です。10 年で 1.5 倍に増えました。国籍別では中国・ベトナム・韓国・フィリピン・ブラジルが上位です。市町村単位で見ると、人口の 5% 超を在留外国人が占める自治体は珍しくありません。
在留外国人比率は自治体間でばらつきが大きいです。総務省「住民基本台帳に基づく人口、人口動態及び世帯数」によれば、群馬県大泉町・愛知県豊田市の一部地区・東京都新宿区・大阪市生野区などでは住民人口の 10-20% を在留外国人が占めています。
地方都市でも工業団地・農業地帯を抱える自治体では人口の 5-8% が在留外国人というケースが見られ、上位国籍はブラジル・ベトナム・中国・フィリピン・ネパールの組み合わせが典型的です。
庁内の住民基本台帳担当 (市民課・戸籍係) に問い合わせれば、町丁目別 × 国籍別の集計が数分で確認できる構成になっている自治体が多いです。
ところが現場の体感はこうです。
日本語原稿を書くだけで精一杯: 災害対策本部の判断が下りるまで原稿は確定しません。本部決裁が 14:50 に下りて、配信締切が 15:00、という運用が常態化しています
翻訳ツールに個人情報を入れたら怒られる: 情報セキュリティポリシーで「無料翻訳ツール禁止」が明記されている自治体が多いです。DeepL Pro / Google Translate API の契約稟議は半年仕事になります
誤訳で苦情が来る: 「避難所」を "shelter" と訳して、ホームレス支援施設と混同された、という事例が複数自治体から報告されています
結果、英語と中国語の 2 言語だけ、配信は 30 分遅れ、という運用に落ち着きます。
Claude Code は、この 3 つのボトルネックをまとめて解きます。Anthropic

との利用契約は「個人 / 組織アカウント + Zero Data Retention 設定」で個人
情報の二次利用を防げます(後述)。スキル機能で出力フォーマットを固定し、複数言語を並列生成します。
手順 / 解説
ステップ 1: スキル定義 (SKILL.md) を書く
`.claude/skills/disaster/translate-sns/SKILL.md` を作ります。これが「災害時の型」になります。
name: disaster-translate
description: 災害時 SNS 発信文を 6 言語 + やさしい日本語に翻訳します。280 字以内、絵文字なし、ハッシュタグ統一。
# disaster-translate
## 入力
- 日本語原稿(280 字以内、X/Twitter 投稿想定)
- 災害種別: flood / earthquake / blackout / evacuation / other
- 対象エリア: 市町村名 or "全域"
- 配信時刻: ISO8601 (YYYY-MM-DDTHH:MM+09:00)
## 出力
以下の順で、各言語 1 ブロックずつ出力する。
1. en (英語)
2. zh-Hans (簡体中文)
3. zh-Hant (繁體中文)
4. ko (韓国語)
5. vi (ベトナム語)
6. pt-BR (ブラジル ポルトガル語) ※在留ブラジル人比率高い自治体向け
7. ja-easy (やさしい日本語、NHK 方式)
各ブロックの構成:
- 1 行目: 言語コード
- 2 行目以降: 本文(280 字以内、URL 含めて 240 字推奨)
- 末尾: ハッシュタグ #災害情報 #<エリア> + 当該言語のハッシュタグ(例: #DisasterAlert)
## 制約
- 個人名・電話番号・番地は入力に含めない(入っていたら冒頭で拒否)
- 「〜の可能性があります」は推量形で訳す(en: "may" / "could be" / zh: "可能会")
- 「警戒区域」「避難所」「避難勧告」「避難指示」「特別警報」は対訳辞書(下記 reference/glossary.md)に従う
- やさしい日本語は語彙レベル N5(日本語能力試験)を基準。漢字には全てルビ
- 絵文字・顔文字は使わない(視覚障害者の読み上げ環境で混乱)
## 検証
出力後、自動で以下をチェック:
- [ ] 全 7 言語が揃っているか
- [ ] 各言語の文字数が 280 以下か
- [ ] ハッシュタグが統一されているか
- [ ] 数字(時刻・人数・距離)が全言語で一致しているか
`reference/glossary.md` には防災用語の対訳表を置きます。
| 日本語 | en | zh-Hans | ko | vi | pt-BR |
|---|---|---|---|---|---|
| 避難指示 | Evacuation Order | 避难指示(强制) | 피난 지시 | Lệnh sơ tán | Ordem de evacuação |
| 避難勧告 | Evacuation Advisory | 避难劝告 | 피난 권고 | Khuyến cáo sơ tán | Aviso de evacuação |
| 警戒区域 | Restricted Area | 警戒区域 | 경계 구역 | Khu vực cảnh báo | Área restrita |
| 土砂災害 | Landslide | 泥石流 | 토사 재해 | Lở đất | Deslizamento |
| 特別警報 | Emergency Warning | 特别警报 | 특별 경보 | Cảnh báo đặc biệt | Alerta especial |ステップ 2: 実行プロンプト (コピペで動く)
/disaster-translate
【日本語原稿】
本日 14 時、市内全域に大雨警報が発令されました。
土砂災害の危険があります。ハザードマップで「土砂災害警戒区域」に
お住まいの方は、最寄りの指定避難所への移動を検討してください。
避難所一覧: https://example.city/shelter
【災害種別】flood
【対象エリア】市内全域
【配信時刻】2026-07-12T14:05+09:00期待される出力(en の例):
[en]
At 2:00 PM today, a Heavy Rain Warning has been issued for the entire city.
There is a risk of landslides. If you live in a designated Landslide
Hazard Zone, please consider moving to your nearest evacuation shelter.
Shelter list: https://example.city/shelter
#DisasterAlert #CityName #DisasterInfoステップ 3: 人間チェック 3 点(これだけ)

翻訳結果は必ず人間が見ます。災害時の判断負荷を下げるため、チェック観
点は 3 つに絞ります。
3 点とも OK なら 60 秒で配信に進めます。NG が出たら該当言語だけ再生成します。
ステップ 4: 災害種別テンプレを置く
毎回プロンプトを書くと、災害時にミスします。`.claude/skills/disaster/translate-sns/templates/` にひな型を置きます。
templates/
flood.md # 豪雨・洪水(警報→注意報→特別警報の 3 段)
earthquake.md # 地震(震度別 + 津波情報の有無)
blackout.md # 停電(復旧見込み時刻の入れ方)
evacuation.md # 避難勧告 → 避難指示(レベル 4/5)`flood.md` の中身例:
# 豪雨ひな型(レベル 3 警戒)
【日本語原稿】
本日 {HH} 時、{エリア} に {警報種別} が発令されました。
{災害リスク} の危険があります。
{対象住民} の方は、{推奨行動} を検討してください。
詳細: {URL}
【災害種別】flood
【対象エリア】{エリア}
【配信時刻】{ISO8601}
【埋める箇所】
- HH: 配信時刻の時(24h)
- エリア: 市内全域 / ○○地区 / ○○川流域
- 警報種別: 大雨警報 / 大雨特別警報 / 洪水警報
- 災害リスク: 土砂災害 / 河川氾濫 / 浸水
- 対象住民: ハザードマップの「○○警戒区域」にお住まいの方
- 推奨行動: 最寄りの指定避難所への移動 / 垂直避難 / 自宅 2 階以上での待機
- URL: shelter / hazard map / 配信元アカウント深夜 3 時、係長の判断 1 つで穴埋め 5 箇所だけです。残りはスキルが自動でやってくれます。
ステップ 5: 配信は別ツール (自動化しない)
X / Facebook / Instagram への投稿自動化までやろうとすると、誤投稿リスクが跳ね上がります。Claude Code 側は「文章生成」だけに責任を持ちます。
生成 → 人間チェック (3 点) → 手動投稿(各 SNS の公式アプリ)
└ Buffer / Hootsuite で予約も可「投稿自動化」は本稿の対象外です。誤投稿事故の前例は全国で複数あり、稟議が通る要素がありません。
防災用語の多言語対訳ルールが整備されている自治体は限定的です。都道府県レベルでは在留外国人が多い愛知県・群馬県・静岡県などで「外国人向け防災情報多言語化ガイドライン」のような文書が公開されていますが、市町村単位では未整備のケースが大半となります。
総務省「災害時外国人支援情報コーディネーター養成研修」教材や、自治体国際化協会 (CLAIR) が提供する「多言語表示シート」が事実上の参照基準として使われる場面が多いです。庁内に対訳ルールが無い場合、まず防災危機管理課か国際交流担当に「県マニュアルがあるか」「CLAIR シートを採用するか」を確認するのが最短ルートになります。
よくあるつまずきポイント
やさしい日本語をナメる: 「避難してください」を「にげてください」に変えるだけ、ではありません。語彙レベル統制(N5)・全漢字ルビ・1 文 20 字以内の 3 条件が必要です。SKILL.md で「やさしい日本語ガイドライン
(出入国在留管理庁 + 文化庁、2020 年策定) のレベル感に揃える」と明示すると精度が安定します (NHK NEWS WEB EASY を補助参照する場合は 2025 年に受信料契約者向けへ仕様変更があり、参照不可なケースがある点に注意してください)
絵文字の落とし穴: X では絵文字 1 文字が 2-4 文字分のカウントになります。災害発信で絵文字を使わない方針をスキル定義で固定します。「視覚障害者の読み上げで混乱する」を理由にすると庁内合意も取りやすいです
ハッシュタグの不統一: 自治体ごとに #防災 #災害 #緊急 と表記がバラつくと検索性が落ちます。NHK・気象庁が使う #災害情報 を統一ハッシュとして SKILL.md で固定します
個人情報の混入: 「○○地区の田中さん宅周辺で土砂崩れ」のような原稿を入れる人が必ずいます。スキル冒頭で「個人名・番地・電話番号を含む原稿は拒否」と明示し、Hook で自動弾きも仕込みます(後述・有料部)
平時に動作検証していない: 災害当日に「動かない」が最悪です。`.github/workflows/disaster-translate-monthly-drill.yml` で月 1 自動テストを回します(過去 1 年の実発信文を入力に再生成 → diff チェック)
💡 この記事を書いた私から、Claude Code 学習でひとつだけご紹介させてください(PR)
この記事を読んでいる方は、Claude Code を業務に取り入れようとしているか、すでに使い始めているのだと思います。
独学でも十分に使えますが、「もっと体系的に学びたい」「詰まったときにすぐサポートを受けたい」という方には、Claude Code に特化した研修プログラムも選択肢のひとつです。
このリンクから申し込んでいただくと、私に紹介料が入ります。それでもお伝えするのは、Claude Code を業務で使いこなしたいすべての方に本当に役立つと思っているからです。

▶ Claude Code 特化研修「AI Agent Camp」の詳細はこちら(無料相談あ
り)
まとめ
災害時の多言語発信は、技術ではなく「型」で勝負が決まります。Claude Code の Skills は、その型を 1 ファイル + テンプレ 4 枚に圧縮し、誰が宿直当番でも同じ品質を出せるようにします。
最初の 1 本を作るのに 3 時間、テンプレ整備に 5 時間かかります。運用に乗せれば1 災害あたり 30 分 → 3 分に圧縮できます。年 5 災害として、年 2 時間以上の削減 + 在留外国人への情報到達率向上が見込めます。やる価値はあります。
関連記事 / 次に読む
個人情報を Claude に送らずに AI 活用する 3 つの設定 (Zero Data Retention / マスキング / オフライン)
Claude Code Hooks で個人情報マスキングを自動化する
MCP server を庁内システムにつなぐ実験 (架空 LGWAN 想定)
この続きは有料パートです
こんな人におすすめ
深夜の災害発令時に多言語の SNS 発信を一人で回している、LGWAN 端末でもオフラインで翻訳を回せる構成が欲しい、災害種別ごとの SKILL.md テンプレをそのまま職場に持ち込みたい——防災・広報担当の方に向けた内容です。
この続きで読めること
単体購入のほか、マガジン「公務員 × Claude Code 実務活用ガイド」でシリーズをまとめて読むこともできます。
ここから先は
公務員 × Claude Code 実務活用ガイド
「Claude Code を職場で使いたいけれど、何から始めればいいかわからない」——そんな自治体職員のための、実務特化の全 31 本シリ…
この記事が気に入ったらチップで応援してみませんか?
