diff --git a/src/lib/agents/search/researcher/actions/academicSearch.ts b/src/lib/agents/search/researcher/actions/academicSearch.ts index 72e1f4b14..949bf9b08 100644 --- a/src/lib/agents/search/researcher/actions/academicSearch.ts +++ b/src/lib/agents/search/researcher/actions/academicSearch.ts @@ -30,7 +30,7 @@ const academicSearchAction: ResearchAction = { config.classification.classification.skipSearch === false && config.classification.classification.academicSearch === true, execute: async (input, additionalConfig) => { - input.queries = input.queries.slice(0, 3); + input.queries = (input.queries ?? []).slice(0, 3); const researchBlock = additionalConfig.session.getBlock( additionalConfig.researchBlockId, diff --git a/src/lib/agents/search/researcher/actions/scrapeURL.ts b/src/lib/agents/search/researcher/actions/scrapeURL.ts index c702a7014..4145a5b77 100644 --- a/src/lib/agents/search/researcher/actions/scrapeURL.ts +++ b/src/lib/agents/search/researcher/actions/scrapeURL.ts @@ -25,7 +25,7 @@ const scrapeURLAction: ResearchAction = { getDescription: () => actionDescription, enabled: (_) => true, execute: async (params, additionalConfig) => { - params.urls = params.urls.slice(0, 3); + params.urls = (params.urls ?? []).slice(0, 3); let readingBlockId = crypto.randomUUID(); let readingEmitted = false; diff --git a/src/lib/agents/search/researcher/actions/socialSearch.ts b/src/lib/agents/search/researcher/actions/socialSearch.ts index 16468ab4c..92b7975a7 100644 --- a/src/lib/agents/search/researcher/actions/socialSearch.ts +++ b/src/lib/agents/search/researcher/actions/socialSearch.ts @@ -30,7 +30,7 @@ const socialSearchAction: ResearchAction = { config.classification.classification.skipSearch === false && config.classification.classification.discussionSearch === true, execute: async (input, additionalConfig) => { - input.queries = input.queries.slice(0, 3); + input.queries = (input.queries ?? []).slice(0, 3); const researchBlock = additionalConfig.session.getBlock( additionalConfig.researchBlockId, diff --git a/src/lib/agents/search/researcher/actions/uploadsSearch.ts b/src/lib/agents/search/researcher/actions/uploadsSearch.ts index 819506395..3fd4ad3b4 100644 --- a/src/lib/agents/search/researcher/actions/uploadsSearch.ts +++ b/src/lib/agents/search/researcher/actions/uploadsSearch.ts @@ -27,7 +27,7 @@ const uploadsSearchAction: ResearchAction = { Never use this tool to search the web or for information that is not contained within the user's uploaded files. `, execute: async (input, additionalConfig) => { - input.queries = input.queries.slice(0, 3); + input.queries = (input.queries ?? []).slice(0, 3); const researchBlock = additionalConfig.session.getBlock( additionalConfig.researchBlockId, diff --git a/src/lib/agents/search/researcher/actions/webSearch.ts b/src/lib/agents/search/researcher/actions/webSearch.ts index 4d60b79f2..9c832bcf0 100644 --- a/src/lib/agents/search/researcher/actions/webSearch.ts +++ b/src/lib/agents/search/researcher/actions/webSearch.ts @@ -85,7 +85,7 @@ const webSearchAction: ResearchAction = { config.sources.includes('web') && config.classification.classification.skipSearch === false, execute: async (input, additionalConfig) => { - input.queries = input.queries.slice(0, 3); + input.queries = (input.queries ?? []).slice(0, 3); const researchBlock = additionalConfig.session.getBlock( additionalConfig.researchBlockId,