重要 : 本記事をお読みいただく前に
本記事では、Claude CodeやChatGPTなどの生成AIを活用し、生徒の情報を参照しながら校務を支援する仕組みについて紹介しています。
ただし、2026年8月現在、筆者が個人で契約しているClaude Code、ChatGPTその他の生成AIサービスに、氏名、成績、指導記録など、生徒を特定できる情報を入力することはできません。
ChatGPTやClaudeのWeb版についても、個人アカウントで利用している場合は同様です。
これは、文部科学省の「教育情報セキュリティポリシーに関するガイドライン」や、学校・教育委員会が定める情報セキュリティポリシーにおいて、生徒情報を私的に契約した外部サービスで取り扱うことが認められていないためです。
そのため、本記事で紹介している内容は、筆者が現在、生徒情報を実際にClaude CodeやChatGPTへ入力して運用している事例ではありません。将来、学校または教育委員会が生成AIサービスを正式に導入し、必要なセキュリティ対策と利用ルールが整備された場合に、どのような校務活用が可能になるかを検討した構想です。
現時点では、教育委員会が管理するGoogle Workspace for Educationの環境が、生徒情報を扱うための最も現実的な選択肢です。
Google以外では、学校や教育委員会が組織として正式に契約することを前提に、次のサービスも将来的な候補になり得ます。
- ChatGPT Enterprise
- Claude Enterprise
ただし、これらのサービスも、契約するだけで生徒情報を入力できるわけではありません。多要素認証、アクセス制御、入力情報をAIの学習に使用しない契約、データの保存・削除、利用記録、教育委員会による審査と承認など、複数の条件を満たす必要があります。
本記事は、現在認められていない方法を推奨するものではありません。将来、学校現場で安全に生成AIを利用できる環境が整った場合に備え、その可能性と仕組みを整理したものです。
実際に生徒情報を取り扱う際は、必ず所属する教育委員会および学校の情報セキュリティポリシーを確認し、管理職や情報セキュリティ担当者の指示に従ってください。
なお、文科省のセキュリティーポリシーに関する記事も用意しています。こちら「生成AIに生徒情報はどこまで入力できる?文科省ガイドラインで検証した「重要性分類Ⅱ」の条件」をご覧ください。

では、記事をお読みください。
Claude Codeを使っていて、いつの間にか見覚えのないファイルが増えていることに気づき、少し不安になったことはありませんか。
伝さん実は私も、あるアプリを開発している最中に同じ違和感を覚え、正体を確かめたことがあります。
この記事では、そのとき見つけた「settings.local.json」というファイルの正体と仕組みを、専門用語をひとつずつかみ砕きながら整理します。
許可の記録のされ方や、似た名前を持つ「settings.json」との違いも、実際の画面を例にしながら具体的に紹介していきます。
長年、学校現場で専門用語を「初めて聞く人にもわかる言葉」に翻訳して伝えてきた経験を活かし、今日から迷わず使える形でお伝えします。
この記事を読めば、settings.local.jsonが何のためにあるファイルかがわかり、中身を見ても身構えずにClaude Codeを使い続けられるようになります。
この記事では、次の流れで解説します。
- Claude Codeの「settings.local.json」とは何か
- このファイルが勝手に増えていく理由
- ファイル名の「local」が意味すること
- settings.jsonとsettings.local.jsonの違い
- settings.local.jsonに書けるほかの設定項目
- Claude Codeの隠しフォルダ「.claude」について知っておきたいこと
それでは、順番に説明していきましょう。
Claude Codeの「settings.local.json」とは何か
Claude Codeを使い始めてプロジェクトで操作をしていると、気づかないうちに.claudeというフォルダの中にsettings.local.jsonというファイルが作られています。
- このファイルはClaude Codeが自動で作る設定ファイル
- 役割は「Claude Codeの許可証」
まずはこのファイルの正体から確認していきましょう。
このファイルはClaude Codeが自動で作る設定ファイル
settings.local.jsonは、Claude Codeがそのプロジェクト専用に使う設定ファイルです。
Claude Codeは操作のたびに「このプロジェクトではどう動いてよいか」を記録しておく必要があるため、使い始めると自動的にこのファイルを作成します。
実際のフォルダ構成を見ると、.claude/skills/と同じ階層に置かれており、スキル(Claude Codeの拡張機能のようなものです)とセットで管理されていることがわかります。
意識して作った覚えがなくても、Claude Codeを使えば自然と作られるファイルだと理解しておけば十分です。



むずかしく考えなくて大丈夫です。Claude Codeが「このプロジェクト専用のメモ帳」を自動でつくっているとイメージしてください。
役割は「Claude Codeの許可証」
このファイルの役割をひと言でまとめると、「Claude Codeの許可証」です。実際に開発中のプロジェクトで中身を確認すると、次のような記述が並んでいます。


