世界を動かす技術を、日本語で。

クラウドコードSDK

概要

  • Claude Code SDK は、AIコーディングアシスタントをアプリに統合するための開発ツール。
  • CLI操作 をサポートし、TypeScriptとPython SDKは近日公開予定。
  • MCP構成 で外部ツールやリソースの拡張が可能。
  • 出力形式 はテキスト・JSON・ストリーミングJSONに対応。
  • GitHub Actions など、実際の開発フローへの組み込み事例あり。

Claude Code SDKの概要と活用方法

SDKの基本機能

  • Claude Code SDK は、アプリケーションから Claude Code をサブプロセスとして実行し、AIコーディングアシスタント機能を統合することが可能。
  • コマンドライン操作 に対応し、今後 TypeScript および Python SDK の提供を予定。
  • 非対話モード での利用が基本であり、アプリから直接Claude Codeを呼び出すことができるよう設計されていることを確認。

高度な利用法

  • マルチターン会話 ・セッションIDを指定して 会話の再開直近のセッションからの継続 を行うことが可能。

  • カスタムシステムプロンプト ・独自の システムプロンプト を指定し、Claudeの挙動を制御することが可能。 ・デフォルトのプロンプトに 追加指示 を付与することも可能。

  • MCP(Model Context Protocol)構成 ・外部サーバーから 追加ツールやリソース をロードし、Claude Codeの機能を拡張するために利用。 ・--mcp-configフラグでJSON構成ファイルを指定し、 データベースアクセスやAPI連携 などの専門機能を追加。 ・ セキュリティ対策 として、--allowedToolsで利用可能ツールを明示的に許可することが必要。 ・MCPツール名はmcp__<serverName>__<toolName>形式で指定することを確認。

主なCLIオプション

  • --print, -p :非対話モードで実行すること
  • --output-format :出力形式(text, json, stream-json)を指定すること
  • --resume, -r :セッションIDで会話を再開すること
  • --continue, -c :最新の会話セッションを継続すること
  • --system-prompt :システムプロンプトを上書きすること(--print時のみ)
  • --append-system-prompt :システムプロンプトへ追加指示を付与すること(--print時のみ)
  • --allowedTools :許可するツールをカンマまたはスペース区切りで指定すること(MCPツール含む)
  • --disallowedTools :禁止するツールを指定すること
  • --mcp-config :MCPサーバーのJSONファイルを読み込むこと
  • --permission-prompt-tool :許可プロンプト処理用のMCPツールを指定すること(--print時のみ)
  • --verbose :詳細ログを有効化すること
  • --max-turns :非対話モードでのエージェントターン数を制限すること

出力形式とレスポンススキーマ

  • テキスト出力 (デフォルト):応答テキストのみを返すこと
  • JSON出力 :メタデータを含む構造化データを返すこと
  • ストリーミングJSON出力 :各メッセージを受信ごとにJSONオブジェクトとして出力すること ・各会話はinitメッセージで始まり、ユーザー・アシスタントメッセージ、最終結果メッセージで構成されること
  • メッセージスキーマ :JSON APIのレスポンスは厳密に型定義されており、今後JSONSchema形式で公開予定
  • セマンティックバージョニング を採用し、互換性の変更を明示すること

利用例とベストプラクティス

  • シンプルなスクリプト統合ファイル処理セッション管理 などの実装例あり
  • JSON出力形式 を利用し、プログラムによるレスポンス解析を推奨
  • エラー処理 (exitコードやstderrの確認)を徹底すること
  • マルチターン会話 ではセッション管理を活用すること
  • 長時間処理 にはタイムアウト設定を検討すること
  • レートリミット への配慮として、複数リクエスト時は遅延を入れること

実際の開発フローへの応用

  • Claude Code SDK は、開発ワークフローへの強力な統合を実現 ・例: Claude Code GitHub Actions による自動コードレビュー、PR作成、Issueトリアージの自動化
  • CLIドキュメントGitHub Actions連携チュートリアル も提供されており、幅広いユースケースに対応

参考情報

  • CLI操作とコントロール :公式ドキュメントで全オプションを確認すること
  • GitHub Actions統合 :自動化ワークフローの構築に活用すること
  • チュートリアル :一般的なユースケースの手順を学習すること

Hackerたちの意見

claude codeチームからのさらなるコンテキスト: http://latent.space/p/claude-code トランスクリプトをざっと読むことができるけど、個人的なハイライトは以下の通り: - アンスロピックの社員は、無制限のclaudeを使って、平均で1日あたり$6の使用量 - ヘッドレスclaudeコードは、CIでどこでも使える「Linux」ユーティリティとしてかなり魅力的 - ユーザー拡張可能なプラットフォームとしてのclaudeコード - claudeコードの今後のロードマップ: サンドボックス、ブランチ、プランニング - ソネット3.7は持続的でエージェント的なモデル

もしかしたら使い方が悪いのかもしれないけど、Claude Codeを2時間使うだけで$20以上使っちゃうことがある。個人プロジェクトには高すぎるから、使うのをやめたよ。

