ソースを参照

fix: handle undefined agent in task tool (#1642)

Aiden Cline 6 ヶ月 前
コミット
ad10d3a126
1 ファイル変更1 行追加0 行削除
  1. 1 0
      packages/opencode/src/tool/task.ts

+ 1 - 0
packages/opencode/src/tool/task.ts

@@ -22,6 +22,7 @@ export const TaskTool = Tool.define("task", async () => {
       const msg = await Session.getMessage(ctx.sessionID, ctx.messageID)
       const msg = await Session.getMessage(ctx.sessionID, ctx.messageID)
       if (msg.info.role !== "assistant") throw new Error("Not an assistant message")
       if (msg.info.role !== "assistant") throw new Error("Not an assistant message")
       const agent = await Agent.get(params.subagent_type)
       const agent = await Agent.get(params.subagent_type)
+      if (!agent) throw new Error(`Unknown agent type: ${params.subagent_type} is not a valid agent type`)
       const messageID = Identifier.ascending("message")
       const messageID = Identifier.ascending("message")
       const parts: Record<string, MessageV2.ToolPart> = {}
       const parts: Record<string, MessageV2.ToolPart> = {}
       const unsub = Bus.subscribe(MessageV2.Event.PartUpdated, async (evt) => {
       const unsub = Bus.subscribe(MessageV2.Event.PartUpdated, async (evt) => {