Loading...
    • 開発者ガイド
    • API リファレンス
    • MCP
    • リソース
    • リリースノート
    Search...
    ⌘K

    はじめの一歩

    Claudeの紹介クイックスタート

    モデルと料金

    モデル概要モデルの選択Claude 4.5の新機能Claude 4.5への移行モデルの廃止予定価格設定

    Claudeで構築する

    機能概要Messages API の使用コンテキストウィンドウプロンプトのベストプラクティス

    機能

    プロンプトキャッシングコンテキスト編集拡張思考ストリーミングメッセージバッチ処理引用多言語サポートトークンカウント埋め込みビジョンPDFサポートFiles API検索結果Google Sheetsアドオン

    ツール

    概要ツール使用の実装方法トークン効率的なツール使用細粒度ツールストリーミングBashツールコード実行ツールコンピュータ使用ツールテキストエディタツールWeb fetch toolウェブ検索ツールメモリツール

    エージェントスキル

    概要クイックスタートスキル作成のベストプラクティスAPIでエージェントスキルを使用する

    Agent SDK

    概要Agent SDK リファレンス - TypeScriptPython SDK

    ガイド

    ストリーミング入力権限の処理セッション管理Agent SDKのホスティングシステムプロンプトの変更SDK内のMCPカスタムツールSDKにおけるサブエージェントSDKでのスラッシュコマンドSDK内のエージェントスキルコストと使用量の追跡Todo リストSDK のプラグイン

    API内のMCP

    MCPコネクタリモートMCPサーバー

    Claude on 3rd-party platforms

    Amazon BedrockVertex AI

    プロンプトエンジニアリング

    概要プロンプトジェネレータープロンプトテンプレートの使用プロンプト改善ツール明確で直接的な指示例(マルチショットプロンプト)を使用してClaudeの動作を導くClaudeに考えさせる(CoT)XMLタグを使用Claudeに役割を与える(システムプロンプト)Claudeの応答を事前入力複雑なプロンプトのチェーン化長文コンテキストのヒント拡張思考のヒント

    テストと評価

    成功基準を定義するテストケースを開発する評価ツールの使用レイテンシの削減

    ガードレールを強化

    幻覚を減らす出力の一貫性を高めるジェイルブレイクの軽減handle-streaming-refusalsプロンプトリークの削減Claudeのキャラクターを維持

    管理とモニタリング

    Admin API概要使用量とコストAPIClaude Code Analytics API
    Console
    ツール

    Bashツール

    Claudeがシェルコマンドを永続的なbashセッションで実行できるようにし、システム操作、スクリプト実行、コマンドラインオートメーションを可能にします。

    bashツールはClaudeがシェルコマンドを永続的なbashセッションで実行できるようにし、システム操作、スクリプト実行、コマンドラインオートメーションを可能にします。

    概要

    bashツールはClaudeに以下を提供します:

    • 状態を保持する永続的なbashセッション
    • あらゆるシェルコマンドを実行する能力
    • 環境変数とワーキングディレクトリへのアクセス
    • コマンドチェーンとスクリプト機能

    モデル互換性

    モデルツールバージョン
    Claude 4モデルとSonnet 3.7 (非推奨)bash_20250124

    古いツールバージョンは新しいモデルとの後方互換性が保証されていません。常にモデルバージョンに対応するツールバージョンを使用してください。

    ユースケース

    • 開発ワークフロー: ビルドコマンド、テスト、開発ツールを実行
    • システムオートメーション: スクリプト実行、ファイル管理、タスク自動化
    • データ処理: ファイル処理、分析スクリプト実行、データセット管理
    • 環境セットアップ: パッケージインストール、環境設定

    クイックスタート

    Python
    import anthropic
    
    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-sonnet-4-5",
        max_tokens=1024,
        tools=[
            {
                "type": "bash_20250124",
                "name": "bash"
            }
        ],
        messages=[
            {"role": "user", "content": "List all Python files in the current directory."}
        ]
    )
    Shell
    curl https://api.anthropic.com/v1/messages \
      -H "content-type: application/json" \
      -H "x-api-key: $ANTHROPIC_API_KEY" \
      -H "anthropic-version: 2023-06-01" \
      -d '{
        "model": "claude-sonnet-4-5",
        "max_tokens": 1024,
        "tools": [
          {
            "type": "bash_20250124",
            "name": "bash"
          }
        ],
        "messages": [
          {
            "role": "user",
            "content": "List all Python files in the current directory."
          }
        ]
      }'

    動作方法

    bashツールは永続的なセッションを保持します:

    1. Claudeが実行するコマンドを決定
    2. bashシェルでコマンドを実行
    3. 出力(標準出力と標準エラー出力)をClaudeに返す
    4. セッション状態はコマンド間で保持される(環境変数、ワーキングディレクトリ)

    パラメータ

    パラメータ必須説明
    commandはい*実行するbashコマンド
    restartいいえtrueに設定してbashセッションを再起動

    *restartを使用する場合を除き必須

    例:マルチステップオートメーション

    Claudeはコマンドをチェーンして複雑なタスクを完了できます:

    # ユーザーリクエスト
    "Install the requests library and create a simple Python script that fetches a joke from an API, then run it."
    
    # Claudeのツール使用:
    # 1. パッケージをインストール
    {"command": "pip install requests"}
    
    # 2. スクリプトを作成
    {"command": "cat > fetch_joke.py << 'EOF'\nimport requests\nresponse = requests.get('https://official-joke-api.appspot.com/random_joke')\njoke = response.json()\nprint(f\"Setup: {joke['setup']}\")\nprint(f\"Punchline: {joke['punchline']}\")\nEOF"}
    
    # 3. スクリプトを実行
    {"command": "python fetch_joke.py"}

    セッションはコマンド間で状態を保持するため、ステップ2で作成されたファイルはステップ3で利用可能です。


    bashツールの実装

    bashツールはスキーマレスツールとして実装されています。このツールを使用する場合、他のツールのような入力スキーマを提供する必要はありません。スキーマはClaudeのモデルに組み込まれており、変更することはできません。

    1. 1

      bash環境をセットアップ

      Claudeが対話できる永続的なbashセッションを作成します:

      import subprocess
      import threading
      import queue
      
      class BashSession:
          def __init__(self):
              self.process = subprocess.Popen(
                  ['/bin/bash'],
                  stdin=subprocess.PIPE,
                  stdout=subprocess.PIPE,
                  stderr=subprocess.PIPE,
                  text=True,
                  bufsize=0
              )
              self.output_queue = queue.Queue()
              self.error_queue = queue.Queue()
              self._start_readers()
    2. 2

      コマンド実行を処理

      コマンドを実行して出力をキャプチャする関数を作成します:

      def execute_command(self, command):
          # bashにコマンドを送信
          self.process.stdin.write(command + '\n')
          self.process.stdin.flush()
          
          # タイムアウト付きで出力をキャプチャ
          output = self._read_output(timeout=10)
          return output
    3. 3

      Claudeのツール呼び出しを処理

      Claudeの応答からコマンドを抽出して実行します:

      for content in response.content:
          if content.type == "tool_use" and content.name == "bash":
              if content.input.get("restart"):
                  bash_session.restart()
                  result = "Bash session restarted"
              else:
                  command = content.input.get("command")
                  result = bash_session.execute_command(command)
              
              # 結果をClaudeに返す
              tool_result = {
                  "type": "tool_result",
                  "tool_use_id": content.id,
                  "content": result
              }
    4. 4

      安全対策を実装

      検証と制限を追加します:

      def validate_command(command):
          # 危険なコマンドをブロック
          dangerous_patterns = ['rm -rf /', 'format', ':(){:|:&};:']
          for pattern in dangerous_patterns:
              if pattern in command:
                  return False, f"Command contains dangerous pattern: {pattern}"
          
          # 必要に応じてさらに検証を追加
          return True, None

    エラーを処理

    bashツールを実装する場合、さまざまなエラーシナリオを処理してください:

    実装のベストプラクティスに従う

    セキュリティ

    bashツールは直接的なシステムアクセスを提供します。これらの重要な安全対策を実装してください:

    • 隔離された環境(Docker/VM)での実行
    • コマンドフィルタリングとホワイトリストの実装
    • リソース制限の設定(CPU、メモリ、ディスク)
    • すべての実行されたコマンドのログ記録

    主な推奨事項

    • ulimitを使用してリソース制約を設定
    • 危険なコマンド(sudo、rm -rfなど)をフィルタリング
    • 最小限のユーザー権限で実行
    • すべてのコマンド実行を監視およびログ記録

    価格

    The bash tool adds 245 input tokens to your API calls.

    Additional tokens are consumed by:

    • Command outputs (stdout/stderr)
    • Error messages
    • Large file contents

    完全な価格詳細についてはツール使用価格を参照してください。

    一般的なパターン

    開発ワークフロー

    • テストの実行:pytest && coverage report
    • プロジェクトのビルド:npm install && npm run build
    • Git操作:git status && git add . && git commit -m "message"

    ファイル操作

    • データ処理:wc -l *.csv && ls -lh *.csv
    • ファイル検索:find . -name "*.py" | xargs grep "pattern"
    • バックアップ作成:tar -czf backup.tar.gz ./data

    システムタスク

    • リソース確認:df -h && free -m
    • プロセス管理:ps aux | grep python
    • 環境セットアップ:export PATH=$PATH:/new/path && echo $PATH

    制限事項

    • 対話型コマンドなし:vim、less、またはパスワードプロンプトを処理できない
    • GUIアプリケーションなし:コマンドラインのみ
    • セッションスコープ:会話内で永続化、API呼び出し間で失われる
    • 出力制限:大きな出力は切り詰められる可能性がある
    • ストリーミングなし:完了後に結果が返される

    他のツールとの組み合わせ

    bashツールはテキストエディタおよび他のツールと組み合わせると最も強力です。

    次のステップ

    ツール使用の概要

    Claudeでのツール使用について学ぶ

    テキストエディタツール

    Claudeでテキストファイルを表示および編集

    • bashツールの実装
    © 2025 ANTHROPIC PBC

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy

    Products

    • Claude
    • Claude Code
    • Max plan
    • Team plan
    • Enterprise plan
    • Download app
    • Pricing
    • Log in

    Features

    • Claude and Slack
    • Claude in Excel

    Models

    • Opus
    • Sonnet
    • Haiku

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Claude Developer Platform

    • Overview
    • Developer docs
    • Pricing
    • Amazon Bedrock
    • Google Cloud’s Vertex AI
    • Console login

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Help and security

    • Availability
    • Status
    • Support center

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    © 2025 ANTHROPIC PBC