"- アンスロピックの社員は、無制限のclaudeを使って、平均で1日あたり$6の使用量" リンクから: "どうやら、アンスロピックの中には1日に$1,000以上使ったエンジニアもいるらしい!" 質問は、従業員あたりのP50、P75、P95の支出はどれくらいか?

最近のlatent spaceポッドキャストは本当に楽しんでる。あなたの一般的なアウトプットに対して高いSNRを維持しながら近づいている人†/ポッドキャスト(または他のコンテンツ)はないと思う。過去の(半?)10年間で生み出している公の仕事の量と価値に、常に驚かされている。さまざまなビジネスを成長させながら、他の人も同じような生産性の勾配を見つけられることを願っている。あなたが何がうまくいくかを大まかに共有しているのは知っているけど、それを再現するのはそんなに簡単じゃない。† simonw, gwern

ポッドキャストは中立的だったのか、それともこれのセールスピッチみたいだったの?

Claude Codeの進化は、まさに僕が求めていたエージェント的なコーディングツールの「Unixツール的」哲学そのもの。最初のパブリックプレビューリリースから使っていて、時間とともに方向性を見てきた。コーディングエージェントの「ゴールデン」な最終形は、機能リクエスト(例えばJiraチケット)を出すと、レビューとフィードバックを求めるPRを返してくれること。Cursorやwindsurfなどは、ローカルエディタでCIには使えないから、その意味では行き止まりだよ。AIを最適に使うためにコードベースを整えるなら(ルール、MCPなど)、ヘッドレス使用への橋渡しができる技術を目指すべき。Claude Codeがツールの一部として自動化に簡単に使えるという事実は、今やコーディングエージェントについて考えるデフォルトの方法になってる(Codex、npmパッケージも同じ)。注意点として、僕は企業がエージェント利用に最適なコードベースを整える手助けをしているから、簡単に設定できるツールに偏りがあるかもしれない。

そのゴールデンな最終形についてはよくわからないな。僕の理想は、AIエージェントがコーディング、デザイン、テストなどをしているスクリーンに囲まれた部屋にいること。真ん中にいて、指導したり方向性を示したり、センスを適用したりする…会話だけで、99%の時間はキーボードに触れなくてもいい。それが僕が望んでいることで、いつか実現するのを楽しみにしてる。

Anthropicも今日、ベータ版でそんな感じのことを発表したよ: https://docs.anthropic.com/en/docs/claude-code/github-action...

もうそれできるんじゃない?Aider CLIをissue作成でトリガーされるGitHubアクションに入れれば、すぐに使えるよ。

機能リクエストを提出して、レビュー待ちのPRを受け取るっていうビジョンは、戦略管理の観点から見ると魅力的でもあり、恐ろしいことでもあるね。Anthropicや他の大手テック企業と同じように、彼らは本当に必要になるまで最高のものを見せたくないんだ。以前はクールな機能をストックして、戦略を考える時間があったけど、今はすべてを急いで見せようとしている気がして、経営陣が全体像を考える時間があるのか心配になってる。

Jiraチケットの作業をAIにアウトソースできるようになって、実際に合理的なプルリクエストが出せるようになったら、多くの企業の管理者はオフショアチームを残す理由を真剣に考えるだろうね。

いや、違う。コーディングエージェントの「ゴールデン」な最終形は、私のマシン(または自分が望むマシン)で動く無料でオープンソースのコーディングエージェントだよ。ターミナルで実行するたびにお金を払うなんて想像できる?lspskillのたびに?意味ないよね?LLMsも同じこと。私は「プロプライエタリなLLMsを禁止しろ」と言ってるわけじゃなくて、ハッカー(こういうサイトを昔読んでた人たち)は、主なツールとして無料でオープンソースのものを持つべきだと思うんだ。

CursorやWindsurfなどは、ローカルエディタだからCIには向いてないんだよね。俺はCursorとMCPでこれやってたけど、1日も持たずにレート制限に引っかかって、最遅で最も頭の悪いモデルに落ちちゃった。Claudeでもやったけど、すぐにレート制限に達しちゃうし。PRが「良い状態」になるのは大体25%の確率だし、AIがどこでミスったかを探るより、さっさと正しくやった方が早いことが多いよ。

未来についての予測や人類にとって何がベストかは置いといて、個人的にはこれがすごく残念だね。俺の仕事の最悪な部分だけが残っちゃう感じ。

自分でもそのエージェントのいくつかを使って、ランディングページの目立つ問題を修正した方がいいよ。

AIコードアシスタントを作るなら、特定のファウンデーションモデルプロバイダーにロックインするのが最後の手段だと思う。これが成功するためには、モデルの効果が今ちょうど高原に達していて、すべてのファウンデーションモデルがほぼ同じパフォーマンスと能力を持つようにトレンドする必要がある。その上で、統合者は慣れ親しんだSDKのような小さな違いで選ぶことになる。

コマンドや引数以外には、あまりロックインされることはないよ。ただの入出力だから。他のものに入れ替えたり、単にラップしたりすればいい。ここにはあまり大したことはない。

