原文(日本語に翻訳)
- Agentツールが
resumeパラメータを受け付けなくなりました — 以前に起動したエージェントを継続するにはSendMessage({to: agentId})を使用してください SendMessageが停止中のエージェントをバックグラウンドで自動再開するようになりました(エラーを返す代わりに)
原文(英語)
- The Agent tool no longer accepts a
resumeparameter — useSendMessage({to: agentId})to continue a previously spawned agent SendMessagenow auto-resumes stopped agents in the background instead of returning an error
概要
マルチエージェント機能のAPIに重要な変更が加えられました。これまで Agent ツールの resume パラメータを使って以前のエージェントを再開していた方法が廃止され、代わりに SendMessage ツールを使う統一されたインターフェースに移行しました。また、停止中のエージェントに SendMessage でメッセージを送ると、エラーではなく自動的にエージェントが再起動されるようになりました。
基本的な使い方
変更前(非推奨)
javascript
// 古い方法(動作しなくなりました)
Agent({
resume: "previous-agent-id",
prompt: "続きのタスクをお願いします"
})変更後(新しい方法)
javascript
// 新しい方法:SendMessageを使ってエージェントを継続
SendMessage({
to: "previous-agent-id",
message: "続きのタスクをお願いします"
})実践例
エージェントの起動と再開
javascript
// ステップ1: エージェントを起動
const result = await Agent({
description: "データ分析エージェント",
prompt: "このCSVファイルを分析して概要をまとめてください"
})
// result.agentId で後でエージェントを識別
// ステップ2: 後でSendMessageで継続
await SendMessage({
to: result.agentId,
message: "先ほどの分析結果を元に、グラフのコードも生成してください"
})停止したエージェントへのメッセージ送信
以前は停止済みエージェントへのメッセージはエラーになっていましたが、今後は自動的に再開されます。
javascript
// エージェントが停止していても自動再開される
await SendMessage({
to: "stopped-agent-id",
message: "先ほどの作業を再開してください"
})
// エラーなしで実行継続、エージェントがバックグラウンドで再起動される複数エージェントの並列管理
javascript
// 複数のエージェントを起動
const agentA = await Agent({
description: "フロントエンド担当",
prompt: "UIコンポーネントを実装してください"
})
const agentB = await Agent({
description: "バックエンド担当",
prompt: "APIエンドポイントを実装してください"
})
// 各エージェントに後続タスクを送信
await SendMessage({
to: agentA.agentId,
message: "実装したコンポーネントのテストも書いてください"
})
await SendMessage({
to: agentB.agentId,
message: "APIのドキュメントも生成してください"
})注意点
- 破壊的変更:
Agentツールのresumeパラメータは完全に削除されました。既存のコードを使っている場合はSendMessageに移行が必要です - 自動再開の挙動: 停止中エージェントへの
SendMessageは自動再開されますが、エージェントの状態によっては意図しない動作になる可能性があります - エージェントID管理:
SendMessageを使うためにはエージェントIDを保持しておく必要があります。長期セッションでの管理を考慮してください - SDK バージョン: この変更は Claude Code SDK のバージョン 2.1.77 以降で有効です。古いバージョンでは動作が異なります