"permissions": {
"allow": [
"Bash(npm create *)",
"Bash(npm install *)",
"Bash(git add *)",
"Bash(git commit *)",
"Bash(git push *)"
]
}
これは、「このプロジェクトでは、これらのコマンドは毎回確認しなくても実行してよい」という意味です。
つまりsettings.local.jsonは、これまでにあなたがClaude Codeに与えた「実行の許可」を記録した一覧表なのです。
このファイルが勝手に増えていく理由


続いて、多くの人が驚くポイント、なぜ許可の項目がどんどん増えていくのかを見ていきましょう。
仕組みを知れば、驚きが安心に変わります。
- コマンド実行時に確認画面が出る仕組み
- 「Always allow」を選ぶと許可が記録される
順番に見ていきましょう。
コマンド実行時に確認画面が出る仕組み
Claude Codeは、まだ許可していないコマンドを実行しようとすると、必ず先に確認画面を表示します。
たとえばnpm installを初めて実行しようとすると、「実行してもいいですか?」という確認が出ます。これは、意図しない操作が勝手に実行されてしまうのを防ぐための、Claude Code側の安全装置です。



毎回同じ確認が出るの、正直ちょっと面倒じゃないですか?



そう感じますよね。でもその面倒さには理由があって、次の項目を知ると納得できますよ。
「Always allow」を選ぶと許可が記録される
確認画面が出たときに「Always allow(常に許可)」のような選択をすると、Claude Codeはそのコマンド(たとえばBash(npm install *))をsettings.local.jsonに書き込みます。
一度書き込まれると、次回以降は同じ確認をせずに実行できるようになります。
つまり、使えば使うほど許可の項目が増えていくのは自然な動作であり、ファイルが壊れているわけでも、何かおかしなことが起きているわけでもありません。
ファイル名の「local」が意味すること


ファイル名に含まれる「local」という単語にも、実はきちんとした意味があります。ここを理解すると、このファイルへの安心感がぐっと増します。
- 「自分のPCだけ」「このプロジェクトだけ」に効く設定
- Gitには通常登録されない
順番に見ていきましょう。
「自分のPCだけ」「このプロジェクトだけ」に効く設定
settings.local.jsonの「local」は、「自分だけ」という意味です。
この設定が有効なのは、自分が使っているそのパソコンの、その1つのプロジェクトだけに限られます。
同じプロジェクトを別の人が開いても、その人にはその人自身の許可リストがあり、あなたの設定が勝手に適用されることはありません。



私も最初は「え、これ他の人にも影響あるの?」と不安になりましたが、”自分専用”だと知って一気に安心しました。
Gitには通常登録されない
さらに、settings.local.jsonは通常、Gitの管理対象から外れます。
Claude Codeがこのファイルを作成する際に、Gitで無視する設定(.gitignore)へ自動的に登録してくれるためです。
つまり、あなたが個人的に許可したコマンドの履歴が、チームの共有リポジトリに公開されてしまう心配は基本的にありません。
settings.jsonとsettings.local.jsonの違い


名前がよく似ているため混同されがちな2つのファイルを、ここで整理しておきましょう。
- settings.jsonはチーム共有の設定
- settings.local.jsonは自分専用の設定
順番に見ていきましょう。
settings.jsonはチーム共有の設定
.claude/settings.jsonは、プロジェクトに関わる全員に適用される共有設定です。
たとえばsettings.jsonに「npm testを許可する」と書かれていれば、そのプロジェクトを開く全員にとって、npm testが確認なしで実行できるようになります。
チームでルールを揃えたいときに使うファイルです。
settings.local.jsonは自分専用の設定
一方の.claude/settings.local.jsonは、自分だけに適用される個人設定です。
同じ「npm testを許可する」という内容でも、settings.local.jsonに書かれていれば、それはあなた自身の環境だけで有効になります。
| ファイル | 用途 |
|---|---|
.claude/settings.json | チーム全員で共有する設定 |
.claude/settings.local.json | 自分だけの設定 |
この違いを知っておくだけで、「このファイルを編集したら他の人にも影響するのでは」という不要な心配がなくなります。
settings.local.jsonに書けるほかの設定項目


ここまでは許可(permissions)の話が中心でしたが、実はこのファイルに書ける内容はそれだけではありません。
- permissions以外にも書ける項目がある
- 今は許可コマンド一覧として使われていることが多い
順番に見ていきましょう。
permissions以外にも書ける項目がある
settings.local.jsonには、permissionsのほかにも、サンドボックス(実行環境を限定する仕組み)設定・プラグイン設定・環境変数・Claude Codeの動作全般に関わる設定など、さまざまな項目を書き込むことができます。
Claude Codeの使い方が広がっていくと、これらの項目が増えていく可能性もあります。
今は許可コマンド一覧として使われていることが多い
とはいえ、日常的にClaude Codeを使っているだけであれば、中身はpermissionsだけというケースがほとんどです。
git commit・git push・npm install・python3・nodeといったコマンドを一度許可したことで、次回以降Claude Codeが確認なしで実行できるようになっている、という状態です。
難しく考えず、「これまで自分が許可したコマンドの記録」という理解で、まず問題ありません。
Claude Codeの隠しフォルダ「.claude」について知っておきたいこと


