教育

自動車教習所の予約・教習原簿はどこまでClaude Codeで自動化できるか

自動車教習所の予約枠・教習期限・教習原簿チェックをClaude Codeで自動化する実装パターン。道路交通法施行規則の1日2時限・9ヶ月期限をコードで検査する設計、失敗パターン、既存システムとの共存手順まで解説。

自動車教習所の予約・教習原簿はどこまでClaude Codeで自動化できるか

結論: 自動車教習所の事務作業のうち、予約枠の法規バリデーション・教習期限のアラート・教習原簿の記載漏れチェックの3つはClaude Codeで自動化できます。教習原簿そのものの電子化は各都道府県公安委員会の運用に従う必要があるため、Claude Codeの役割は「紙に書く前のチェックと下書き」に絞るのが現実解です。

  • 要点1: 技能教習の「1日2時限/3時限」「連続3時限禁止」は道路交通法施行規則第33条で決まっているルールなので、コードで機械的に検査できる
  • 要点2: 教習期限9ヶ月・卒業証明書の期限は日付計算の問題。CSVを読ませてアラート一覧を吐かせるだけで検定員・受付の目視確認が減る
  • 要点3: 教習原簿は公安委員会の規程で様式・記載が決まっている帳票。勝手にデジタル化せず、転記前チェックに徹する

対象読者: 教習所の事務・配車担当のシステムを内製したい方、教習所グループの情シス、受託でこの領域を触るエンジニア。今日やること: 予約データのCSVエクスポートを1本用意して、この記事のバリデーションプロンプトを流してみてください。

自動車教習所のシステムというと大手ベンダーの教習所管理パッケージが入っているケースがほとんどなんですが、実際に中を見せてもらうと「パッケージがカバーしているのは配車と料金だけで、法規チェックは結局ベテラン事務員さんの頭の中」という構図をよく見かけます。予約を組むときに「この子は第一段階だから今日はもう2時限入ってる、これ以上入れられない」「この人は教習期限が来月切れる」といった判断を、人が予約表とにらめっこしてやっている。

これ、エンジニアの目で見ると完全に「仕様が法令として文書化されているバリデーション処理」なんですよね。道路交通法施行規則を読むと、1日の教習時限の上限も、教習期限も、条文に数字で書いてあります。仕様書が国によって公開されているバリデーションほど、コード化しやすいものはありません。この記事では、調剤薬局・自動車整備業・貸切バスと続けてきた業種別実装パターンシリーズの続編として、自動車教習所の事務作業をClaude Codeでどこまで自動化できるかを、条文の根拠付きで整理します。

教習所事務のどこにClaude Codeが効くのか — 業務と法規の整理

まず前提の整理から。自動車教習所のうち、卒業すると運転免許試験の技能試験が免除される「指定自動車教習所」は、道路交通法第99条に基づいて都道府県公安委員会が指定した教習所です。指定を維持するには、教習の基準・帳簿類の管理について法令と公安委員会の規程を守り続ける必要があります。

事務作業を分解すると、Claude Codeが効く領域と、触ってはいけない領域がはっきり分かれます。

業務 法的な位置づけ Claude Codeの適用
技能教習の予約枠管理 1日の時限上限・連続教習の制限(施行規則第33条) ◎ 予約データのバリデーション
教習期限・証明書期限の管理 教習期限9ヶ月、卒業証明書は技能検定から1年で試験免除の効力(道交法第97条の2) ◎ 期限アラートの自動生成
教習原簿の記載 公安委員会規程・警察庁通達で様式と記載方法が規定 ○ 転記前チェック・下書きのみ
技能検定・修了判定そのもの 技能検定員の権限(道交法第99条の5) × 対象外。判定は人
教習指導員の割当て 教習指導員資格が必要(道交法第99条の3) △ 資格区分の突合チェックのみ

ポイントは「判定・指導・検定はすべて有資格者の仕事で、AIが代替する余地はない」ことと、その手前にあるデータの突合・期限計算・記載漏れ確認という純粋な事務処理が大量にあることです。以降の実装パターンは、すべて後者だけを対象にします。

実装パターン1: 予約枠のバリデーション — 「1日2時限/3時限」「連続3時限禁止」をコードにする

技能教習の1日あたりの上限は、道路交通法施行規則第33条にはっきり書いてあります。e-Gov法令検索で条文を引くと、第一種免許に係る教習では1日3時限まで(基本操作及び基本走行、つまり第一段階は2時限まで)、さらに1日に3時限行う場合は連続して3時限の教習を行わないこと(複数教習または運転シミュレーター教習を2時限行う場合を除く)とされています。

つまり予約システムに入れるべきバリデーションは、最低でもこの3つです。

# validation_rules.md — CLAUDE.md から参照するルール定義
## 技能教習の予約バリデーション(道路交通法施行規則 第33条)
1. 第一段階(基本操作・基本走行)の教習生: 同一日の技能教習は 2時限まで
2. 第二段階の教習生: 同一日の技能教習は 3時限まで
3. 同一日に3時限予約する場合、3時限が連続してはならない
   (例外: 複数教習・シミュレーター教習2時限を含む場合。例外適用時は理由を出力すること)
