Claude Code設定
グローバルおよびプロジェクトレベルの設定と環境変数でClaude Codeを設定します。
Claude Codeは、あなたのニーズに合わせてその動作を設定するための様々な設定を提供しています。インタラクティブREPLを使用する際に/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:
利用可能な設定
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 documentationを参照 | {"PreToolUse": {"Bash": "echo 'Running command...'"}} |
model | Claude Codeで使用するデフォルトモデルを上書きします | "claude-3-5-sonnet-20241022" |
statusLine | コンテキストを表示するカスタムステータスラインを設定します。statusLine documentationを参照 | {"type": "command", "command": "~/.claude/statusline.sh"} |
forceLoginMethod | claudeai を使用してClaude.aiアカウントへのログインを制限、console を使用してAnthropic Console(API使用料金)アカウントへのログインを制限 | claudeai |
enableAllProjectMcpServers | プロジェクトの.mcp.json ファイルで定義されたすべてのMCPサーバーを自動的に承認 | true |
enabledMcpjsonServers | .mcp.json ファイルから承認する特定のMCPサーバーのリスト | ["memory", "github"] |
disabledMcpjsonServers | .mcp.json ファイルから拒否する特定のMCPサーバーのリスト | ["filesystem"] |
awsAuthRefresh | .aws ディレクトリを変更するカスタムスクリプト(高度な認証情報設定を参照) | aws sso login --profile myprofile |
awsCredentialExport | AWS認証情報を含むJSONを出力するカスタムスクリプト(高度な認証情報設定を参照) | /bin/generate_aws_grant.sh |
権限設定
キー | 説明 | 例 |
---|---|---|
allow | ツール使用を許可する権限ルールの配列 | [ "Bash(git diff:*)" ] |
ask | ツール使用時に確認を求める権限ルールの配列。 | [ "Bash(git push:*)" ] |
deny | ツール使用を拒否する権限ルールの配列。これを使用してClaude Codeアクセスから機密ファイルを除外することもできます。 | [ "WebFetch", "Bash(curl:*)", "Read(./.env)", "Read(./secrets/**)" ] |
additionalDirectories | Claudeがアクセスできる追加の作業ディレクトリ | [ "../docs/" ] |
defaultMode | Claude Code起動時のデフォルト権限モード | "acceptEdits" |
disableBypassPermissionsMode | "disable" に設定するとbypassPermissions モードの有効化を防ぎます。管理ポリシー設定を参照 | "disable" |
設定の優先順位
設定は優先順位の順序で適用されます(高い順から低い順):
-
エンタープライズ管理ポリシー(
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 Codeの動作にカスタム指示を追加するには、CLAUDE.mdファイルまたは--append-system-prompt
を使用してください。
機密ファイルの除外
Claude Codeが機密情報を含むファイル(例:APIキー、シークレット、環境ファイル)にアクセスすることを防ぐには、.claude/settings.json
ファイルでpermissions.deny
設定を使用します:
これは非推奨のignorePatterns
設定を置き換えます。これらのパターンに一致するファイルはClaude Codeから完全に見えなくなり、機密データの偶発的な露出を防ぎます。
サブエージェント設定
Claude Codeは、ユーザーレベルとプロジェクトレベルの両方で設定できるカスタムAIサブエージェントをサポートしています。これらのサブエージェントはYAMLフロントマターを持つMarkdownファイルとして保存されます:
- ユーザーサブエージェント:
~/.claude/agents/
- すべてのプロジェクトで利用可能 - プロジェクトサブエージェント:
.claude/agents/
- プロジェクト固有でチームと共有可能
サブエージェントファイルは、カスタムプロンプトとツール権限を持つ専門化されたAIアシスタントを定義します。サブエージェントの作成と使用について詳しくは、subagents documentationをご覧ください。
環境変数
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_MODEL | 使用するカスタムモデルの名前(Model Configurationを参照) |
ANTHROPIC_SMALL_FAST_MODEL | バックグラウンドタスク用のHaikuクラスモデルの名前 |
ANTHROPIC_SMALL_FAST_MODEL_AWS_REGION | Bedrockを使用する際の小型/高速モデルのAWSリージョンを上書き |
AWS_BEARER_TOKEN_BEDROCK | 認証用のBedrock APIキー(Bedrock API keysを参照) |
BASH_DEFAULT_TIMEOUT_MS | 長時間実行されるbashコマンドのデフォルトタイムアウト |
BASH_MAX_TIMEOUT_MS | モデルが長時間実行されるbashコマンドに設定できる最大タイムアウト |
BASH_MAX_OUTPUT_LENGTH | bash出力が中央で切り詰められる前の最大文字数 |
CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | 各Bashコマンド後に元の作業ディレクトリに戻る |
CLAUDE_CODE_API_KEY_HELPER_TTL_MS | 認証情報を更新する間隔(ミリ秒)(apiKeyHelper 使用時) |
CLAUDE_CODE_IDE_SKIP_AUTO_INSTALL | IDE拡張機能の自動インストールをスキップ |
CLAUDE_CODE_MAX_OUTPUT_TOKENS | ほとんどのリクエストの最大出力トークン数を設定 |
CLAUDE_CODE_USE_BEDROCK | Bedrockを使用 |
CLAUDE_CODE_USE_VERTEX | Vertexを使用 |
CLAUDE_CODE_SKIP_BEDROCK_AUTH | BedrockのAWS認証をスキップ(LLMゲートウェイ使用時など) |
CLAUDE_CODE_SKIP_VERTEX_AUTH | VertexのGoogle認証をスキップ(LLMゲートウェイ使用時など) |
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC | DISABLE_AUTOUPDATER 、DISABLE_BUG_COMMAND 、DISABLE_ERROR_REPORTING 、DISABLE_TELEMETRY の設定と同等 |
CLAUDE_CODE_DISABLE_TERMINAL_TITLE | 会話コンテキストに基づく自動ターミナルタイトル更新を無効にするには1 に設定 |
DISABLE_AUTOUPDATER | 自動更新を無効にするには1 に設定。これはautoUpdates 設定よりも優先されます。 |
DISABLE_BUG_COMMAND | /bug コマンドを無効にするには1 に設定 |
DISABLE_COST_WARNINGS | コスト警告メッセージを無効にするには1 に設定 |
DISABLE_ERROR_REPORTING | Sentryエラーレポートをオプトアウトするには1 に設定 |
DISABLE_NON_ESSENTIAL_MODEL_CALLS | フレーバーテキストなどの非重要パスのモデル呼び出しを無効にするには1 に設定 |
DISABLE_TELEMETRY | Statsigテレメトリをオプトアウトするには1 に設定(Statsigイベントにはコード、ファイルパス、bashコマンドなどのユーザーデータは含まれません) |
HTTP_PROXY | ネットワーク接続用のHTTPプロキシサーバーを指定 |
HTTPS_PROXY | ネットワーク接続用のHTTPSプロキシサーバーを指定 |
MAX_THINKING_TOKENS | モデル予算の思考を強制 |
MCP_TIMEOUT | MCPサーバー起動のタイムアウト(ミリ秒) |
MCP_TOOL_TIMEOUT | MCPツール実行のタイムアウト(ミリ秒) |
MAX_MCP_OUTPUT_TOKENS | MCPツールレスポンスで許可される最大トークン数(デフォルト:25000) |
USE_BUILTIN_RIPGREP | Claude Codeに含まれるrg の代わりにシステムインストールされたrg を使用するには0 に設定 |
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 config list
- 設定を確認:
claude config get <key>
- 設定を変更:
claude config set <key> <value>
- 設定にプッシュ(リスト用):
claude config add <key> <value>
- 設定から削除(リスト用):
claude config remove <key> <value>
デフォルトではconfig
はプロジェクト設定を変更します。グローバル設定を管理するには、--global
(または-g
)フラグを使用します。
グローバル設定
グローバル設定を設定するには、claude config set -g <key> <value>
を使用します:
キー | 説明 | 例 |
---|---|---|
autoUpdates | 自動更新を有効にするかどうか(デフォルト:true )。有効にすると、Claude Codeはバックグラウンドで自動的に更新をダウンロードしてインストールします。更新はClaude Codeを再起動すると適用されます。 | false |
preferredNotifChannel | 通知を受け取りたい場所(デフォルト:iterm2 ) | iterm2 、iterm2_with_bell 、terminal_bell 、またはnotifications_disabled |
theme | カラーテーマ | dark 、light 、light-daltonized 、またはdark-daltonized |
verbose | 完全なbashおよびコマンド出力を表示するかどうか(デフォルト:false ) | true |
Claudeが利用できるツール
Claude Codeは、コードベースを理解し変更するのに役立つ強力なツールセットにアクセスできます:
ツール | 説明 | 必要な権限 |
---|---|---|
Bash | 環境でシェルコマンドを実行 | はい |
Edit | 特定のファイルに対象を絞った編集を行う | はい |
Glob | パターンマッチングに基づいてファイルを検索 | いいえ |
Grep | ファイル内容のパターンを検索 | いいえ |
LS | ファイルとディレクトリを一覧表示 | いいえ |
MultiEdit | 単一ファイルに対して複数の編集を原子的に実行 | はい |
**Not |
ebookEdit** | Jupyterノートブックセルを変更 | はい | | NotebookRead | Jupyterノートブックの内容を読み取り表示 | いいえ | | Read | ファイルの内容を読み取り | いいえ | | Task | 複雑な多段階タスクを処理するサブエージェントを実行 | いいえ | | TodoWrite | 構造化されたタスクリストを作成・管理 | いいえ | | WebFetch | 指定されたURLからコンテンツを取得 | はい | | WebSearch | ドメインフィルタリング付きでWeb検索を実行 | はい | | Write | ファイルを作成または上書き | はい |
権限ルールは/allowed-tools
または権限設定で設定できます。
フックでツールを拡張
Claude Code hooksを使用して、任意のツール実行の前後にカスタムコマンドを実行できます。
例えば、ClaudeがPythonファイルを変更した後に自動的にPythonフォーマッターを実行したり、特定のパスへのWrite操作をブロックして本番設定ファイルの変更を防いだりできます。
関連項目
- Identity and Access Management - Claude Codeの権限システムについて学ぶ
- IAMとアクセス制御 - エンタープライズポリシー管理
- トラブルシューティング - 一般的な設定問題の解決策