NodeJS 18+をインストールし、次のコマンドを実行します:

npm install -g @anthropic-ai/claude-code

権限の問題やセキュリティリスクにつながる可能性があるため、sudo npm install -gは使用しないでください。権限エラーが発生した場合は、Claude Codeの設定で推奨される解決策を参照してください。

Claude Codeは、ターミナル上で動作し、コードベースを理解し、自然言語コマンドを通じてより速くコーディングできるようサポートするエージェント型コーディングツールです。開発環境に直接統合することで、追加のサーバーや複雑なセットアップを必要とせずにワークフローを効率化します。

Claude Codeの主な機能は以下の通りです:

  • コードベース全体でのファイル編集やバグ修正
  • コードのアーキテクチャやロジックに関する質問への回答
  • テスト、リンティング、その他のコマンドの実行と修正
  • gitの履歴検索、マージ競合の解決、コミットとPRの作成

研究プレビュー

Codeはベータ版として研究プレビュー中です。AIとの協業の好み、AIアシスタンスが最も役立つワークフロー、エージェント体験の改善方法について、開発者からのフィードバックを収集しています。

この初期バージョンはユーザーフィードバックに基づいて進化します。今後数週間で、ツール実行の信頼性、長時間実行コマンドのサポート、ターミナルレンダリング、Claudeの自己能力認識の向上を計画しています。

バグは/bugコマンドで直接報告するか、GitHubリポジトリを通じて報告してください。


始める前に

システム要件の確認

  • オペレーティングシステム: macOS 10.15+、Ubuntu 20.04+/Debian 10+、またはWSL経由のWindows
  • ハードウェア: 最低4GB RAM
  • ソフトウェア:
    • Node.js 18+
    • git 2.23+(オプション)
    • PRワークフロー用のGitHubまたはGitLab CLI(オプション)
    • 拡張ファイル検索用のripgrep(rg)(オプション)
  • ネットワーク: 認証とAI処理にはインターネット接続が必要
  • 地域: 対応国でのみ利用可能

WSLインストールのトラブルシューティング

現在、Claude CodeはWindows上で直接実行できず、WSLが必要です。WSLで問題が発生した場合:

  1. OS/プラットフォーム検出の問題: インストール中にエラーが発生した場合、WSLがWindowsのnpmを使用している可能性があります。以下を試してください:

    • インストール前にnpm config set os linuxを実行
    • npm install -g @anthropic-ai/claude-code --force --no-os-checkでインストール(sudoは使用しないでください)
  2. Nodeが見つからないエラー: claude実行時にexec: node: not foundが表示される場合、WSL環境がWindowsのNode.jsインストールを使用している可能性があります。which npmwhich nodeで確認できます。これらは/mnt/c/ではなく/usr/で始まるLinuxパスを指すはずです。修正するには、Linuxディストリビューションのパッケージマネージャーまたはnvmを使用してNodeをインストールしてみてください。

インストールと認証

1

Claude Codeをインストール

ターミナルで実行:npm install -g @anthropic-ai/claude-code

権限の問題やセキュリティリスクにつながる可能性があるため、sudo npm install -gは使用しないでください。権限エラーが発生した場合は、Claude Codeの設定で推奨される解決策を参照してください。

2

プロジェクトに移動

cd your-project-directory
3

Claude Codeを起動

起動するにはclaudeを実行
4

認証を完了

Claude Codeは2つの認証オプションを提供します:

  • Anthropic Console: デフォルトのオプション。Anthropic Consoleを通じて接続し、OAuth処理を完了します。console.anthropic.comでのアクティブな課金が必要です。

  • Maxプラン: Claudeの Maxプランに登録すると、Claude CodeとWebインターフェースの両方を含む単一のサブスクリプションが利用できます。同じ価格帯でより多くの価値を得ながら、一か所でアカウントを管理できます。Claude.aiアカウントでログインします。起動時に、サブスクリプションタイプに合ったオプションを選択してください。


主な機能とワークフロー