4. 判定不能なレコード(段階不明・時限不明)は「要人間確認」に分類し、勝手に可否を決めない

Claude Codeでの実装は、既存の予約システムを置き換えるのではなく、予約確定前のCSVを検査するスクリプトを1本足す形が現実的です。実際に依頼するプロンプトはこんな感じになります。

# プロンプト1: バリデーションスクリプトの生成
reservations.csv(列: 教習生番号, 氏名, 段階, 日付, 時限)を読み込み、
validation_rules.md のルールに従って違反を検出する Python スクリプトを書いて。
出力は violations.csv(教習生番号, 日付, 違反ルール番号, 詳細)。
ルールに書いていない判断はせず、判定不能は「要確認」として別ファイルに分けて。
テストデータとして境界値(1日ちょうど2時限・3時限・連続3時限)のケースも生成して pytest を通して。

ここで大事なのは最後の2行です。「ルールに書いていない判断はしない」「境界値テストを書かせる」。法規バリデーションは境界値がすべてなので、2時限ちょうどはOK・3時限目でNG、のようなテストが通って初めて信用できます。Claude Codeはpytestまで一気に書けるので、このループが速い。

実装パターン2: 教習期限・証明書期限のアラート自動生成

期限管理は3つの日付を追いかける仕事です。

  • 教習期限: 普通免許等に係る教習は9ヶ月以内に修了すること(道路交通法施行規則第33条)
  • 卒業証明書: 技能検定を受けた日から起算して1年を経過しないものが技能試験免除の対象(道路交通法第97条の2第1項第2号)
  • 修了証明書: 同条で、技能検定を受けた日から起算して3ヶ月を経過しないもの

この3つはすべて「起算日+期間」の日付計算なので、教習生マスタと教習実績のCSVがあれば、残日数つきのアラート一覧が機械的に作れます。

# プロンプト2: 期限アラートレポート
students.csv(教習生番号, 氏名, 教習開始日, 段階, 卒検合格日)から、
1) 教習開始から9ヶ月の教習期限まで残り45日を切った在籍者
2) 卒検合格から1年の証明書期限まで残り60日を切った未申請者
を抽出し、受付が朝礼で読み上げられる Markdown レポートにして。
日付計算は datetime で行い、起算日の定義(開始日を含むか)をコード冒頭にコメントで明記して。

起算日の扱いはトラブルの種なので、コードに仕様としてコメントを書かせて、事務長さんに確認してもらうところまでがセットです。「残り45日」「残り60日」のしきい値は法令ではなく運用判断なので、各校で決めてください。

実装パターン3: 教習原簿の転記前チェックと下書き支援

教習原簿は、教習の結果をその都度記入して教習の状況を明らかにしておく帳票で、様式は警察庁通達「指定自動車教習所業務指導の標準」の別記様式として示され、記入・管理は各都道府県公安委員会の規程・通達で定められています。たとえば福島県の「自動車教習所の指定等に関する規程」には、教習の結果をその都度教習原簿に記入することが明記されています。学科教習をオンライン配信した場合に誰の名前で原簿に記載するかまで通達で決まっている世界です。

だからこそ、ここでやってはいけないのが「原簿を勝手にスプレッドシート化して置き換える」こと。原簿の電子化・様式変更は所轄の公安委員会との話であって、内製ツールで先走る領域ではありません。Claude Codeの出番は紙の原簿に書く前・書いた後のチェックです。

# プロンプト3: 原簿転記前のクロスチェック
daily_log.csv(本日の教習実績: 教習生番号, 時限, 教習項目, 指導員名)と
reservations.csv(本日の予約)を突合して、
1) 予約があるのに実績がない(キャンセル処理漏れの疑い)
2) 実績があるのに予約がない(飛び込み・付け替えの記録確認)
3) 指導員名が空欄の実績
を一覧にして。これは教習原簿へ転記する前の確認リストで、
原簿そのものを生成するのではない。判断コメントは書かず事実の差分だけ出して。
# プロンプト4: 記載漏れの定期監査
過去2週間分の daily_log.csv を対象に、同一教習生の教習項目の抜け
(例: 項目10の実績があるのに項目9の実績がない)を検出して、
検定前に原簿と照合すべき教習生のリストを作って。
教習項目の順序ルールは curriculum.md に書いた当校の運用に従い、
そこに無いパターンは推測せず「要確認」に入れて。

入口を「原簿を作る」ではなく「原簿と照合すべき箇所を絞る」に設定すると、法的な位置づけを一切動かさずに、検定前の原簿総ざらいの時間だけが縮みます。監査で指摘されるのは大抵「記載漏れ・順序矛盾・日付ずれ」なので、そこだけ機械の目で先に洗う発想です。

導入手順 — 既存の教習所管理システムと共存させる

