クロードコードのツールAPI詳細が明らかに

Claude CodeのツールAPI構造
RedditユーザーがClaude Codeとの会話を通じて、その内部ツールAPIについて記録しました。AIアシスタントは、環境との相互作用の具体的な詳細を明らかにしています。
ツールのカテゴリーと機能
ファイルシステムツール:
Read— 絶対パスでファイルを読み取り、行番号付きで内容を返します(cat -nスタイル)。画像、PDF、Jupyterノートブックをサポート。Write— ファイルを上書きまたは新規作成します。既存ファイルを書き込む前にReadが必要です。Edit— 文字列の精密な置換を実行します。old_stringがファイル内で一意である必要があり、そうでない場合は失敗します。事前にReadが必要です。Glob— パターン(例:*.py)でファイルを検索し、変更時間でソートします。Grep— ripgrepベースのコンテンツ検索。正規表現、ファイルタイプフィルター、コンテキスト行をサポート。
実行ツール:
Bash— シェルコマンドを実行します。デフォルトタイムアウトは2分(最大10分まで可能)。作業ディレクトリは呼び出し間で保持されますが、シェルの状態は引き継がれません(環境変数、エイリアスなどは保持されない)。run_in_backgroundオプションあり。
ウェブツール:
WebFetch— URLコンテンツを取得します。WebSearch— ウェブを検索します。
AIエージェント:
Agent— サブエージェント(汎用、Explore、Planなど)を生成します。各エージェントは独自のツールアクセスとコンテキストを持ち、バックグラウンドで実行可能です。完了時に単一のメッセージを返します。
特殊ツール:
Skill— 名前付き「スキル」(/commitなどのスラッシュコマンド)を呼び出し、完全なプロンプトに展開します。ToolSearch— 「遅延ツール」(名前は知られているがスキーマが取得されるまで呼び出せないツール)のスキーマを取得します。
主要な実装詳細
ツール呼び出し構造: Claude Codeはツールをトリガーする特別なトークンを使用しません — 標準的な関数呼び出しAPIです。レスポンスには構造化されたツール呼び出しブロックが含まれ、結果はツール結果メッセージとして返されます。
ツール呼び出し形式: ブロックはXMLライクな構文を使用し、antml:function_callsラッパー内に1つ以上のantml:invoke要素(ツール名を属性として持つ)を含みます。各パラメータはantml:parameter要素で、name属性と値(テキストコンテンツ)を持ちます。
Bash呼び出しの例:
- 外側タグ:
antml:function_calls - 内側タグ:
antml:invoke、属性name="Bash" - パラメータタグ:
antml:parameter、name="command"、コマンドテキストを含む
運用上の動作
- リンターとの相互作用: ファイルを編集する際、gitフックや設定された「フック」がツール呼び出し後に自動的に実行され、ファイルをさらに変更することがあります。ツール結果は「ファイルが別のプロセスによって変更されました」と表示し、再度編集する前に再読み込みが必要です。
- ツール呼び出しの可視性: すべてのツール呼び出しは、ユーザーの承認のためにターミナルに表示されます(許可モードに依存)。ユーザーは任意のツール呼び出しを拒否できます。
- 並列実行: 複数のツール呼び出しを単一のレスポンスで発行し、同時に実行できます。複数のファイルを一度に読み取る際に有用です。
- コンテキスト管理: 長い会話は自動的に圧縮されます — 初期のメッセージは要約され、コンテキストを解放します。メモリの永続性はディレクトリ構造を通じて行われます:
/home/tpreal/.claude/projects/...
📖 Read the full source: r/ClaudeAI
👀 See Also

AnyClaw:Androidハードウェアアクセスとターミナル開発用AIエージェントを搭載したUbuntu 24.04
AnyClawは、Android上でprootを使用して完全なUbuntu 24.04環境を提供し、端末から直接AndroidハードウェアAPI(カメラ、GPS、バッテリー、センサーなど)にbashコマンドやJava実行でアクセスできます。これには、これらのツールを調整できるAIコーディングエージェントと、同じネットワーク上の任意のブラウザからアクセス可能なWeb UIが含まれています。

Apple Siliconにおける長い会話のためのKVキャッシュ再利用により、200倍の高速化を実現
ある開発者が、AppleのMLXフレームワークを使用してローカルLLM推論のためのセッションベースKVキャッシュ再利用を実装し、10万トークンのコンテキスト長で初回トークンまでの時間を200倍改善しました。このアプローチでは、会話のターン間でKVキャッシュをメモリに保持し、新しいトークンのみを処理します。

Nia-docsツールは、Claude AI向けにドキュメントURLからローカルファイルシステムを作成します。
nia-docsツールは、npx nia-docsにドキュメントのURLを指定して実行することで、ドキュメントのローカルファイルシステムを作成し、Claude AIが追加の設定なしで直接アクセスできるようにします。

OpenClaw開発者、900回のユーザートライアル後にキラー用途を模索中
OpenClawの開発者は、ユーザーがTelegramインターフェース、カレンダー連携、自動化ワークフローなどの機能を試すものの、大半は長期的にツールを使い続けないと報告しています。課題は、実験的なものではなく、必須となる日常使用のワークフローを見つけることです。