Claude Agent SDKは、ライブラリとしてのClaude Codeです。Claude Codeを動かすのと同じエージェントをプログラムで作成し、コードとして実行できます。繰り返し作業を自動化されたワークフローに変え、Replitで公開しましょう。 このチュートリアルでは、Todoistの受信トレイを整理するエージェントを作成します。タスクの取得、ラベルの適用、プロジェクトへの振り分けを行い、スケジュール実行できるように公開します。Documentation Index
Fetch the complete documentation index at: https://docs.replit.com/llms.txt
Use this file to discover all available pages before exploring further.
学習内容
- Claude Agent SDKの仕組みと使いどころ
- 主要なプリミティブ: エージェント、ツール、MCPサーバー、スキル、パーミッション
- ReplitのIntegrationsを使ったタスク自動化エージェントの構築方法
- Scheduled Deploymentsを使ったスケジュール実行への公開方法
前提条件
- Replitアカウント(Deploymentsにはコアまたはプロプランを推奨)
- Anthropic APIキー
- Todoistアカウント(または自動化したい他のサービス)
Claude Agent SDKの仕組み
エージェントはループで動作します。プロンプトを送ると、エージェントは実行するツールを選び、結果を観察し、タスクが完了するまで繰り返します。 プロンプトを提供するのはあなたです。ループの処理はSDKが行います。 さらにSDKは、オーケストレーターエージェントが専門化されたサブエージェントにタスクを委任するマルチエージェントアーキテクチャの構築もサポートします。各サブエージェントは独自のツールとコンテキストウィンドウを持ちます。主要なプリミティブ
| プリミティブ | 説明 |
|---|---|
| クエリループ | 基本動作: プロンプト→ツール選択→実行→観察→繰り返し |
| エージェント | 独自のツールと指示を持つ専門化された設定 |
| ツール | エージェントが実行できるアクション(コマンド実行、API呼び出し、ファイル編集など) |
| MCPサーバー | ツールのコレクションを公開する外部プロセス(コンテキスト負荷が高く、起動時に読み込まれる) |
| スキル | エージェントに作業方法を教えるMarkdown指示ファイル(コンテキスト効率が高く、必要時に読み込まれる) |
| パーミッション | 各エージェントがアクセス・実行できる内容を細かく制御する設定 |
スキルとMCPサーバーの違い
エージェントを拡張する主な方法は2つあります: スキルはエージェントが従う指示が書かれたMarkdownファイルです。呼び出されるまでは簡単な説明のみが読み込まれるため、コンテキストウィンドウをスリムに保てます。スキルの用途:- ワークフローや規約(「デプロイ方法」「コードレビューチェックリスト」など)
- 参照資料(APIパターン、スタイルガイド)
- 名前で呼び出す再利用可能なプロンプト
- 外部サービスへの接続(Notion、Linear、データベースなど)
- APIアクセスが必要なアクション(タスクの作成、データのクエリなど)
- 指示を与えるだけでなく、_実際に何かを行う_ツール
スキルはエージェントがどのように動くべきかを定義します。MCPサーバーはエージェントが何にアクセスできるかを定義します。どちらもコーディングエージェント(Replit Agentなど)およびSDKで作成するエージェントで使用できます。
SDKとAPIの使い分け
| ユースケース | 選択 |
|---|---|
| 複数ステップのタスクの自動化 | Claude Agent SDK |
| マルチエージェントワークフロー | Claude Agent SDK |
| シンプルなチャットアプリ | Anthropic API |
| 単発のタスク | Anthropic API |
Todoist整理エージェントを作成する
このウォークスルーでは、Claude Agent SDKプロジェクトに適切な構造(エージェント、ツール、MCPサーバー、スキル、パーミッションのディレクトリがすでに用意されている)をスキャフォールドするReplitテンプレートを使用します。ステップ1: テンプレートをリミックスする
テンプレートを開く
ReplitでClaude Agent SDKテンプレートを開き、Remixを選択して自分用のコピーを作成します。
ステップ2: Replit IntegrationsでTodoistを接続する
Agentにプロンプトを入力する前に、エージェントが連携するサービスを接続します。- Replitアカウントでreplit.com/integrationsにアクセスします。
- Todoistを探してアカウントを接続します。
- ReplitがTodoistデータにアクセスすることを認証します。
Replit IntegrationsはOAuthと認証を代わりに処理します。エージェントはトークンを直接管理せずにTodoist APIにアクセスできます。これは、独自のOAuthフローが必要な別のMCPサーバーを設定するよりも簡単です。
ステップ3: エージェントを作成するようAgentにプロンプトを入力する
最良の結果を得るには、Replit AgentをPlan Modeに切り替えてください。ビルド前にプランを確認し、アプローチを検証する機会が得られます。このプロンプトの最後の2段落は、デバッグ後に追加されました。認証方法(ReplitのIntegrations、MCPのOAuthではない)と最終的な状態(受信トレイを完全に空にする)を具体的に指定することで、試行錯誤の時間を節約できます。
ステップ4: プランを確認してビルドする
Agentがプランを提示したら、以下が含まれていることを確認します:- カスタムツール — Todoist API用(TodoistのMCPサーバーは使わない)
- オーガナイザーエージェント — タスク、ラベル、プロジェクトを取得する
- 適切なパーミッション — エージェントが必要とするツールにスコープされている
- エントリポイント — ワークフローをトリガーする
ステップ5: Anthropic APIキーを追加する
Claude Agent SDKがClaudeを呼び出すにはAnthropicのAPIキーが必要です。- Project EditorでSecretsペインを開きます。
ANTHROPIC_API_KEYという名前のシークレットに、APIキーの値を追加します。
ReplitのSettingsにあるvaultにAnthropicのAPIキーを保存している場合、すべてのプロジェクトで自動的に使用できます。
ステップ6: テストとデバッグ
エージェントを実行し、Todoistの受信トレイが正しく処理されることを確認します。よくある問題として注意すべき点:- 受信トレイが空でないのに「Inbox is empty」と表示される — 受信トレイのタスクを検出するAPIレスポンス形式の調整が必要な場合があります。エージェントが受信トレイのプロジェクトでタスクをフィルタリングしているか(別のプロパティではなく)を確認してください。
- タスクにラベルは付くがプロジェクトに移動しない — エージェントが利用可能なプロジェクトを取得し、各タスクにプロジェクトを割り当てるよう、プロンプトに明示的に指定してください。
- 認証エラー — Replit IntegrationsでTodoistの接続が完了しているか、エージェントのコードがそれを使用しているか(独自のOAuthフローではなく)を確認してください。
エージェントを公開する
エージェントが正しく動作したら、自動実行できるように公開します。Scheduled Deploymentを選ぶ
時間ベースの自動化にはScheduled Deploymentを選択します。希望するスケジュール(例: “Every day at 5pm PST”)を入力します。
エージェントを拡張する
基本的な動作が確認できたら、Replit上でさらに高度なエージェントを構築できます:- 永続的なメモリを追加する — Replit Databaseを使って実行間の状態を保存する
- ファイルを保存する — App Storageでファイルベースのデータを管理する
- さらにサービスを接続する — Integrations(Slack、Linear、GitHub、Notionなど)を追加してマルチサービスのワークフローを構築する
- スキルを使う — Markdownのスキルファイルを追加してエージェントに専門知識と指示を与える
次のステップ
- Claude Agent SDKドキュメントでAPIリファレンスの全体を確認する
- Agents & AutomationsでReplitにおけるチャットボットとイベント駆動型ワークフローの構築方法を学ぶ
- デプロイのオプションについてはScheduled DeploymentsとReserved VM Deploymentsを参照する
- Claude Agent SDKテンプレートから構築を始める