「ロックi-」現時点でClaude Codeはエージェントコーディングの分野でのソフトウェアの差別化要因だね。AIコードアシスタントに関連するものを作ってるんだけど、Claude Codeを統合する方法をハッキングしてたんだ。最初に作りたかったものだったから。ロックインについて気にするには早すぎる。最高のものが必要だから、最高のものを中心に作るだけ。

あなたは以下の方法で私たちのサービスにアクセスしたり使用したり、他の人がアクセスしたり使用するのを手伝ったりしてはいけません: > 2. 私たちのサービスと競合する製品やサービスを開発するため、特に人工知能や機械学習アルゴリズムやモデルを開発・訓練したり、サービスを再販したりするために。一般的な知能と競合しないソフトウェア製品やサービスって何か教えてくれませんか?法律用語で知能を売ることを想像してみてください。厳密に解釈すると、何にも使っちゃいけないって言ってるようなものです。これってあまりにも曖昧で執行不可能なんじゃない?一般的な知能と競争できないなら、どうやって出力を所有するの?ただの「笑、オタク、法的用語なんて誰も気にしない」ってこと?誰も気にしないなら、なんでサービスの使用に対して全面的な禁止があるの?彼らのいい加減なものを受け入れるために訴訟の責任を負わなきゃいけないの?質問が多すぎる。

これが弁護士に好きなことを言わせると起こることだね。

「人工」という言葉を「一般」に変えたら、明らかに意味が変わるよね。

Aiderは長い間Pythonとシェルスクリプトのサポートがあったよ。[0] 最近、130の新しいプログラミング言語のサポートを追加するための努力の一環として、アドホックなbashスクリプトのAiderを含むスクリーンキャストを作ったんだ。それがこのアプローチの強力さを示すかもしれない。[0] https://aider.chat/docs/scripting.html [1] https://aider.chat/docs/recordings/tree-sitter-language-pack...

Aiderは、洗練されたGitHub Actionsのワークフローから本当に利益を得られると思うよ。リポジトリにファイルを追加すれば、イシューを通じてどのモデルとも話せるようになる。

AiderをClaude Codeにどれくらい近づけられるかな?つまり、Claude CodeのUXは好きだけど、Gemini 2.5 Proの方が好きだから使ってないんだ。コミットとかはあまり気にしてなくて、主にClaude CodeのUXが好きなんだよね。どう思う?

Aider大好き!MCPもすぐにサポートされるよ。開発ブランチをテスト中。これで、信頼できるモデルを使ってPRやチケットを使ってエンドツーエンドで開発できるようになるね。

これ、最高だね!特にGitHub Actionsのissue/PR統合[0]がこれに組み合わさってるのがまさに自分が欲しかったものだよ![0]: https://docs.anthropic.com/en/docs/claude-code/github-action...

新しいGitHubアクションはまさに自分が探してたものだよ https://docs.anthropic.com/en/docs/claude-code/github-action... でも、Claude CodeのMaxプランでは使えないみたいだね?APIキーしか受け付けないみたいだし。

Claude Codeはすでに非対話モードで使えるし、他のアプリにもUNIXコマンドラインユーティリティのように統合できるはずなんだけど。このSDKは現在、コマンドライン使用のみをサポートしてる。これって、結局以前と同じじゃない?何が新しいのか全然わからない。何か見落としてる?

Claude Codeは、コーディングにLLMsを使うのにお気に入りなんだけど、実際に必要なのはオープンソース版で、どのモデルでも渡せて、異なるモデルの回答を比較できることだと思う。(Aiderや他の代替品は、Claude Codeほど使いやすいとは思えない)これはAnthropicがやりたくないことだってわかってるけど、消費者としては、最高のモデルが欲しいし、エコシステムに縛られたくないんだ。(これがLLMモデル提供者の最大の恐れだと思う)

OpenAI Codexは、君が言ってることに一番近いと思うよ。オープンソースだし、どのプロバイダーのモデルも使えるからね。今はClaude Codeの方が優れてるけど、すぐに追いつくんじゃないかな。 https://github.com/openai/codex/tree/main

Claude CodeをMCPサーバーとして使えるから、実際にこれをもうやってる感じだね。

(Aiderや他の代替品は、Claude Codeほど使いやすく感じない) Claude CodeはAiderに対して何が優れてるの?

最近、自分のサービスを宣伝しすぎちゃったかも。でも、君が求めてるものにぴったりなGoで書いたサービスについては、前のコメントをチェックしてみて。

質問: それには同意するけど、別のモデルもMCPサーバーと連携するためにトレーニングが必要じゃないの?それともそれは問題じゃないの?

OpenCodeプロジェクトに興味があるかもね: https://github.com/opencode-ai/opencode まだ開発中だけど、期待できそうだよ。

Codebuffもおすすめだよ(https://www.codebuff.com/)、Claude Codeに匹敵する素晴らしいCLIコードアシスタントで、トークンコストをかなり節約できる。 (このプロジェクトとは関係ない、ただのユーザーだよ。)