From 74c3934aa5af03c668abfe880e4ed607d14be807 Mon Sep 17 00:00:00 2001 From: Willie Zutz Date: Tue, 17 Jun 2025 00:14:22 -0600 Subject: [PATCH] feat(agent): Add signal support for cancellation in agent workflows --- src/lib/search/agentSearch.ts | 1 + src/lib/search/metaSearchAgent.ts | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/search/agentSearch.ts b/src/lib/search/agentSearch.ts index 9ab3ace..6daeac8 100644 --- a/src/lib/search/agentSearch.ts +++ b/src/lib/search/agentSearch.ts @@ -99,6 +99,7 @@ export class AgentSearch { const result = await workflow.invoke(initialState, { configurable: { thread_id: `agent_search_${Date.now()}` }, recursionLimit: 20, + signal: this.signal, }); return result; diff --git a/src/lib/search/metaSearchAgent.ts b/src/lib/search/metaSearchAgent.ts index fd17489..91c9271 100644 --- a/src/lib/search/metaSearchAgent.ts +++ b/src/lib/search/metaSearchAgent.ts @@ -101,6 +101,7 @@ class MetaSearchAgent implements MetaSearchAgentType { llm: BaseChatModel, systemInstructions: string, emitter: eventEmitter, + signal: AbortSignal, ) { (llm as unknown as ChatOpenAI).temperature = 0; @@ -238,7 +239,7 @@ class MetaSearchAgent implements MetaSearchAgentType { Make sure to answer the query in the summary. - `); //TODO: Pass signal for cancellation + `, { signal }); const document = new Document({ pageContent: res.content as string, @@ -340,6 +341,7 @@ class MetaSearchAgent implements MetaSearchAgentType { llm, systemInstructions, emitter, + signal, ); var date = formatDateForLLM();