Claude Codeはターミナル上で直接動作し、プロジェクトのコンテキストを理解し、実際のアクションを実行します。コンテキストにファイルを手動で追加する必要はなく、Claudeは必要に応じてコードベースを探索します。

セキュリティとプライバシーを設計段階から考慮

コードのセキュリティは最も重要です。Claude Codeのアーキテクチャは以下を保証します:

  • 直接APIに接続: クエリは中間サーバーを経由せずにAnthropicのAPIに直接送信されます
  • あなたの作業場所で動作: ターミナル上で直接操作します
  • コンテキストを理解: プロジェクト構造全体を把握します
  • アクションを実行: ファイルの編集やコミットの作成など、実際の操作を実行します

質問から解決策まで数秒で

# コードベースについて質問する
claude
> how does our authentication system work?

# 1つのコマンドでコミットを作成
claude commit

# 複数のファイルにまたがる問題を修正
claude "fix the type errors in the auth module"

プロジェクトを初期化する

初めてのユーザーには以下をお勧めします:

  1. claudeでClaude Codeを起動
  2. summarize this projectのような簡単なコマンドを試す
  3. /initでCLAUDE.mdプロジェクトガイドを生成
  4. 生成されたCLAUDE.mdファイルをリポジトリにコミットするようClaudeに依頼

一般的なタスクにClaude Codeを使用する

Claude Codeはターミナル上で直接動作し、プロジェクトのコンテキストを理解し、実際のアクションを実行します。コンテキストにファイルを手動で追加する必要はなく、Claudeは必要に応じてコードベースを探索します。

馴染みのないコードを理解する

> what does the payment processing system do?
> find where user permissions are checked
> explain how the caching layer works

Git操作を自動化する

> commit my changes
> create a pr
> which commit added tests for markdown back in December?
> rebase on main and resolve any merge conflicts

コードをインテリジェントに編集する

> add input validation to the signup form
> refactor the logger to use the new API
> fix the race condition in the worker queue

コードのテストとデバッグ

> run tests for the auth module and fix failures
> find and fix security vulnerabilities
> explain why this test is failing

より深い思考を促す

複雑な問題については、Claudeにより深く考えるよう明示的に依頼してください:

> think about how we should architect the new payment service
> think hard about the edge cases in our authentication flow

Claude Codeは、Claudeが拡張思考を使用している場合(Claude Sonnet 3.7、Claude Opus 4で利用可能)に表示します。計画が必要なタスクには、事前に「think」または「think deeply」とClaudeに促すことができます。まずタスクについてClaudeに伝え、プロジェクトからコンテキストを収集させることをお勧めします。その後、計画を作成するために「think」と依頼してください。

使用する言葉によってClaudeはより深く考えます。例えば、単に「think」と言うよりも「think hard」と言うと、より拡張された思考が促されます。

詳細なヒントについては、拡張思考のヒントをご覧ください。

CIとインフラワークフローの自動化

Claude Codeには、ヘッドレス実行のための非インタラクティブモードが付属しています。これは、スクリプト、パイプライン、Github Actionsなどの非インタラクティブなコンテキストでClaude Codeを実行する場合に特に便利です。

非インタラクティブモードで実行するには、--print-p)を使用します。このモードでは、ANTHROPIC_API_KEY環境変数でカスタムAPIキーを提供できます。

非インタラクティブモードは、Claudeが使用できるコマンドのセットを事前に設定する場合に特に便利です:

export ANTHROPIC_API_KEY=sk_...
claude -p "update the README with the latest changes" --allowedTools "Bash(git diff:*)" "Bash(git log:*)" Write --disallowedTools ...

コマンドでClaude Codeを制御する

CLIコマンド

コマンド説明
claudeインタラクティブREPLを開始claude
claude "query"初期プロンプトでREPLを開始claude "explain this project"
claude -p "query"一回限りのクエリを実行して終了claude -p "explain this function"
cat file | claude -p "query"パイプされたコンテンツを処理cat logs.txt | claude -p "explain"
claude config設定を構成claude config set --global theme dark
claude update最新バージョンに更新claude update
claude mcpModel Context Protocolサーバーを設定チュートリアルのMCPセクションを参照

