設計図書の概要から、建築基準法と条例で確かめる項目の一覧をClaudeで作り、確認申請の前の自主点検に使う
計画の用途・規模・構造・敷地の条件を入れると、事務所の確認項目の一覧から、この計画で確かめる項目を Claude が選び出します。項目ごとに理由と、図面のどこで見るかを添え、申請前の自主点検の一覧にします。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Google Apps Script/Make/Power Automate
- 対象業界
- 不動産/建設
- 対象部門
- 品質管理
- 対象業務
- 内容確認・チェック/分類・仕分け
- 主な課題
- 判断に時間がかかる/属人化している/確認ミスが多い
- AIで行う処理
- 判定
- 主な効果
- 品質標準化/属人化解消/工数削減
- 導入難易度
- ★★★★☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 設計担当が基本設計を終え、設計概要シートに用途・面積・階数・高さ・構造・敷地の条件を書く
- 自治体の都市計画情報のページで、用途地域・防火地域・高度地区・地区計画を調べて概要シートに書き足す
- 事務所の法令チェックリストを印刷し、計画に関係しそうな項目に印を付ける
- 自治体の条例(建築安全条例、景観、ワンルームの指導要綱など)を、その市のページで1つずつ探す
- 印を付けた項目を図面と計算書で確かめ、書き込む
- 管理建築士が一覧と図面を見て、抜けている項目を指摘する
- 直してから確認申請を出す
- 人設計担当が設計概要シートに用途・面積・階数・高さ・構造・敷地の条件を書き、「点検の一覧を作る」に印を付ける
- 自動必須の欄が埋まっているかを確かめ、空欄があれば担当者に返す
- 自動面積・階数・構造から、新2号・新3号などの区分と、構造計算の要否の目安をプログラムで出す
- 自動事務所の確認項目マスタと、その市の条例リストを読み込む
- 自動Claude API が項目ごとに `applies` / `not_applicable` / `needs_info` を付け、理由と見る図面を書く
- 自動判定の理由に書かれた条件が、概要シートに本当にあるかをプログラムで照合する
- 自動点検の一覧を計画のフォルダに書き出し、担当者に知らせる
- 人担当者が `needs_info` の項目を先に埋め、`applies` の項目を図面で確かめる
- 人管理建築士が `not_applicable` とされた項目の理由を流し見て、外してよいかを確かめる
- 人点検が済んでから確認申請を出す
各工程の詳しい説明を読む
- 設計担当が基本設計を終え、設計概要シートに用途・面積・階数・高さ・構造・敷地の条件を書く
- 自治体の都市計画情報のページで、用途地域・防火地域・高度地区・地区計画を調べて概要シートに書き足す
- 事務所の法令チェックリストを印刷し、計画に関係しそうな項目に印を付ける
- 自治体の条例(建築安全条例、景観、ワンルームの指導要綱など)を、その市のページで1つずつ探す
- 印を付けた項目を図面と計算書で確かめ、書き込む
- 管理建築士が一覧と図面を見て、抜けている項目を指摘する
- 直してから確認申請を出す
(a)拾う項目が、担当者の経験で決まる。 3番目で印を付けるのは担当者です。店舗併用住宅を初めて担当する人は、店舗の部分にかかる項目を拾えません。 経験のある人が拾う項目と、そうでない人が拾う項目が違い、その差が審査機関からの指摘の差になって出てきます。
(b)条件の組み合わせを考えるのに時間がかかる。 準防火地域で、3階建てで、共同住宅で、前面道路が4m未満。1つ1つの条件は分かっていても、全部が重なったときにどの項目が増えるかは、毎回考え直しになります。 チェックリストに分岐が書かれていないので、考えた結果がどこにも残りません。
(c)条例は市ごとに探し直す。 4番目は、同じ市の計画を前月にやっていても、別の担当者がまた探します。
(d)指摘が申請の後に分かる。 6番目で管理建築士が見られるのは、申請の直前です。時間が無い月ほど、確認は図面の流し見になります。 抜けが見つかるのは審査機関の指摘を受けたときで、そこから図面を直すと日程が崩れます。
- 【人】 設計担当が設計概要シートに用途・面積・階数・高さ・構造・敷地の条件を書き、「点検の一覧を作る」に印を付ける
- 【自動】 必須の欄が埋まっているかを確かめ、空欄があれば担当者に返す
- 【自動】 面積・階数・構造から、新2号・新3号などの区分と、構造計算の要否の目安をプログラムで出す
- 【自動】 事務所の確認項目マスタと、その市の条例リストを読み込む
- 【自動】 Claude API が項目ごとに
applies/not_applicable/needs_infoを付け、理由と見る図面を書く - 【自動】 判定の理由に書かれた条件が、概要シートに本当にあるかをプログラムで照合する
- 【自動】 点検の一覧を計画のフォルダに書き出し、担当者に知らせる
- 【人】 担当者が
needs_infoの項目を先に埋め、appliesの項目を図面で確かめる - 【人】 管理建築士が
not_applicableとされた項目の理由を流し見て、外してよいかを確かめる - 【人】 点検が済んでから確認申請を出す
9番目が、この設計の分かれ目です。 管理建築士が見るのは、「確かめなくてよい」とされた項目の理由です。拾い漏れはここでしか起きません。applies の項目は担当者が図面で見るので、誤って拾いすぎても手間が増えるだけで済みます。誤って外した項目は、誰の目にも触れずに申請まで進みます。
3番目をプログラムでやるのは、境目の判定が数字の大小比較だからです。 AIに任せると境目で揺れます。
02今回想定するシステム構成
設計概要シート(計画ごと。用途・規模・構造・敷地の条件) │ 担当者が「点検の一覧を作る」に印 ▼【トリガー】シートの編集 Google Apps Script ├──▶ 必須欄の確認(AIを使わない) ├──▶ 建築物の区分・数値の境目の判定(AIを使わない) ├──▶ 確認項目マスタと、市ごとの条例リストを読む ▼ Claude API ── 構造化出力でJSON │ ① 項目ごとの該当/非該当/情報不足 │ ② 該当とした理由(概要のどの条件か) │ ③ 図面・計算書のどこで確かめるか ▼ Google Apps Script ── 理由の条件が概要にあるかを照合 ▼ 自主点検の一覧(計画フォルダ)と担当者への通知 ▼ 【担当者が図面で確かめる → 管理建築士が外した項目を確かめる】
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Claude API(項目ごとの該当の判定と理由の作成。構造化出力) | OpenAI API、Gemini API |
| 連携 | Google Apps Script(必須欄の確認、区分の判定、照合、一覧の書き出し) | Power Automate、Make |
| 保管 | 事務所の共有ドライブ(概要シート、マスタ、点検の一覧、ログ) | SharePoint、Box |
| 図面 | 既存のCAD | 各社のCAD |
CADと図面は、この構成に入れません。 渡すのは設計概要シートの値だけです。図面を読ませれば楽に見えますが、図面から面積や高さを読み違えると、その誤りの上に判定が積み上がります。 値は担当者が概要シートに書き、その値を正とします。
新しく作るのは、確認項目マスタです。 事務所の紙のチェックリストを、1行1項目で「項目」「当てはまる条件」「見る図面」「根拠の条項」の列を持つ表に直します。この作業はAIの有無にかかわらず価値があり、この構成の質は、ほぼこの表の質で決まります。
基準の土台は、国土交通省の改正の説明です。 令和4年改正の建築基準法のページでは、木造建築物の建築確認検査や審査省略制度の対象を非木造と同様の規模とすること、2階建て以下の木造建築物で構造計算が必要となる規模を延べ面積500㎡超から300㎡超に引き下げること、住宅の居室の採光に有効な開口部面積を原則1/7以上としつつ、一定条件で1/10以上まで緩和できることなどが示されています。マスタの「当てはまる条件」は、こうした改正のたびに書き換える前提で作ります。
AIの側の土台は、Claude API の構造化出力です。 output_config.format に type: "json_schema" とスキーマを渡すと、応答がスキーマに沿ったJSONになります。公式の説明では、数値の範囲(minimum、maximum)や文字列の長さ(minLength、maxLength)はスキーマに書けません。面積や高さの境目の判定をAIに渡さない理由が、ここにもあります。
03どうやって実装するのか
処理の起点を決める
設計概要シートの「点検の一覧を作る」に印が付いたことを起点にします。 基本設計が固まり、用途・規模・構造・敷地の条件がそろった時点です。それより前に動かすと、空欄だらけの概要から needs_info だらけの一覧ができ、誰も読まなくなります。
Google Apps Script のインストール型トリガーでシートの編集を受け、印の列が変わったときだけ処理します。同じ計画でもう一度印を付けたら、前回の一覧を残したまま新しい版を作ります。 実施設計で面積や階数が変わることは珍しくなく、変わる前と後で、どの項目が増えたかを比べられることに意味があります。
定時の一括実行にはしません。申請の日程は計画ごとにばらばらで、担当者が「概要がそろった」と判断したときが、点検を始めるときです。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 設計概要 | 用途(複数可)、延べ面積、建築面積、階数、高さ、軒高、構造、新築・増築の別 | 設計概要シート |
| 敷地の条件 | 所在の市、用途地域(複数可)、防火・準防火地域、高度地区、日影規制、地区計画、前面道路の幅員と種別 | 設計概要シート(担当者が都市計画情報で調べて記入) |
| 区分の判定結果 | 新2号・新3号などの区分、数値の境目の判定 | Google Apps Script の計算 |
| 確認項目マスタ | 項目、当てはまる条件、見る図面、根拠の条項、最終更新日 | 事務所の共有ドライブ |
| 条例リスト | 市ごとの条例・指導要綱の名前、対象となる条件、確かめる内容 | 事務所の共有ドライブ |
| 過去の指摘 | 審査機関から受けた指摘と、その計画の条件 | 指摘の記録表 |
質を決めるのは、確認項目マスタの「当てはまる条件」の列です。 ここが「該当する場合」のように曖昧だと、Claude は自分の知識で条件を補います。「用途に共同住宅を含む」「階数が3以上」「準防火地域」のように、概要シートの欄の値で書ける形にします。
条例リストは、市ごとに担当を決めて育てます。 一度調べた市の条例は、次の計画から探さなくて済みます。第3章の(c)が解消するのは、AIのおかげではなく、このリストのおかげです。
過去の指摘は、マスタを直す材料として持ちます。 判定の入力には入れません。指摘を入れると、Claude が「前に言われたから」という理由で項目を拾い、理由がマスタに残らないまま一覧が膨らみます。
データの取得方法を決める
概要シートと2つのリストは、Google Apps Script から読むだけです。敷地の条件は、担当者が自治体の都市計画情報で調べて書きます。 自動で取りに行く方法は市ごとに違い、提供していない市もあるため、この構成では取りに行きません。
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 概要の値 | 設計概要シートの計画の行 | 判定の入力 |
| 区分の判定結果 | Google Apps Script の計算 | 判定の入力。AIには計算させない |
| 確認項目マスタ | 共有ドライブの表 | 1項目ずつ当てる条件 |
| その市の条例リスト | 共有ドライブの表を市で絞る | 条例の項目を追加する |
| マスタの最終更新日 | 表の欄 | 一覧に、どの版のマスタで作ったかを書く |
マスタは毎回まるごと渡し、プロンプトキャッシュを使います。 確認項目マスタは計画が変わっても同じ内容なので、指示とマスタを前に置き、計画の概要を後ろに置きます。公式の説明では、キャッシュの既定の有効期間は5分で、読まれるたびに更新され、"ttl": "1h" で1時間にもできます。tools → system → messages の順で、前の段が変わると後ろはすべて作り直しになります。 マスタを system の側に置き、計画ごとに変わるものは messages に置く並びにします。
市の条例リストは、その市の分だけを渡します。 全市分を渡すと、別の市の条例を拾う誤りが起きます。
AIへ渡す前に整形する
- 必須欄の確認 … 用途、延べ面積、階数、高さ、構造、所在の市、用途地域、防火の指定、前面道路の幅員。空欄が1つでもあれば Claude を呼ばずに担当者へ返します
- 単位と表記の統一 … 面積は㎡、高さはm、幅員はmにそろえます。「約」「程度」の付いた値は担当者へ返します
- 区分の判定 … 構造・階数・延べ面積から新2号・新3号などの区分を出します。この判定はプログラムで行い、結果を値として Claude に渡します
- 数値の境目の判定 … マスタにある「延べ面積300㎡超」「高さ16m以下」のような境目を、概要の値と比べて真偽で出します
- 複数の用途地域の確認 … 敷地が2つの用途地域にまたがるときは、両方を列に入れ、「またがる」という印を付けます
- 施主の情報を外す … 施主の氏名、住所、敷地の地番は渡しません。所在は市の名前までにします
- 前回の版の取得 … 同じ計画の前回の一覧があれば、差分を出すために読み込みます
3番目と4番目を軽く見ないでください。 「200㎡超」と「200㎡以上」の違い、「階数が2以上」と「2階建て」の違いは、AIに任せると、境目の計画で判定が揺れます。 境目の比較は、すべてプログラムで済ませてから渡します。
AIに処理させる
させるのは、確認項目マスタの1項目ずつについて、概要の値と区分の判定結果を条件に当て、3つのどれかを付けることです。
| 付けるもの | 意味 | 付ける条件 |
|---|---|---|
applies | この計画で確かめる | 当てはまる条件のすべてが、概要の値で満たされている |
not_applicable | この計画では確かめなくてよい | 当てはまる条件のどれかが、概要の値で否定されている |
needs_info | 判断に要る値が概要に無い | 条件の判定に要る欄が空、または「未定」 |
右端の列の「否定されている」が、この構成でいちばん大事な言葉です。 not_applicable は、値があってその値が条件を満たさないときだけです。値が無いときは needs_info です。 前者は確かめなくてよい項目、後者は確かめるかどうかがまだ分からない項目で、扱いがまったく違います。
| させること | 書き方 |
|---|---|
| 項目ごとの判定 | 上の3つのどれか |
| 判定の理由 | 概要のどの欄の、どの値によるかを書く |
| 見る図面 | マスタの「見る図面」の欄をそのまま写す |
| 足りない値 | needs_info のときに、どの欄の値があれば判定できるか |
| 条例の項目 | その市の条例リストから、同じ規則で判定する |
| 用途の組み合わせ | 複数の用途があるとき、どの用途の部分にかかる項目かを書く |
| させないこと | 理由 |
|---|---|
| 法令に適合しているかの判断 | 建築士の業務。この構成は確かめる項目を選ぶだけ |
| マスタに無い項目の追加 | 根拠の無い項目が一覧に混ざり、誰も直せない |
| 数値の境目の判定 | 前処理でプログラムが済ませる |
| 条文の解釈の書き換え | 当てはまる条件はマスタに書かれたとおりに使う |
| 概要の値の補完 | 空欄を「一般的な住宅なら」と埋めない |
4行目がいちばん起きやすい失敗です。 マスタの条件が短いと、Claude は自分の知っている法令の知識で条件を広げたり狭めたりします。広げるのは手間が増えるだけですが、狭めると拾い漏れになります。 条件に足りないところがあれば、判定を変えずに note に書かせ、マスタを直す材料にします。
指示内容を固定する
あなたは建築設計事務所で、確認申請の前に確かめる項目を選ぶ担当です。
法令に適合しているかは判断しません。この計画で確かめる必要があるかだけを判定します。
【判定のしかた】
確認項目マスタの各項目について、「当てはまる条件」を計画の概要に当て、
次の3つのどれかを applicability に入れてください。
- applies ........ 当てはまる条件のすべてが、概要の値で満たされている
- not_applicable . 当てはまる条件のどれかが、概要の値で否定されている
- needs_info ..... 条件の判定に要る値が概要に無い、または「未定」と書かれている
迷ったときに not_applicable を選ばないでください。
【厳守事項】
- 値が無いことを、条件を満たさないこととして扱わないでください。
値が無ければ needs_info です。
- 当てはまる条件は、マスタに書かれたとおりに使ってください。
ご自身の法令の知識で条件を広げたり、狭めたりしないでください。
条件に疑問があれば、判定はそのままにして note に書いてください。
- マスタに無い項目を追加しないでください。
- 面積・高さ・階数などの境目の判定は、【区分と境目の判定結果】の値を使ってください。
自分で数値を比べ直さないでください。
- reason には、判定の根拠にした概要の欄の名前と値を書いてください。
- check_where には、マスタの「見る図面」の欄をそのまま写してください。
- 用途が複数あるときは、どの用途の部分にかかる項目かを applies_to_use に書いてください。
- 条例リストの項目も、同じ規則で判定してください。
- 法令に適合している・していないという表現を使わないでください。
【計画の概要】{plan_summary}
【区分と境目の判定結果】{computed_flags}
【この市の条例リスト】{local_rules}
確認項目マスタは、この指示の前に system として置き、キャッシュの対象にします。
「値が無いことを、条件を満たさないこととして扱わない」を明記しないと not_applicable になります。 準防火地域の欄が空の計画で、何も言わなければ「準防火地域ではない」と読みます。拾い漏れの多くは、この読み方から生まれます。
「自分で数値を比べ直さない」と書くのも同じ理由です。 境目の判定結果を渡していても、概要に面積があると Claude は自分で比べ、結果が食い違ったときにどちらを使ったか分からなくなります。
出力形式を固定する
次の形のJSONで受け取ります。
{
"plan_id": "",
"master_version": "",
"building_class": "",
"items": [
{
"item_id": "",
"source": "master | local_rule",
"applicability": "applies | not_applicable | needs_info",
"reason": "",
"applies_to_use": "",
"check_where": "",
"missing_inputs": [],
"note": ""
}
],
"missing_fields_summary": []
}
building_class には、前処理でプログラムが出した区分をそのまま入れます。Claude には書き換えさせません。
1つ目の理由は、applicability を3つに固定できることです。 自由文で「おそらく不要」「念のため確認」と書かれると、一覧で並べ替えも集計もできません。3つに固定すれば、not_applicable だけを抜き出して管理建築士に回せます。
2つ目は、reason を後段で照合できることです。 Google Apps Script が reason に書かれた欄の名前と値を取り出し、概要シートに本当にその値があるかを確かめます。 概要に無い値を根拠にした判定は、needs_info に戻して担当者に回します。
| 照合の結果 | 扱い |
|---|---|
| 理由の欄と値が概要と一致 | そのまま一覧へ |
| 理由の欄が概要に無い | needs_info に戻し、印を付ける |
| 理由の値が概要と食い違う | needs_info に戻し、印を付ける |
マスタに無い item_id | 一覧から外し、ログに残す |
3つ目は、版を比べられることです。 master_version と items が同じ形で残るので、実施設計で面積が変わったときに、前回と今回で applicability が変わった項目だけを抜き出せます。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 設計概要シート | Google Apps Script のインストール型トリガー | 印の付いた計画の行を読む |
| 確認項目マスタ・条例リスト | 共有ドライブの表を読む | マスタ全体と、その市の条例 |
| Claude API | Messages API の呼び出し | 項目ごとの判定。構造化出力 |
| 点検の一覧 | 計画フォルダへの書き出し | 項目、判定、理由、見る図面、確認欄 |
| 通知 | 担当者へのメール | 一覧の場所と、needs_info の件数 |
点検の一覧には、担当者と管理建築士の確認欄を付けます。 担当者は applies の項目に「図面で確かめた」と、どの図面の何ページかを書きます。管理建築士は not_applicable の項目に「外してよい」か「確かめる」を付けます。
概要シートとマスタには書き込みません。 マスタの直しが要りそうな項目は、note を集めた一覧として別に出し、直すかどうかは管理建築士が決めます。 AIの指摘でマスタが勝手に変わると、どの版で点検したかが分からなくなります。
人が確認する
人が見るのは、3つの判定のそれぞれで、別の観点です。
needs_infoを先に埋める … 担当者が足りない値を概要シートに書き、もう一度印を付けます。ここが残っている一覧は、点検に入りませんappliesを図面で確かめる … 担当者が図面と計算書で確かめ、確認欄に書きます。ここは従来の点検と同じ作業ですnot_applicableの理由を確かめる … 管理建築士が理由を読み、外してよいかを決めます。1項目あたり数秒で読めるよう、理由は欄の名前と値だけにしてあります- 判定を覆したら記録する … どの項目を、どちらに変えたか、なぜかを残します
3番目を省かないでください。 拾い漏れが起きるのは、ここだけです。applies の誤りは担当者が図面を見ると気づきますが、not_applicable の誤りは誰も図面を見ないので、気づく機会がありません。
目標は、管理建築士の確認を1件10分程度にすることです。 以前は一覧と図面の両方を見ていましたが、この構成では外した項目の理由を読むことに絞れます。 図面を見るのは、理由に疑問があった項目だけです。
例外に対処する
| 起きること | 対応 |
|---|---|
| 必須の欄が空 | Claude を呼ばずに担当者へ返す。どの欄かを通知に書く |
| 敷地が2つの用途地域にまたがる | 両方の用途地域で判定させ、どちらかで applies なら applies |
| 用途が複合(店舗併用住宅など) | 用途ごとに判定し、applies_to_use に書かせる |
| 増築・用途変更・既存不適格がある | この構成の対象外として印を付け、管理建築士が個別に見る |
| 条例リストにまだ無い市 | 条例の項目は出さず、「条例リスト未整備」と一覧の先頭に書く |
| 地区計画の内容が概要に無い | 地区計画がある場合は、その内容の確認を needs_info で出す |
マスタに無い item_id が返る | 一覧から外し、ログに残す |
| 応答がスキーマに合わない | 1回だけ再実行し、だめなら担当者に「一覧を作れなかった」と知らせる |
拒否(stop_reason: "refusal")や途中で切れた応答 | スキーマに合わないことがあるため、同じく再実行の後、人へ |
3行目と4行目の扱いが、この構成の限界を決めています。 増築や既存不適格の計画は、既存部分の状態という概要に書けない条件で項目が変わります。無理に判定させるより、対象外として最初から人に回すほうが安全です。
5行目は、運用を始めた直後に多く出ます。 条例リストは市ごとに育てるものなので、最初の数か月は「未整備」の市が多くあります。 未整備と書かれた一覧を受け取った担当者が、その市の条例を調べてリストに足す、という流れにします。
記録を残す
- 計画ごとの点検の一覧(版ごと)と、作ったときの概要シートの値
- Claude に渡した入力の全文と、返ってきたJSONの全文
- そのとき使った確認項目マスタと条例リストの版
- 照合で
needs_infoに戻した項目と、その理由 - 人が判定を覆した記録 … どの項目を、どちらに変えたか、なぜか
- 審査機関から受けた指摘と、その項目の点検時の判定
3つ目で版を残すのは、マスタが改正のたびに変わるからです。 同じ計画でも、マスタの版が違えば一覧が変わります。どの版で点検したかが残っていないと、指摘を受けたときに「マスタの抜け」か「判定の誤り」かを切り分けられません。
最後の行が、マスタを育てる材料になります。 審査機関から指摘を受けた項目が、点検時に not_applicable だったなら判定かマスタの誤り、一覧に無かったならマスタの抜けです。 月に一度この突き合わせをして、マスタの条件を直します。
04実装レベルの3段階
最小構成では、市ごとの条例と、面積や高さの境目は人が見ます。 確かめるための段階です。 半自動化で、1件120分が70分程度になります。 マスタの項目の選び出しは自動になりますが、条例は担当者が探し、境目の判定と理由の照合は人が行います。本格構成で45分になり、この段階が本記事の想定です。 差が大きいのは、条例を探す時間と、管理建築士がすべての項目を見直す時間が、どちらもリストと照合に置き換わるからです。 段階を飛ばさないでください。 半自動化で2か月回すと、needs_info がよく出る欄と、判定が揺れる項目が分かります。そこを直してから本格構成に進みます。
05工数削減シミュレーション
導入後 20件 × 45分 ÷ 60 = 15 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 戸建住宅・小規模な共同住宅・店舗・事務所の新築や増築を手がけ、月に十数件から数十件の確認申請を出している設計事務所・工務店の設計部。申請前の自主点検が担当の建築士の経験に任されていて、審査機関からの指摘が担当者ごとに偏っている場合。事務所として法令の確認項目の一覧(チェックリスト)を持っている、または作る意思がある場合。2025年4月の改正で審査の対象になった木造2階建ての住宅を多く扱う場合。
- 確認申請が年に数件で、所長がすべての計画を自分で見ている事務所。大規模・特殊な建築物で、構造計算適合性判定や消防の協議など個別の検討が点検の中心になる場合。事務所としての確認項目の一覧が無く、作る予定もない場合(AIに法令の解釈をゼロからさせる構成になり、使えません)。なお、法令への適合の判断は建築士の業務であり、この構成では代替できません。
07最小構成で試す方法
- 先月確認申請を出した計画から5件を選ぶ(審査機関から指摘を受けた計画を必ず入れる)
- 事務所の法令チェックリストのうち、よく使う30項目だけを「項目」「当てはまる条件」「見る図面」の3列の表にする
- Claude の画面に、その表と、1件分の設計概要(用途・面積・階数・高さ・構造・敷地の条件)を貼る
- 「表の各項目について、この計画で確かめる必要があるかを、該当する/該当しない/情報が足りないの3つで判定し、理由を概要の欄の名前と値で書いてください。値が無い項目は、該当しないとせず、情報が足りないとしてください」と指示する
- 出てきた一覧を、当時の担当者が実際に確かめた項目と、審査機関の指摘と突き合わせる
指摘を受けた計画を入れるのが大事です。 指摘を受けた項目が applies として拾われていれば、構成は有効です。拾われていなければ、原因が判定か表の条件かを見ます。
| 出てきた内容 | 判断 |
|---|---|
| 当時の項目と指摘の項目が拾われた | Google Apps Script での連携に進む |
| 値の無い項目が「該当しない」になった | 指示の書き方で直る。構成は有効 |
| 表の条件があいまいで判定が揺れた | 表の条件の書き方が先。 AIの問題ではない |
3行目が出ることは珍しくありません。 失敗ではなく、チェックリストが「経験のある人なら読める」書き方だったと分かったということです。 条件を書き直して、同じ5件をもう一度試してください。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
値の無い項目が not_applicable になる | 値が無ければ needs_info。 指示に明記し、理由の照合でも拾う |
| Claude が自分の知識で条件を変える | 条件はマスタのとおりに使わせ、疑問は note に書かせる |
| 境目の計画で判定が揺れる | 数値の比較はプログラムで済ませて渡す |
| 理由に概要に無い値が書かれる | 後段で照合し、needs_info に戻す |
| マスタの条件があいまい | 「該当する場合」ではなく、概要の欄の値で書く |
| 別の市の条例を拾う | その市の分だけを渡す |
| 増築・既存不適格の計画で誤る | 対象外として最初から人に回す |
| 用途が複合の計画で項目が足りない | 用途ごとに判定させ、どの用途の部分かを書かせる |
| 改正があってもマスタが古いまま | マスタに最終更新日を持たせ、一覧に版を書く |
管理建築士が applies しか見ない | 見るべきは外した項目。 確認欄を not_applicable 側に置く |
| 一覧を「適合の確認済み」と誤解する | 一覧の先頭に「確かめる項目の一覧であり、適合の判断ではない」と書く |
上の2行が、この構成の失敗のほとんどです。 どちらも「Claude が条件を自分で埋める」という同じところから出ています。空欄を否定と読むこと、知識で条件を変えることの2つを、指示と照合の両方で止めます。
下の2行も早く効いてきます。 一覧ができると、人はそれを「点検が済んだ」証拠のように扱いがちです。この一覧は、確かめる項目を選んだだけのものです。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 計画の用途・規模・構造、敷地のある市と都市計画の条件です。施主の氏名・住所、敷地の地番は扱いません。 図面とCADのデータも渡しません。
- 施主と敷地を特定できる情報を外へ出さない … 所在は市の名前までにし、地番や施主の名前は概要シートの別の列に置いて読み込まないようにします。用途と規模だけでは、どの計画かは分かりません
- 一覧を法令適合の判断として使わない … この構成が出すのは「確かめる項目の候補」です。適合しているかどうかは、建築士が図面と計算書で確かめます。 一覧を申請書類に添付したり、施主への説明に「確認済み」として使ったりしないでください
not_applicableを人が確かめるまで点検を終わらせない … 拾い漏れが起きるのはここだけです。管理建築士の確認欄が埋まっていない一覧は、点検未了として扱います- マスタの変更を記録する … 確認項目マスタは事務所の品質の基準そのものです。誰が、いつ、どの条件を変えたかを残し、AIの出力で自動的に変えないようにします
- APIのデータの扱いを確かめておく … Claude API の公式の説明では、会話の内容は既定では保持されない一方、Covered Models に指定されたモデルは30日の保持が必要とされ、Files API と Batch 処理はゼロデータ保持(ZDR)の対象外です。この構成は Messages API で直接渡し、Files API と Batch 処理を使いません
- 改正の情報は一次資料で確かめる … AIに改正の内容を聞いて、そのままマスタに書かないでください
誤りが起きた場合のリスクは、確かめるべき項目を外すことと、不要な項目を大量に拾うことの2つです。 後者は手間が増えるだけですが、前者は申請後の指摘か、建った後の是正につながります。needs_info と not_applicable を分けること、外した項目を人が見ることは、設計で守ります。
10まず何から始めるか
1週目:チェックリストの30項目を条件付きの表にする
事務所の法令チェックリストから、よく使う30項目を選び、「項目」「当てはまる条件」「見る図面」の3列の表にします。条件は、概要シートの欄の値で書ける形にします。この作業は管理建築士とベテランの担当者の2人で行います。
2週目:5件で試す
先月申請した計画から、指摘を受けたものを含めて5件を選び、Claude の画面で判定させます。指摘を受けた項目が拾われているか、値の無い項目が「該当しない」になっていないかを最優先で見ます。
3週目:設計概要シートの欄を決める
needs_info が多く出た欄が、概要シートに足すべき欄です。 あわせて、施主の情報を読み込まない列の配置にします。
4週目:Google Apps Script で一覧を作る
概要シートの印をきっかけに API を呼び、点検の一覧を計画フォルダに書き出すところまで作ります。この時点では、区分と境目の判定は人が確かめ、条例は扱いません。
2か月目: マスタを全項目に広げ、区分と境目の判定と理由の照合を足します。条例リストを、よく扱う3つの市から作り始めます。3か月目以降: 審査機関の指摘と点検時の判定を毎月突き合わせ、マスタを直します。指摘のうち「一覧に無かった」ものがなくなった時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
| 令和4年改正の建築基準法で、木造建築物の建築確認検査や審査省略制度の対象を非木造と同様の規模とすること。2階建て以下の木造建築物で構造計算が必要となる規模を延べ面積500㎡超から300㎡超に引き下げること。簡易な構造計算で設計できる規模を階数3以下かつ高さ16mに拡大すること。住宅の居室の採光に有効な開口部面積を原則1/7以上としつつ一定条件で1/10以上まで緩和できること | 国土交通省: 令和4年改正 建築基準法について | 2026-10-15 |
| 木造2階建てと延べ面積200㎡超の木造平屋建てが新2号建築物となり、全ての地域で建築確認・検査が必要、審査省略制度の対象外となること。延べ面積200㎡以下の木造平屋建てが新3号建築物となること。新2号建築物では確認申請の際に構造関係規定等の図書と省エネ関連の図書の提出が新たに必要になること。施行が2025(令和7)年4月とされていること | 国土交通省: 2025年4月から4号特例が変わります(設計者・工務店向けリーフレット) | 2026-10-15 |
構造化出力を output_config.format に type: "json_schema" で指定すること。数値の範囲(minimum、maximum)や文字列の長さ(minLength、maxLength)が使えないこと。拒否や max_tokens で切れた応答がスキーマに合わないことがあること | Claude Docs: Structured outputs | 2026-10-15 |
プロンプトキャッシュの既定の有効期間が5分で読まれるたびに更新されること、ttl で1時間にできること。tools → system → messages の順で、前の段の変更が後ろの段のキャッシュを無効にすること | Claude Docs: Prompt caching | 2026-10-15 |
| 会話の内容が既定では保持されないこと。Covered Models は30日の保持が必要でZDRの対象外であること。Files API と Batch 処理がZDRの対象外であること | Claude Docs: API and data retention | 2026-10-15 |
法令への適合の判断は、建築士が行ってください。 本記事は上記の公開情報で確認できた範囲だけを扱っています。条例・地区計画の内容は、各特定行政庁の資料で確かめてください。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-1610)についてのご相談はこちらから。
