Claude Code に入門(Amazon Bedrock接続)
Claude Code は Anthropicが開発したエージェント型コーディングツールです。 タスクの実行やコードの説明、Gitワークフローの処理などを ターミナルから指示できます。 現在ベータ版として研究プレビュー中です。
本ブログでは Claude Code に入門してみます。 セットアップといくつか簡易な実行を試してみます。
なお、Claude Code の利用は Claude 3.7 Sonnet と Claude 3.5 Haiku の両方のモデルへのアクセスが必要です。 今回はモデルへのアクセスを Amazon Bedrock 経由で実現します。
セットアップ
Bedrockにてアクセス権を付与
2025/03/24 時点、東京リージョンのBedrock では Claude 3.7 Sonnet および Claude 3.5 Haiku は利用できません。 そのためモデルへのアクセスはバージニア北部(us-east-1)のものを使います。 モデルアクセスリクエストを実行して、利用可能にしました。
※両モデルの詳細については以下ブログを参照ください。
- Amazon Bedrock で Claude 3.7 Sonnet モデルが利用可能になりました | DevelopersIO
- Amazon BedrockのClaude 3.5 Haiku 低価格で高性能な最新AIモデルを試してみた | DevelopersIO
Claude Code のインストール
npmにてパッケージが公開されている @anthropic-ai/claude-code をインストールします。
npm install -g @anthropic-ai/claude-code
claude --version
# 0.2.53 (Claude Code)
Claude Code の起動
まず、BedrockにアクセスできるAWSの認証情報をセットしておきます。 今回はIAMロールによる一時的な認証情報を使います。
aws sts get-caller-identity --output yaml
# Account: '111111111111'
# Arn: arn:aws:sts::111111111111:assumed-role/cm-kawahara.masahiro/cm-kawahara.masahiro
# UserId: AROAEXAMPLE:cm-kawahara.masahiro
今回はバージニア北部のBedrockを使う都合上、 デフォルトリージョンの考慮が出てきます。 .aws/config
にてデフォルトリージョンを東京にしている場合は、 以下実行しておくと良いでしょう。
export AWS_REGION=us-east-1
次にClaude Code の環境変数を設定します。
# Bedrockを使う設定
export CLAUDE_CODE_USE_BEDROCK=1
# 使用するモデルの指定
export ANTHROPIC_MODEL='us.anthropic.claude-3-7-sonnet-20250219-v1:0'
export ANTHROPIC_SMALL_FAST_MODEL='us.anthropic.claude-3-5-haiku-20241022-v1:0'
# プロンプトキャッシングを有効にできない場合の設定 ※
export DISABLE_PROMPT_CACHING=1
最後に適当なプロジェクトディレクトリに移動して、 Claude Code を起動( claude
)します。
最初にフォルダー信頼の確認画面が出るので Yes を選択
Claude Code 起動画面
Bedrockと接続できることを試すため、適当なメッセージを打ってみました。
Claude Code でできることを聞いてみる
試してみる
そもそもですが Claude Code はドキュメントが分かりやすく、丁寧です。 実際に触る際には公式情報を見ることをオススメします。
以降で、私が実行したものをいくつか載せていきます。
スラッシュコマンド
スラッシュ(/
)から始まるコマンドで いくつか定型アクションを実行できます。
試しに セッション内で消費されたコスト( /cost
)を確認してみます。
> /cost
⎿ Total cost: $0.0452
Total duration (API): 10.4s
Total duration (wall): 7m 43.4s
Total code changes: 0 lines added, 0 lines removed
/exit
でセッションを終了します。 なお、終了後にもコストを確認できます。
> /exit
Total cost: $0.0452
Total duration (API): 10.4s
Total duration (wall): 9m 27.1s
Total code changes: 0 lines added, 0 lines removed
ファイルを作らせる
ファイルを作らせて、コミットするまでの一連のタスクを実行してみました。
非インタラクティブに実行する
セッション化しない 1回限りの実行には -p(--print)
オプションを付与します。 以下実行例です。
このオプションはパイプ処理などで役に立ちます。
aws health describe-event-details --event-arns arn:aws:health:global::event/IAM/AWS_IAM_OPERATIONAL_ISSUE/AWS_IAM_OPERATIONAL_ISSUE_EXAMPLE \
| claude -p "日本語で3行まとめして"
# IAMサービスで2025年2月25日に運用問題が発生しました。
# API書き込み要求で間欠的なエラーが発生しましたが、既存のユーザー認証は影響を受けませんでした。
# 問題は解決済みで、サービスは正常に動作しています。
CLAUDE.md プロジェクトガイドを作成
CLAUDE.md はプロジェクトの情報やルールを記載するファイルです。
/init
コマンドを実行するとフォルダにある情報から CLAUDE.md を自動生成してくれます。
今回は /init
は使わず、挙動の違いが分かりやすいサンプルを載せておきます。
claude -p "vpc-template.yaml を一言で説明して"
# このファイルはシンプルな VPC リソースを定義する AWS CloudFormation テンプレートです。
echo "ずんだもん風に応答して" > CLAUDE.md
claude -p "vpc-template.yaml を一言で説明して"
# これはCIDR 10.0.0.0/16のシンプルなVPCを作成するCloudFormationテンプレートなのだ〜♪
おわりに
Claude Code にBedrock接続で入門してみました。 個人的には「ターミナルで完結してシンプル」と「データをパイプする利用方法が素敵」 と感じています。
AWSコストはサービス名: Claude 3.7 Sonnet ( Bedrock Edition), Claude 3.5 Haiku ( Bedrock Edition)
で確認できるので、トラッキングするのが良さそうです。
また、今回は試していませんがMCPサーバーの設定もできるようになっています。 外部ツールと接続してClaudeを強化できる便利機能です。こちらも今後触っていきたいです。
以上、参考になれば幸いです。