CLIフラグ:

  • --print-p): インタラクティブモードなしでレスポンスを表示
  • --json: --printモードでJSON出力を返す、スクリプト作成と自動化に便利
  • --verbose: 詳細なログを有効にし、ターンごとの完全な出力を表示(プリントモードとインタラクティブモードの両方でデバッグに役立つ)
  • --dangerously-skip-permissions: 権限プロンプトをスキップ

スラッシュコマンド

セッション内でClaudeの動作を制御します:

コマンド目的
/bugバグを報告(会話をAnthropicに送信)
/clear会話履歴をクリア
/compact [instructions]オプションの焦点指示で会話をコンパクトにする
/config設定の表示/変更
/costトークン使用統計を表示
/doctorClaude Codeインストールの健全性をチェック
/help使用方法のヘルプを取得
/initCLAUDE.mdガイドでプロジェクトを初期化
/loginAnthropicアカウントを切り替え
/logoutAnthropicアカウントからサインアウト
/memoryCLAUDE.mdメモリファイルを編集
/pr_commentsプルリクエストのコメントを表示
/reviewコードレビューをリクエスト
/terminal-setup改行用のShift+Enterキーバインディングをインストール(iTerm2とVSCodeのみ)
/vim挿入モードとコマンドモードを切り替えるvimモードに入る

Claudeのメモリを管理する

Claude Codeはスタイルガイドラインやワークフローでの一般的なコマンドなど、セッション間で設定を記憶できます。

メモリタイプの決定

Claude Codeは3つのメモリロケーションを提供し、それぞれ異なる目的を持ちます:

メモリタイプ場所目的使用例
プロジェクトメモリ./CLAUDE.mdチーム共有の規則と知識プロジェクトアーキテクチャ、コーディング標準、一般的なワークフロー
プロジェクトメモリ(ローカル)./CLAUDE.local.mdプロジェクト固有の個人設定サンドボックスURL、好みのテストデータ
ユーザーメモリ~/.claude/CLAUDE.mdグローバルな個人設定コードスタイルの好み、個人的なツールのショートカット

すべてのメモリファイルは、起動時にClaude Codeのコンテキストに自動的に読み込まれます。

Claudeがメモリを検索する方法

Claude Codeはメモリを再帰的に読み込みます:現在の作業ディレクトリから始めて、_/_まで上に再帰し、見つかったCLAUDE.mdまたはCLAUDE.local.mdファイルを読み込みます。これは特に大きなリポジトリで作業する場合に便利で、_foo/bar/_でClaude Codeを実行し、_foo/CLAUDE.md_と_foo/bar/CLAUDE.md_の両方にメモリがある場合に役立ちます。

#ショートカットでメモリをすばやく追加

メモリを追加する最速の方法は、入力を#文字で始めることです:

# Always use descriptive variable names

どのメモリファイルに保存するかを選択するよう促されます。

/memoryで直接メモリを編集

セッション中に/memoryスラッシュコマンドを使用して、システムエディタでメモリファイルを開き、より広範な追加や整理を行うことができます。

メモリのベストプラクティス

  • 具体的に: 「コードを適切にフォーマットする」よりも「2スペースのインデントを使用する」の方が良いです。
  • 構造を使って整理: 各メモリを箇条書きとしてフォーマットし、関連するメモリを説明的なマークダウン見出しの下にグループ化します。
  • 定期的に見直す: プロジェクトの進化に合わせてメモリを更新し、Claudeが常に最新の情報とコンテキストを使用していることを確認します。

権限とセキュリティの管理

Claude Codeは、パワーと安全性のバランスを取るための階層化された権限システムを使用しています:

ツールタイプ承認が必要「はい、次回から確認しない」の動作
読み取り専用ファイル読み取り、LS、Grepいいえ該当なし
Bashコマンドシェル実行はいプロジェクトディレクトリとコマンドごとに永続的
ファイル変更ファイルの編集/書き込みはいセッション終了まで

Claudeが利用できるツール