最後に、settings.local.jsonがどこに置かれているかを確認しておきましょう。
見つからずに困る人が多いポイントです。
- 隠しフォルダとは何か
- IDEでは見えるがFinderでは通常見えない
順番に見ていきましょう。
隠しフォルダとは何か
settings.local.jsonが入っている.claudeフォルダは、フォルダ名の先頭に「.(ピリオド)」がついた隠しフォルダです。
パソコンの世界では、名前が「.」から始まるフォルダやファイルは、普段の作業で誤って触れてしまわないように、標準では表示されない仕組みになっています。
隠されているのは特別だからではなく、あくまで「普段は意識しなくていい場所」だからです。
IDEでは見えるがFinderでは通常見えない
VS CodeやAntigravityなどのIDE(コードを書くための専用アプリ)では、.claudeフォルダは通常どおり表示されます。
一方で、Mac標準のFinderでは、初期設定のままだと表示されません。



私自身、あるアプリを開発しているときにIDEの画面で偶然このファイルに気づき、そこから正体を調べていきました。Finderだけを見ていたら、一生気づかなかったかもしれません。
Claude Codeのsettings.local.jsonに関するよくある質問
- settings.local.jsonを削除しても大丈夫ですか?
-
削除しても問題はありません。削除するとこれまでの許可がリセットされ、次にコマンドを実行する際に再び確認画面が表示されるようになります。中身を怖がる必要はなく、必要なら消してまた作り直せるファイルです。
- settings.local.jsonはGitHubに公開されますか?
-
通常は公開されません。Claude Codeが作成時に自動でGitの無視リスト(.gitignore)へ登録するため、個人の許可設定がチームのリポジトリに共有される心配は基本的にありません。
- 許可した内容を後から取り消せますか?
-
できます。ファイルを開いて該当する許可の行を削除・編集すれば、その操作は次回以降また確認画面が表示されるようになります。手動で管理したい場合はこの方法が有効です。
- settings.jsonとsettings.local.jsonは同時に使えますか?
-
使えます。settings.jsonでチーム共通のルールを決めつつ、settings.local.jsonで自分専用の追加ルールを設定するという併用が一般的な使い方です。
- .claudeフォルダが見つからないときはどうすればいいですか?
-
Finderの初期設定では隠しフォルダは表示されません。MacのFinder上でcommand+shift+.(ピリオド)を押すと表示・非表示を切り替えられるので、まずはこの操作を試してみてください。
まとめ|settings.local.jsonの正体を知ってClaude Codeを安心して使おう


まず理解しておくべきなのは、settings.local.jsonはClaude Codeがプロジェクトごとに自動で作る「許可の記録簿」だということです。
怪しいファイルでも、誤って作られたファイルでもありません。
このファイルが増えていくのは、あなたがコマンドの実行を許可するたびに、Claude Codeがそれを書き留めているためです。
使い込むほど中身が増えていくのは、むしろ正常に機能している証拠だといえます。
見つけたときは、削除したり中身を無理に触ったりする前に、まず「これは自分がこれまで許可してきた操作の一覧なんだ」と捉え直してみましょう。
もう一つ大切なのは、settings.jsonとの違いを正しく区別しておくことです。
settings.jsonはチーム共有の設定、settings.local.jsonは自分専用の設定という役割分担があります。
この違いを知らないままだと、「自分の設定変更がチーム全体に影響するのでは」といった不要な不安を抱えたまま作業を続けることになりかねません。
判断に迷ったときの基準はシンプルです。
ファイル名に「local」とついていれば、それは自分専用の設定だと覚えておきましょう。
中身を確認する前に、まずそのファイルが誰のためのものかを思い出してください。
そのうえで仕組みを理解しておけば、次にどんなコマンドの許可を求められても迷いなく判断できるようになり、必要以上に身構える心配もありません。
settings.local.jsonの正体を知ることは、あなたがClaude Codeという新しい相棒を、より深く使いこなすための一歩を確実に支えてくれるのです。
Claude Codeの活用法については、他の記事でも現場目線の実践例を紹介していますので、ぜひあわせてご覧ください。
※注記
本記事で紹介している.claudeフォルダは隠しフォルダです。VS CodeなどのIDE環境では表示されますが、Mac標準のFinderでは初期設定のまま見ようとしても通常は表示されません。Finderで表示したい場合は、command+shift+.(ピリオド)を押すと隠しファイル・フォルダの表示/非表示を切り替えられます。









コメント