Settings.json と Permissions の詳細
重要キーワード (4 語)
settings.json
(設定ファイル)
— Claude Code の挙動を JSON で設定
Permissions
(権限ルール)
— ツールごとに許可/拒否/確認を細かく指定
Statusline
(ステータスライン)
— ターミナル下部の状態表示。カスタム可
Local vs Shared
(個人 vs 共有)
— settings.local.json と settings.json の使い分け
Settings.json: Claude Code の中央管制
.claude/settings.json (プロジェクト用) と ~/.claude/settings.json (グローバル) で
Claude Code のあらゆる挙動を設定できます。
階層と優先順位
---
description: プロジェクトの全テストを実行する
---
このプロジェクトの自動テストを実行し、失敗があれば原因を分析してください。
- Python: `pytest -q`
- Node: `npm test`
失敗したテスト名と原因の要約を箇条書きでまとめてください。
下の階層が上書き優先。API キーやトークンは local に書くのが安全。
主なトップレベル項目
---
description: 指定したファイルを要約
---
@$ARGUMENTS の内容を 5 行で要約してください。
Permissions の書き方
ツールごとに allow / ask / deny をルールで指定できます。
wzxhzdk:2
マッチャ構文
Read(*)... 任意の引数で許可Bash(pytest *)... 引数のプレフィックスマッチEdit(.env)... 完全一致
移行戦略
- 最初は
askを多めに → 慣れたらallowに移す - 危険操作は 常に deny に固定 (
rm -rf,git push --force,.env編集)
Statusline をカスタマイズ
wzxhzdk:3
ブランチ名や残トークンなどを常時表示できます。
env で環境変数を固定
セッション内で常時有効な環境変数。秘匿情報は 絶対に書かない こと (commit 漏れ事故を防ぐ)。
Plugin
カスタムスキル + コマンド + MCP を 1 パッケージで配布できる仕組み。
wzxhzdk:4
設定の確認
wzxhzdk:5
よくある失敗
- ❌
settings.jsonに API キーを書いて commit - ❌
allowでBash(*)を許可してしまう (危険) - ❌
denyを使わず権限制御を諦める - ✅
settings.jsonは チームで共有する固定ルール,settings.local.jsonで個別設定
試す
設定の改善案を Claude に提案させましょう。
次の `.claude/settings.json` の安全性を評価してください。問題点と改善案を箇条書きで。
```json
{
"permissions": {
"allow": ["Bash(*)", "Edit(*)"],
"deny": []
}
}
```チーム標準 settings.json テンプレ (コピペ用)
新規プロジェクトに置く デフォルト として:
wzxhzdk:6
→ 読み取りはほぼ自由 / 編集は対象ディレクトリだけ / 危険コマンドと秘密ファイルは絶対 deny。 新人がリポジトリを clone してすぐ Claude Code を使い始めても安全。
個人 (settings.local.json) のテンプレ
.gitignore に settings.local.json を必ず追加してから:
wzxhzdk:7
→ 個人の API キー・好みの追加コマンドはここに。チーム共有 settings.json と統合される。