/config コマンドを実行することで Claude Code を構成でき、ステータス情報を表示し、構成オプションを変更できるタブ付き設定インターフェースが開きます。
設定ファイル
settings.json ファイルは、階層的な設定を通じて Claude Code を構成するための公式メカニズムです:
- ユーザー設定は
~/.claude/settings.jsonで定義され、すべてのプロジェクトに適用されます。 - プロジェクト設定はプロジェクトディレクトリに保存されます:
.claude/settings.jsonはソース管理にチェックインされ、チームと共有される設定用.claude/settings.local.jsonはチェックインされない設定用で、個人的な設定と実験に便利です。Claude Code は作成時に.claude/settings.local.jsonを無視するように git を構成します。
- Claude Code のエンタープライズデプロイメントでは、エンタープライズ管理ポリシー設定もサポートしています。これらはユーザー設定とプロジェクト設定より優先されます。システム管理者は以下にポリシーをデプロイできます:
- macOS:
/Library/Application Support/ClaudeCode/managed-settings.json - Linux および WSL:
/etc/claude-code/managed-settings.json - Windows:
C:\ProgramData\ClaudeCode\managed-settings.json
- macOS:
- エンタープライズデプロイメントは、ユーザー構成サーバーをオーバーライドする管理 MCP サーバーも構成できます。エンタープライズ MCP 構成を参照してください:
- macOS:
/Library/Application Support/ClaudeCode/managed-mcp.json - Linux および WSL:
/etc/claude-code/managed-mcp.json - Windows:
C:\ProgramData\ClaudeCode\managed-mcp.json
- macOS:
Example settings.json
利用可能な設定
settings.json は多くのオプションをサポートしています:
| キー | 説明 | 例 |
|---|---|---|
apiKeyHelper | /bin/sh で実行される認証値を生成するカスタムスクリプト。この値は X-Api-Key および Authorization: Bearer ヘッダーとしてモデルリクエストに送信されます | /bin/generate_temp_api_key.sh |
cleanupPeriodDays | 最後のアクティビティ日付に基づいてチャットトランスクリプトをローカルに保持する期間(デフォルト:30 日) | 20 |
env | すべてのセッションに適用される環境変数 | {"FOO": "bar"} |
includeCoAuthoredBy | git コミットおよびプルリクエストに co-authored-by Claude の表記を含めるかどうか(デフォルト:true) | false |
permissions | 権限の構造については以下の表を参照してください。 | |
hooks | ツール実行の前後に実行するカスタムコマンドを構成します。hooks ドキュメントを参照してください | {"PreToolUse": {"Bash": "echo 'Running command..'"}} |
disableAllHooks | すべての hooks を無効にします | true |
model | Claude Code に使用するデフォルトモデルをオーバーライドします | "claude-sonnet-4-5-20250929" |
statusLine | コンテキストを表示するカスタムステータスラインを構成します。statusLine ドキュメントを参照してください | {"type": "command", "command": "~/.claude/statusline.sh"} |
outputStyle | システムプロンプトを調整する出力スタイルを構成します。出力スタイルドキュメントを参照してください | "Explanatory" |
forceLoginMethod | claudeai を使用して Claude.ai アカウントへのログインを制限するか、console を使用して Claude Console(API 使用量課金)アカウントへのログインを制限します | claudeai |
forceLoginOrgUUID | ログイン中に自動的に選択する組織の UUID を指定し、組織選択ステップをバイパスします。forceLoginMethod が設定されている必要があります | "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" |
enableAllProjectMcpServers | プロジェクト .mcp.json ファイルで定義されたすべての MCP サーバーを自動的に承認します | true |
enabledMcpjsonServers | .mcp.json ファイルから承認する特定の MCP サーバーのリスト | ["memory", "github"] |
disabledMcpjsonServers | .mcp.json ファイルから拒否する特定の MCP サーバーのリスト | ["filesystem"] |
useEnterpriseMcpConfigOnly | managed-settings.json で設定された場合、MCP サーバーを managed-mcp.json で定義されたもののみに制限します。エンタープライズ MCP 構成を参照してください | true |
allowedMcpServers | managed-settings.json で設定された場合、ユーザーが構成できる MCP サーバーのホワイトリスト。未定義 = 制限なし、空配列 = ロックダウン。すべてのスコープに適用されます。ブロックリストが優先されます。エンタープライズ MCP 構成を参照してください | [{ "serverName": "github" }] |
deniedMcpServers | managed-settings.json で設定された場合、明示的にブロックされた MCP サーバーのブロックリスト。エンタープライズサーバーを含むすべてのスコープに適用されます。ブロックリストがホワイトリストより優先されます。エンタープライズ MCP 構成を参照してください | [{ "serverName": "filesystem" }] |
awsAuthRefresh | .aws ディレクトリを変更するカスタムスクリプト(高度な認証情報構成を参照) | aws sso login --profile myprofile |
awsCredentialExport | AWS 認証情報を含む JSON を出力するカスタムスクリプト(高度な認証情報構成を参照) | /bin/generate_aws_grant.sh |
権限設定
| キー | 説明 | 例 |
|---|---|---|
allow | ツール使用を許可する権限ルールの配列。注意: Bash ルールはプレフィックスマッチングを使用し、正規表現ではありません | [ "Bash(git diff:*)" ] |
ask | ツール使用時に確認を求める権限ルールの配列。 | [ "Bash(git push:*)" ] |
deny | ツール使用を拒否する権限ルールの配列。Claude Code アクセスから機密ファイルを除外するためにも使用します。注意: Bash パターンはプレフィックスマッチであり、バイパスできます(Bash 権限の制限を参照) | [ "WebFetch", "Bash(curl:*)", "Read(./.env)", "Read(./secrets/**)" ] |
additionalDirectories | Claude がアクセスできる追加の作業ディレクトリ | [ "../docs/" ] |
defaultMode | Claude Code を開く際のデフォルト権限モード | "acceptEdits" |
disableBypassPermissionsMode | "disable" に設定して bypassPermissions モードの有効化を防止します。これにより --dangerously-skip-permissions コマンドラインフラグが無効になります。管理ポリシー設定を参照してください | "disable" |
サンドボックス設定
高度なサンドボックス動作を構成します。サンドボックスは bash コマンドをファイルシステムとネットワークから分離します。詳細はサンドボックスを参照してください。 ファイルシステムとネットワークの制限は、これらのサンドボックス設定ではなく、Read、Edit、および WebFetch 権限ルールを通じて構成されます。| キー | 説明 | 例 |
|---|---|---|
enabled | bash サンドボックスを有効にします(macOS/Linux のみ)。デフォルト:false | true |
autoAllowBashIfSandboxed | サンドボックス化されている場合、bash コマンドを自動承認します。デフォルト:true | true |
excludedCommands | サンドボックスの外で実行すべきコマンド | ["git", "docker"] |
network.allowUnixSockets | サンドボックスでアクセス可能な Unix ソケットパス(SSH エージェント用など) | ["~/.ssh/agent-socket"] |
network.allowLocalBinding | localhost ポートへのバインドを許可します(macOS のみ)。デフォルト:false | true |
network.httpProxyPort | 独自のプロキシを使用する場合に使用される HTTP プロキシポート。指定されない場合、Claude は独自のプロキシを実行します。 | 8080 |
network.socksProxyPort | 独自のプロキシを使用する場合に使用される SOCKS5 プロキシポート。指定されない場合、Claude は独自のプロキシを実行します。 | 8081 |
enableWeakerNestedSandbox | 非特権 Docker 環境用の弱いサンドボックスを有効にします(Linux のみ)。セキュリティが低下します。 デフォルト:false | true |
- Read 拒否ルールはサンドボックス内のファイル読み取りをブロックします
- Edit 許可ルールはファイル書き込みを許可します(デフォルトに加えて、例えば現在の作業ディレクトリ)
- Edit 拒否ルールは許可されたパス内の書き込みをブロックします
- WebFetch 許可ルールはネットワークドメインを許可します
- WebFetch 拒否ルールはネットワークドメインをブロックします
設定の優先順位
設定は優先順位の順序(高から低)で適用されます:-
エンタープライズ管理ポリシー(
managed-settings.json)- IT/DevOps によってデプロイされます
- オーバーライドできません
-
コマンドラインの引数
- 特定のセッションの一時的なオーバーライド
-
ローカルプロジェクト設定(
.claude/settings.local.json)- 個人的なプロジェクト固有の設定
-
共有プロジェクト設定(
.claude/settings.json)- ソース管理内のチーム共有プロジェクト設定
-
ユーザー設定(
~/.claude/settings.json)- 個人的なグローバル設定
構成システムについての重要なポイント
- メモリファイル(CLAUDE.md):Claude が起動時にロードする指示とコンテキストを含みます
- 設定ファイル(JSON):権限、環境変数、およびツール動作を構成します
- スラッシュコマンド:セッション中に
/command-nameで呼び出すことができるカスタムコマンド - MCP サーバー:追加のツールと統合で Claude Code を拡張します
- 優先順位:より高いレベルの構成(エンタープライズ)がより低いレベルのもの(ユーザー/プロジェクト)をオーバーライドします
- 継承:設定はマージされ、より具体的な設定がより広いものに追加またはオーバーライドされます
システムプロンプトの可用性
claude.ai とは異なり、Claude Code の内部システムプロンプトはこのウェブサイトで公開していません。CLAUDE.md ファイルまたは
--append-system-prompt を使用して、Claude Code の動作にカスタム指示を追加してください。機密ファイルの除外
Claude Code が機密情報(API キー、シークレット、環境ファイルなど)を含むファイルにアクセスするのを防ぐには、.claude/settings.json ファイルで permissions.deny 設定を使用してください:
ignorePatterns 構成に代わるものです。これらのパターンに一致するファイルは Claude Code に完全に見えなくなり、機密データの偶発的な露出を防ぎます。
サブエージェント構成
Claude Code は、ユーザーレベルとプロジェクトレベルの両方で構成できるカスタム AI サブエージェントをサポートしています。これらのサブエージェントは YAML フロントマターを含む Markdown ファイルとして保存されます:- ユーザーサブエージェント:
~/.claude/agents/- すべてのプロジェクト全体で利用可能 - プロジェクトサブエージェント:
.claude/agents/- プロジェクト固有で、チームと共有できます
プラグイン構成
Claude Code はプラグインシステムをサポートしており、カスタムコマンド、エージェント、フック、および MCP サーバーで機能を拡張できます。プラグインはマーケットプレイスを通じて配布され、ユーザーレベルとリポジトリレベルの両方で構成できます。プラグイン設定
settings.json のプラグイン関連設定:
enabledPlugins
どのプラグインが有効かを制御します。形式:"plugin-name@marketplace-name": true/false
スコープ:
- ユーザー設定(
~/.claude/settings.json):個人的なプラグイン設定 - プロジェクト設定(
.claude/settings.json):チームと共有されるプロジェクト固有のプラグイン - ローカル設定(
.claude/settings.local.json):マシンごとのオーバーライド(コミットされない)
extraKnownMarketplaces
リポジトリで利用可能にすべき追加マーケットプレイスを定義します。通常、チームメンバーが必要なプラグインソースにアクセスできるようにするためにリポジトリレベルの設定で使用されます。
リポジトリが extraKnownMarketplaces を含む場合:
- チームメンバーはフォルダを信頼するときにマーケットプレイスをインストールするよう促されます
- チームメンバーはそのマーケットプレイスからプラグインをインストールするよう促されます
- ユーザーは不要なマーケットプレイスまたはプラグインをスキップできます(ユーザー設定に保存されます)
- インストールは信頼境界を尊重し、明示的な同意が必要です
github:GitHub リポジトリ(repoを使用)git:任意の git URL(urlを使用)directory:ローカルファイルシステムパス(pathを使用、開発用のみ)
プラグインの管理
/plugin コマンドを使用してプラグインをインタラクティブに管理します:
- マーケットプレイスから利用可能なプラグインを参照
- プラグインをインストール/アンインストール
- プラグインを有効/無効
- プラグインの詳細を表示(提供されるコマンド、エージェント、フック)
- マーケットプレイスを追加/削除
環境変数
Claude Code は、その動作を制御するために以下の環境変数をサポートしています:すべての環境変数は
settings.json でも構成できます。これは各セッションの環境変数を自動的に設定するか、チーム全体または組織全体に環境変数のセットをロールアウトする方法として便利です。| 変数 | 目的 |
|---|---|
ANTHROPIC_API_KEY | X-Api-Key ヘッダーとして送信される API キー、通常は Claude SDK 用(インタラクティブ使用の場合は /login を実行) |
ANTHROPIC_AUTH_TOKEN | Authorization ヘッダーのカスタム値(ここで設定した値には Bearer が前置されます) |
ANTHROPIC_CUSTOM_HEADERS | リクエストに追加したいカスタムヘッダー(Name: Value 形式) |
ANTHROPIC_DEFAULT_HAIKU_MODEL | モデル構成を参照 |
ANTHROPIC_DEFAULT_OPUS_MODEL | モデル構成を参照 |
ANTHROPIC_DEFAULT_SONNET_MODEL | モデル構成を参照 |
ANTHROPIC_MODEL | 使用するモデル設定の名前(モデル構成を参照) |
ANTHROPIC_SMALL_FAST_MODEL | [非推奨] バックグラウンドタスク用 Haiku クラスモデルの名前 |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | Bedrock を使用する場合、Haiku クラスモデルの AWS リージョンをオーバーライド |
AWS_BEARER_TOKEN_BEDROCK | 認証用の Bedrock API キー(Bedrock API キーを参照) |
BASH_DEFAULT_TIMEOUT_MS | 長時間実行される bash コマンドのデフォルトタイムアウト |
BASH_MAX_OUTPUT_LENGTH | bash 出力が中央で切り詰められる前の最大文字数 |
BASH_MAX_TIMEOUT_MS | モデルが長時間実行される bash コマンドに設定できる最大タイムアウト |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | 各 Bash コマンド後に元の作業ディレクトリに戻る |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS | 認証情報をリフレッシュすべき間隔(ミリ秒)(apiKeyHelper を使用する場合) |
CLAUDE_CODE_CLIENT_CERT | mTLS 認証用のクライアント証明書ファイルへのパス |
CLAUDE_CODE_CLIENT_KEY_PASSPHRASE | 暗号化された CLAUDE_CODE_CLIENT_KEY のパスフレーズ(オプション) |
CLAUDE_CODE_CLIENT_KEY | mTLS 認証用のクライアント秘密鍵ファイルへのパス |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | DISABLE_AUTOUPDATER、DISABLE_BUG_COMMAND、DISABLE_ERROR_REPORTING、および DISABLE_TELEMETRY の設定と同等 |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE | 1 に設定して、会話コンテキストに基づく自動ターミナルタイトル更新を無効にします |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL | IDE 拡張機能の自動インストールをスキップ |
CLAUDE_CODE_MAX_OUTPUT_TOKENS | ほとんどのリクエストの最大出力トークン数を設定 |
CLAUDE_CODE_SKIP_BEDROCK_AUTH | Bedrock の AWS 認証をスキップ(例えば LLM ゲートウェイを使用する場合) |
CLAUDE_CODE_SKIP_VERTEX_AUTH | Vertex の Google 認証をスキップ(例えば LLM ゲートウェイを使用する場合) |
CLAUDE_CODE_SUBAGENT_MODEL | モデル構成を参照 |
CLAUDE_CODE_USE_BEDROCK | Bedrock を使用 |
CLAUDE_CODE_USE_VERTEX | Vertex を使用 |
DISABLE_AUTOUPDATER | 1 に設定して自動更新を無効にします。これは autoUpdates 構成設定より優先されます。 |
DISABLE_BUG_COMMAND | 1 に設定して /bug コマンドを無効にします |
DISABLE_COST_WARNINGS | 1 に設定してコスト警告メッセージを無効にします |
DISABLE_ERROR_REPORTING | 1 に設定して Sentry エラーレポートをオプトアウト |
DISABLE_NON_ESSENTIAL_MODEL_CALLS | 1 に設定してフレーバーテキストなどの非重要パスのモデル呼び出しを無効にします |
DISABLE_PROMPT_CACHING | 1 に設定してすべてのモデルのプロンプトキャッシングを無効にします(モデルごとの設定より優先) |
DISABLE_PROMPT_CACHING_HAIKU | 1 に設定して Haiku モデルのプロンプトキャッシングを無効にします |
DISABLE_PROMPT_CACHING_OPUS | 1 に設定して Opus モデルのプロンプトキャッシングを無効にします |
DISABLE_PROMPT_CACHING_SONNET | 1 に設定して Sonnet モデルのプロンプトキャッシングを無効にします |
DISABLE_TELEMETRY | 1 に設定して Statsig テレメトリをオプトアウト(Statsig イベントにはコード、ファイルパス、bash コマンドなどのユーザーデータが含まれないことに注意) |
HTTP_PROXY | ネットワーク接続用の HTTP プロキシサーバーを指定 |
HTTPS_PROXY | ネットワーク接続用の HTTPS プロキシサーバーを指定 |
MAX_MCP_OUTPUT_TOKENS | MCP ツール応答で許可される最大トークン数。Claude Code は出力が 10,000 トークンを超えると警告を表示します(デフォルト:25000) |
MAX_THINKING_TOKENS | 拡張思考を有効にし、思考プロセスのトークン予算を設定します。拡張思考は複雑な推論とコーディングタスクのパフォーマンスを向上させますが、プロンプトキャッシング効率に影響します。デフォルトで無効。 |
MCP_TIMEOUT | MCP サーバー起動のタイムアウト(ミリ秒) |
MCP_TOOL_TIMEOUT | MCP ツール実行のタイムアウト(ミリ秒) |
NO_PROXY | プロキシをバイパスして直接リクエストが発行されるドメインと IP のリスト |
SLASH_COMMAND_TOOL_CHAR_BUDGET | SlashCommand ツールに表示されるスラッシュコマンドメタデータの最大文字数(デフォルト:15000) |
USE_BUILTIN_RIPGREP | 0 に設定して Claude Code に含まれる rg の代わりにシステムインストール済みの rg を使用 |
VERTEX_REGION_CLAUDE_3_5_HAIKU | Vertex AI を使用する場合、Claude 3.5 Haiku のリージョンをオーバーライド |
VERTEX_REGION_CLAUDE_3_5_SONNET | Vertex AI を使用する場合、Claude Sonnet 3.5 のリージョンをオーバーライド |
VERTEX_REGION_CLAUDE_3_7_SONNET | Vertex AI を使用する場合、Claude 3.7 Sonnet のリージョンをオーバーライド |
VERTEX_REGION_CLAUDE_4_0_OPUS | Vertex AI を使用する場合、Claude 4.0 Opus のリージョンをオーバーライド |
VERTEX_REGION_CLAUDE_4_0_SONNET | Vertex AI を使用する場合、Claude 4.0 Sonnet のリージョンをオーバーライド |
VERTEX_REGION_CLAUDE_4_1_OPUS | Vertex AI を使用する場合、Claude 4.1 Opus のリージョンをオーバーライド |
Claude が利用可能なツール
Claude Code は、コードベースを理解し、変更するのに役立つ強力なツールのセットにアクセスできます:| ツール | 説明 | 権限が必要 |
|---|---|---|
| Bash | 環境内でシェルコマンドを実行 | はい |
| Edit | 特定のファイルに対象を絞った編集を行う | はい |
| Glob | パターンマッチングに基づいてファイルを検索 | いいえ |
| Grep | ファイルコンテンツ内のパターンを検索 | いいえ |
| NotebookEdit | Jupyter ノートブックセルを変更 | はい |
| NotebookRead | Jupyter ノートブックコンテンツを読み取り、表示 | いいえ |
| Read | ファイルのコンテンツを読み取る | いいえ |
| SlashCommand | カスタムスラッシュコマンドを実行 | はい |
| Task | 複雑なマルチステップタスクを処理するサブエージェントを実行 | いいえ |
| TodoWrite | 構造化されたタスクリストを作成、管理 | いいえ |
| WebFetch | 指定された URL からコンテンツを取得 | はい |
| WebSearch | ドメインフィルタリング付きで web 検索を実行 | はい |
| Write | ファイルを作成、上書き | はい |
/allowed-tools を使用するか、権限設定で構成できます。また、ツール固有の権限ルールも参照してください。
フックでツールを拡張
Claude Code フックを使用して、任意のツール実行の前後にカスタムコマンドを実行できます。 例えば、Claude が Python ファイルを変更した後に Python フォーマッターを自動的に実行したり、特定のパスへの Write 操作をブロックして本番構成ファイルへの変更を防止したりできます。関連項目
- Identity and Access Management - Claude Code の権限システムについて学ぶ
- IAM とアクセス制御 - エンタープライズポリシー管理
- トラブルシューティング - 一般的な構成の問題の解決策