教習所には既にパッケージシステムが入っているのが普通なので、共存前提で組みます。手順は5ステップです。

  1. エクスポートの確認: 既存システムから予約・実績・教習生マスタをCSVで出せるか確認する。出せなければこの企画は一旦止まる(画面スクレイピングに走らない)
  2. CLAUDE.mdの整備: 施行規則第33条のルール・当校の運用ルール・CSVの列定義を validation_rules.md / curriculum.md に書き、CLAUDE.md から参照させる
  3. 読み取り専用で2週間並走: スクリプトの指摘と、ベテラン事務員さんの目視チェックの結果を突き合わせる。差分が出たらルール定義側を直す
  4. 朝のバッチ化: 期限アラートと前日実績の突合を毎朝1回のスクリプト実行にまとめる。cron化はこの段階から
  5. 個人情報の線引き: 教習生の氏名・生年月日を外部APIに送らない構成にする。ローカル実行のスクリプト生成にClaude Codeを使い、本番データの処理はスクリプト側で完結させるのが基本形
# プロンプト5: CLAUDE.md の雛形生成
自動車教習所の事務スクリプト用リポジトリの CLAUDE.md を書いて。
含めるもの: validation_rules.md と curriculum.md の参照、
「教習の可否判定・検定判定には関与しない」という禁止事項、
個人情報を含むCSVをコミットしない .gitignore 運用、
すべてのスクリプトは --dry-run を既定にするという規約。

失敗パターン — 教習所×Claude Codeでやりがちな3つ

失敗1: 法規ルールをプロンプトに直書きする

❌ 「1日2時限までのルールでチェックして」とその場のプロンプトに書く → セッションごとに微妙に解釈が揺れ、例外条件(連続3時限の複数教習例外など)が抜け落ちる。
⭕ ルールは validation_rules.md に条文の参照元(施行規則第33条)つきで固定し、プロンプトからはファイルを参照させる。法改正時はこのファイルを直すだけで全スクリプトに波及する。

失敗2: 判定不能ケースをAIに埋めさせる

❌ 段階が未入力の教習生をClaude Codeが「おそらく第二段階」と推測して3時限判定を通す → 法規チェックとして最悪の挙動。
⭕ 「データが欠けていたら要確認に落とす」をルールファイルとテストの両方で強制する。欠損を推測で埋めるくらいなら、要確認リストが長い方がずっとマシです。

失敗3: 教習原簿の生成までツールにやらせる

❌ チェックがうまく回ったので、勢いで原簿の様式ごとPDF出力を作ってしまう → 様式・記載方法は公安委員会の規程マターで、勝手な様式変更は指定校としての運営基準に関わる。
⭕ ツールの出力は「照合リスト」「下書きメモ」まで。原簿への記載は従来どおりの運用を維持し、電子化したければ所轄の公安委員会・指定講習会等の正規ルートで確認する。

失敗4: 個人情報入りCSVをそのままリポジトリに置く

❌ 動作確認に使った実データの students.csv をコミットしてしまう。
⭕ 実データは data/ 配下で .gitignore、リポジトリにはダミーデータのみ。Claude Codeへの指示も「テストデータは自動生成」で統一する。

まとめ — 「仕様書が条文として公開されている」業務は自動化と相性がいい

自動車教習所の事務は、上限時限・期限・帳票の記載ルールが法令と公安委員会規程で明文化されています。裏を返せば、バリデーション仕様が最初から公開されている珍しい業務ドメインです。Claude Codeにやらせるのは仕様の解釈ではなく、公開された仕様をテスト付きのコードに落とす作業。この構図は自動車整備業の特定整備記録簿貸切バスの点呼・運行指示書の実装パターンとまったく同じで、業法系バックオフィスの定石になりつつあります。

スクリプトの土台になるCSV処理の基本形はExcel業務をClaude Codeで自動化する実践ガイドにまとめてあるので、併せてどうぞ。

今日からできる3アクション

  1. 既存の教習所管理システムから予約データをCSVエクスポートできるか確認する
  2. e-Gov法令検索で道路交通法施行規則第33条を読み、validation_rules.md の第1版を書く
  3. プロンプト1を流してバリデーションスクリプトと境界値テストを生成し、先月分のデータで並走させる

Uravationでは、こうした業法要件を踏まえたClaude Code導入の個別指導・内製支援を行っています。サービス詳細無料相談のお問い合わせはこちら。次回は運送業の点呼記録シリーズの深掘りを予定しています。

著者: 佐藤傑(さとう・すぐる)
株式会社Uravation代表取締役。X(@SuguruKun_ai)フォロワー約10万人。100社以上の企業向けAI研修・導入支援を手がける。著書『AIエージェント仕事術』(SBクリエイティブ)。SoftBank IT連載執筆。

出典・参照:

Next Step

この事例を、自社の業務に置き換える。

対象業務、利用データ、評価基準、社内展開の順番まで整理すると、AI開発ツール導入の失敗を減らせます。

導入を相談する