Claude Codeは、コードベースの理解と変更を支援する強力なツールセットにアクセスできます:

ツール説明権限が必要
Agent複雑な複数ステップのタスクを処理するサブエージェントを実行いいえ
Bash環境内でシェルコマンドを実行はい
Globパターンマッチングに基づいてファイルを検索いいえ
Grepファイル内容でパターンを検索いいえ
LSファイルとディレクトリをリスト表示いいえ
Readファイルの内容を読み取るいいえ
Edit特定のファイルに対象を絞った編集を行うはい
Writeファイルを作成または上書きはい
NotebookEditJupyterノートブックのセルを変更はい
NotebookReadJupyterノートブックの内容を読み取り表示いいえ
WebFetch指定されたURLからコンテンツを取得はい

権限ルールは/allowed-toolsまたは権限設定で設定できます。

プロンプトインジェクションから保護する

プロンプトインジェクションは、攻撃者が悪意のあるテキストを挿入することでAIアシスタントの指示を上書きまたは操作しようとする手法です。Claude Codeには、これらの攻撃に対するいくつかの保護機能が含まれています:

  • 権限システム: 機密性の高い操作には明示的な承認が必要
  • コンテキスト認識分析: リクエスト全体を分析して潜在的に有害な指示を検出
  • 入力サニタイズ: ユーザー入力を処理してコマンドインジェクションを防止
  • コマンドブロックリスト: curlwgetなどのWebから任意のコンテンツを取得する危険なコマンドをブロック

信頼できないコンテンツを扱う際のベストプラクティス:

  1. 承認前に提案されたコマンドを確認する
  2. 信頼できないコンテンツを直接Claudeにパイプしない
  3. 重要なファイルへの変更提案を確認する
  4. 不審な動作は/bugで報告する

これらの保護機能はリスクを大幅に軽減しますが、どのシステムもすべての攻撃に完全に耐性があるわけではありません。AIツールを使用する際は、常に適切なセキュリティプラクティスを維持してください。

ネットワークアクセスの設定

Claude Codeは以下へのアクセスが必要です:

  • api.anthropic.com
  • statsig.anthropic.com
  • sentry.io

コンテナ化された環境でClaude Codeを使用する場合は、これらのURLを許可リストに追加してください。

環境変数

Claude Codeは、その動作を制御するために以下の環境変数をサポートしています:

変数目的
DISABLE_AUTOUPDATER1に設定すると自動更新を無効にします
DISABLE_BUG_COMMAND1に設定すると/bugコマンドを無効にします
DISABLE_COST_WARNINGS1に設定するとコスト警告メッセージを無効にします
DISABLE_ERROR_REPORTING1に設定するとSentryエラーレポートをオプトアウトします
DISABLE_TELEMETRY1に設定するとStatsigテレメトリをオプトアウトします(Statsigイベントにはコード、ファイルパス、bashコマンドなどのユーザーデータは含まれないことに注意してください)
HTTP_PROXYネットワーク接続用のHTTPプロキシサーバーを指定します
HTTPS_PROXYネットワーク接続用のHTTPSプロキシサーバーを指定します
MCP_TIMEOUTMCPサーバー起動のタイムアウト(ミリ秒)
MCP_TOOL_TIMEOUTMCPツール実行のタイムアウト(ミリ秒)

Claude Codeを設定する

ターミナルでclaude configを実行するか、インタラクティブREPLで/configコマンドを使用してClaude Codeを設定します。

設定オプション

Claude Codeはグローバルレベルとプロジェクトレベルの設定をサポートしています。

設定を管理するには、以下のコマンドを使用します:

  • 設定一覧: 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>を使用します:

キー説明
autoUpdaterStatusdisabledまたはenabled自動更新を有効または無効にする(デフォルト: enabled
envJSON(例: '{"FOO": "bar"}'すべてのセッションに適用される環境変数
preferredNotifChanneliterm2iterm2_with_bellterminal_bell、またはnotifications_disabled通知を受け取る場所(デフォルト: iterm2
themedarklightlight-daltonized、またはdark-daltonizedカラーテーマ
verbosetrueまたはfalsebashとコマンドの完全な出力を表示するかどうか(デフォルト: false

自動更新の権限オプション

Claude Codeがグローバルnpmプレフィックスディレクトリに書き込む十分な権限がない(自動更新に必要)ことを検出すると、このドキュメントページを指す警告が表示されます。自動更新の問題に関する詳細な解決策については、トラブルシューティングガイドを参照してください。

推奨: ユーザーが書き込み可能な新しいnpmプレフィックスを作成する

# まず、既存のグローバルパッケージのリストを後で移行するために保存
npm list -g --depth=0 > ~/npm-global-packages.txt

# グローバルパッケージ用のディレクトリを作成
mkdir -p ~/.npm-global

# 新しいディレクトリパスを使用するようnpmを設定
npm config set prefix ~/.npm-global

# 注: ~/.bashrcを、使用しているシェルに応じて~/.zshrc、~/.profile、または他の適切なファイルに置き換えてください
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc

# 新しいPATH設定を適用
source ~/.bashrc

# 新しい場所にClaude Codeを再インストール
npm install -g @anthropic-ai/claude-code

# オプション: 以前のグローバルパッケージを新しい場所に再インストール
# ~/npm-global-packages.txtを見て、保持したいパッケージをインストール
# npm install -g package1 package2 package3...

このオプションを推奨する理由:

  • システムディレクトリの権限を変更しない
  • グローバルnpmパッケージ用の専用の場所を作成
  • セキュリティのベストプラクティスに従う

Claude Codeは積極的に開発中であるため、上記の推奨オプションを使用して自動更新を設定することをお勧めします。

自動更新を無効にする

代わりに権限を修正せずに自動更新を無効にする場合は、以下を使用できます:

claude config set -g autoUpdaterStatus disabled

プロジェクト設定

プロジェクト設定はclaude config set <key> <value>-gフラグなし)で管理します:

キー説明
allowedToolsツールの配列手動承認なしで実行できるツール
ignorePatternsglobパターンの配列ツール使用時に無視されるファイル/ディレクトリ

例:

# 承認なしでnpm testを実行できるようにする
claude config add allowedTools "Bash(npm test)"

# 承認なしでnpm testとそのサブコマンドを実行できるようにする
claude config add allowedTools "Bash(npm test:*)"

# node_modulesを無視するようClaudeに指示
claude config add ignorePatterns node_modules
claude config add ignorePatterns "node_modules/**"

allowedToolsルールの形式については権限を参照してください。

ターミナル設定を最適化する

Claude Codeは、ターミナルが適切に設定されている場合に最適に動作します。最適な体験を得るには、以下のガイドラインに従ってください。

サポートされているシェル:

  • Bash
  • Zsh
  • Fish

テーマと外観

Claudeはターミナルのテーマを制御できません。それはターミナルアプリケーションによって処理されます。オンボーディング中または/configコマンドを使用していつでも、Claude Codeのテーマをターミナルに合わせることができます。

改行

Claude Codeに改行を入力するためのいくつかのオプションがあります:

  • クイックエスケープ: \に続けてEnterを押して改行を作成
  • キーボードショートカット: 適切な設定でOption+Enter(Meta+Enter)を押す

ターミナルでOption+Enterを設定するには:

Mac Terminal.appの場合:

  1. 設定 → プロファイル → キーボードを開く
  2. 「Optionをメタキーとして使用」をチェック

iTerm2とVSCodeターミナルの場合:

  1. 設定 → プロファイル → キーを開く
  2. 一般の下で、左/右Optionキーを「Esc+」に設定

iTerm2とVSCodeユーザー向けのヒント: Claude Code内で/terminal-setupを実行して、より直感的な代替手段としてShift+Enterを自動的に設定します。

通知設定

適切な通知設定で、Claudeがタスクを完了したときを見逃さないようにします:

ターミナルベル通知

タスク完了時のサウンドアラートを有効にします:

claude config set --global preferredNotifChannel terminal_bell

macOSユーザー向け: システム設定 → 通知 → [ターミナルアプリ]で通知権限を有効にすることを忘れないでください。

iTerm 2システム通知

タスク完了時のiTerm 2アラート:

  1. iTerm 2環境設定を開く
  2. プロファイル → ターミナルに移動
  3. 「ベルを消音」と「アイドル時に通知を送信」を有効にする
  4. 好みの通知遅延を設定

これらの通知はiTerm 2に固有であり、デフォルトのmacOSターミナルでは利用できないことに注意してください。

大量の入力の処理

広範なコードや長い指示で作業する場合:

  • 直接貼り付けを避ける: Claude Codeは非常に長い貼り付けられたコンテンツで苦労する場合があります
  • ファイルベースのワークフローを使用する: コンテンツをファイルに書き込み、Claudeに読み取りを依頼します
  • VS Codeの制限に注意する: VS Codeターミナルは特に長い貼り付けを切り捨てる傾向があります

Vimモード

Claude Codeは/vimで有効にするか、/configで設定できるVimキーバインディングのサブセットをサポートしています。

サポートされているサブセットには以下が含まれます:

  • モード切替: Esc(NORMALモードへ)、i/Ia/Ao/O(INSERTモードへ)
  • ナビゲーション: h/j/k/lw/e/b0/$/^gg/G
  • 編集: xdw/de/db/dd/Dcw/ce/cb/cc/C.(繰り返し)

コストを効果的に管理する

Claude Codeは各インタラクションでトークンを消費します。平均コストは1日あたり開発者1人につき$6で、ユーザーの90%は1日のコストが$12未満です。

コストを追跡する

  • /costを使用して現在のセッションの使用量を確認
  • Anthropic Consoleユーザー:
  • Maxプランユーザー: 使用量はMaxプランサブスクリプションに含まれています

トークン使用量を削減する

  • 会話をコンパクトにする:

    • Claudeはコンテキストが容量の95%を超えると自動的にコンパクト化します

    • 自動コンパクト切替: /configを実行し、「Auto-compact enabled」に移動

    • コンテキストが大きくなったら手動で/compactを使用

    • カスタム指示を追加: /compact Focus on code samples and API usage

    • CLAUDE.mdに追加してコンパクト化をカスタマイズ:

      # Summary instructions
      
      When you are using compact, please focus on test output and code changes
      
  • 具体的なクエリを書く: 不要なスキャンをトリガーする曖昧なリクエストを避ける

  • 複雑なタスクを分解する: 大きなタスクを焦点を絞ったインタラクションに分割する

  • タスク間で履歴をクリアする: /clearを使用してコンテキストをリセットする

コストは以下に基づいて大きく変動する可能性があります:

  • 分析されるコードベースのサイズ
  • クエリの複雑さ
  • 検索または変更されるファイルの数
  • 会話履歴の長さ
  • 会話をコンパクト化する頻度

チーム展開の場合、より広範な展開の前に使用パターンを確立するために小さなパイロットグループから始めることをお勧めします。


モデル設定

デフォルトでは、Claude Codeはclaude-opus-4-20250514を使用します。以下の環境変数を使用してこれをオーバーライドできます:

# Anthropic API
ANTHROPIC_MODEL='claude-opus-4-20250514'
ANTHROPIC_SMALL_FAST_MODEL='claude-3-5-haiku-20241022'

# Amazon Bedrock
ANTHROPIC_MODEL='us.anthropic.claude-opus-4-20250514-v1:0'
ANTHROPIC_SMALL_FAST_MODEL='us.anthropic.claude-3-5-haiku-20241022-v1:0'

# Google Vertex AI
ANTHROPIC_MODEL='claude-opus-4@20250514'
ANTHROPIC_SMALL_FAST_MODEL='claude-3-5-haiku@20241022'

グローバル設定を使用してこれらの変数を設定することもできます:

# Anthropic API用に設定
claude config set --global env '{"ANTHROPIC_MODEL": "claude-opus-4-20250514"}'

# Bedrock用に設定
claude config set --global env '{"CLAUDE_CODE_USE_BEDROCK": "true", "ANTHROPIC_MODEL": "us.anthropic.claude-opus-4-20250514-v1:0"}'

# Vertex AI用に設定
claude config set --global env '{"CLAUDE_CODE_USE_VERTEX": "true", "ANTHROPIC_MODEL": "claude-opus-4@20250514"}'

異なるプロバイダー間で利用可能なすべてのモデルについては、モデル名リファレンスを参照してください。

サードパーティAPIとの使用

Claude Codeは、使用するAPIプロバイダーに関係なく、Claude Sonnet 3.7とClaude Haiku 3.5の両方のモデルへのアクセスが必要です。

Amazon Bedrockに接続

CLAUDE_CODE_USE_BEDROCK=1

プロキシ経由でClaude Codeにアクセスしたい場合は、ANTHROPIC_BEDROCK_BASE_URL環境変数を使用できます:

ANTHROPIC_BEDROCK_BASE_URL='https://your-proxy-url'

プロンプトキャッシュが有効になっていない場合は、以下も設定してください:

DISABLE_PROMPT_CACHING=1

標準のAWS SDKクレデンシャル(例:~/.aws/credentialsまたはAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYなどの関連環境変数)が必要です。AWSクレデンシャルを設定するには、以下を実行します:

aws configure

コスト削減と高いレート制限のためのプロンプトキャッシュについては、Amazon Bedrockにお問い合わせください。

ユーザーはAWSアカウントでClaude Sonnet 3.7とClaude Haiku 3.5の両方のモデルにアクセスする必要があります。モデルアクセスロールがある場合、これらのモデルがまだ利用できない場合はアクセスをリクエストする必要があるかもしれません。推論プロファイルはリージョン間機能を必要とするため、各リージョンのBedrockへのアクセスが必要です。

Google Vertex AIに接続

CLAUDE_CODE_USE_VERTEX=1
CLOUD_ML_REGION=us-east5
ANTHROPIC_VERTEX_PROJECT_ID=your-project-id

プロキシ経由でClaude Codeにアクセスしたい場合は、ANTHROPIC_VERTEX_BASE_URL環境変数を使用できます:

ANTHROPIC_VERTEX_BASE_URL='https://your-proxy-url'

プロンプトキャッシュが有効になっていない場合は、以下も設定してください:

DISABLE_PROMPT_CACHING=1

Vertex AI上のClaude Codeは現在、us-east5リージョンのみをサポートしています。プロジェクトにこの特定のリージョンで割り当てられたクォータがあることを確認してください。

ユーザーはVertex AIプロジェクトでClaude Sonnet 3.7とClaude Haiku 3.5の両方のモデルにアクセスする必要があります。

google-auth-libraryを通じて設定された標準のGCPクレデンシャルが必要です。GCPクレデンシャルを設定するには、以下を実行します:

gcloud auth application-default login

最良の体験のために、高いレート制限についてGoogleにお問い合わせください。

プロキシを通じて接続

LLMプロキシ(LiteLLMなど)でClaude Codeを使用する場合、以下の環境変数と設定を使用して認証動作を制御できます。これらはBedrockとVertex固有の設定と組み合わせることができることに注意してください。

環境変数

  • ANTHROPIC_AUTH_TOKEN: AuthorizationおよびProxy-Authorizationヘッダーのカスタム値(ここで設定した値にはBearer が前に付きます)
  • ANTHROPIC_CUSTOM_HEADERS: リクエストに追加したいカスタムヘッダー(Name: Value形式)
  • HTTP_PROXY: HTTPプロキシURLを設定
  • HTTPS_PROXY: HTTPSプロキシURLを設定

環境変数の代わりにファイルで設定したい場合は、これらの変数をグローバルClaude設定(_~/.claude.json_内)のenvオブジェクトに追加できます。

グローバル設定オプション

  • apiKeyHelper: APIキーを取得するためのカスタムシェルスクリプト(起動時に一度呼び出され、各セッションの期間中キャッシュされます)

開発コンテナリファレンス実装

Claude Codeは、一貫した安全な環境が必要なチーム向けの開発コンテナ設定を提供します。この事前設定されたdevcontainer設定は、VS CodeのRemote - Containers拡張機能や同様のツールとシームレスに連携します。

コンテナの強化されたセキュリティ対策(分離とファイアウォールルール)により、無人操作のために権限プロンプトをバイパスするclaude --dangerously-skip-permissionsを実行できます。ニーズに合わせてカスタマイズできるリファレンス実装を提供しています。

devcontainerは実質的な保護を提供しますが、どのシステムもすべての攻撃に完全に耐性があるわけではありません。常に適切なセキュリティプラクティスを維持し、Claudeの活動を監視してください。

主な機能

  • 本番環境対応Node.js: 必須の開発依存関係を備えたNode.js 20をベースにしています
  • 設計段階からのセキュリティ: 必要なサービスのみにネットワークアクセスを制限するカスタムファイアウォール
  • 開発者向けツール: git、生産性向上のためのZSH、fzfなどを含みます
  • VS Codeとのシームレスな統合: 事前設定された拡張機能と最適化された設定
  • セッション永続性: コンテナの再起動間でコマンド履歴と設定を保持
  • どこでも動作: macOS、Windows、Linuxの開発環境と互換性があります

4ステップで始める

  1. VS CodeとRemote - Containers拡張機能をインストール
  2. Claude Codeリファレンス実装リポジトリをクローン
  3. VS Codeでリポジトリを開く
  4. プロンプトが表示されたら、「コンテナで再度開く」をクリック(またはコマンドパレット: Cmd+Shift+P → 「Remote-Containers: コンテナで再度開く」)

設定の内訳

devcontainer設定は主に3つのコンポーネントで構成されています:

  • devcontainer.json: コンテナ設定、拡張機能、ボリュームマウントを制御
  • Dockerfile: コンテナイメージとインストールされたツールを定義
  • init-firewall.sh: ネットワークセキュリティルールを確立

セキュリティ機能

コンテナはファイアウォール設定で多層セキュリティアプローチを実装しています:

  • 精密なアクセス制御: ホワイトリストに登録されたドメイン(npmレジストリ、GitHub、Anthropic APIなど)のみに外部接続を制限
  • デフォルト拒否ポリシー: 他のすべての外部ネットワークアクセスをブロック
  • 起動時検証: コンテナ初期化時にファイアウォールルールを検証
  • 分離: メインシステムから分離された安全な開発環境を作成

カスタマイズオプション

devcontainer設定はニーズに適応できるように設計されています:

  • ワークフローに基づいてVS Code拡張機能を追加または削除
  • 異なるハードウェア環境のリソース割り当てを変更
  • ネットワークアクセス権限を調整
  • シェル設定と開発ツールをカスタマイズ

次のステップ


ライセンスとデータ使用

Claude Codeは、Anthropicの商用利用規約に基づいてベータ研究プレビューとして提供されています。

データの使用方法

私たちはデータの使用方法について完全に透明性を持つことを目指しています。フィードバックを製品やサービスの改善に使用することがありますが、Claude Codeからのフィードバックを使用して生成モデルをトレーニングすることはありません。潜在的に機密性の高い性質を考慮して、ユーザーフィードバックの記録は30日間のみ保存します。

フィードバック記録

Claude Codeに関するフィードバック(使用記録など)を送信することを選択した場合、Anthropicはそのフィードバックを関連する問題のデバッグやClaude Codeの機能改善(例:将来同様のバグが発生するリスクを減らすため)に使用することがあります。このフィードバックを使用して生成モデルをトレーニングすることはありません。

プライバシー保護

機密情報の限定された保持期間、ユーザーセッションデータへのアクセス制限、モデルトレーニングにフィードバックを使用しないという明確なポリシーなど、データを保護するためのいくつかの保護措置を実施しています。

詳細については、商用利用規約プライバシーポリシーをご確認ください。

ライセンス

© Anthropic PBC. All rights reserved. 使用はAnthropicの商用利用規約に従います。