feat(actions-registry): add sources, update web search to become active on web

This commit is contained in:
ItzCrazyKns
2025-12-15 23:49:11 +05:30
parent 9b2c229e9c
commit 249889f55a
4 changed files with 8 additions and 0 deletions

View File

@@ -5,6 +5,7 @@ import {
ClassifierOutput,
ResearchAction,
SearchAgentConfig,
SearchSources,
} from '../../types';
class ActionRegistry {
@@ -22,6 +23,7 @@ class ActionRegistry {
classification: ClassifierOutput;
fileIds: string[];
mode: SearchAgentConfig['mode'];
sources: SearchSources[];
}): ResearchAction[] {
return Array.from(
this.actions.values().filter((action) => action.enabled(config)),
@@ -32,6 +34,7 @@ class ActionRegistry {
classification: ClassifierOutput;
fileIds: string[];
mode: SearchAgentConfig['mode'];
sources: SearchSources[];
}): Tool[] {
const availableActions = this.getAvailableActions(config);
@@ -46,6 +49,7 @@ class ActionRegistry {
classification: ClassifierOutput;
fileIds: string[];
mode: SearchAgentConfig['mode'];
sources: SearchSources[];
}): string {
const availableActions = this.getAvailableActions(config);

View File

@@ -82,6 +82,7 @@ const webSearchAction: ResearchAction<typeof actionSchema> = {
return prompt;
},
enabled: (config) =>
config.sources.includes('web') &&
config.classification.classification.skipSearch === false,
execute: async (input, additionalConfig) => {
input.queries = input.queries.slice(0, 3);

View File

@@ -23,6 +23,7 @@ class Researcher {
classification: input.classification,
fileIds: input.config.fileIds,
mode: input.config.mode,
sources: input.config.sources,
});
const availableActionsDescription =
@@ -30,6 +31,7 @@ class Researcher {
classification: input.classification,
fileIds: input.config.fileIds,
mode: input.config.mode,
sources: input.config.sources,
});
const researchBlockId = crypto.randomUUID();

View File

@@ -107,6 +107,7 @@ export interface ResearchAction<
classification: ClassifierOutput;
fileIds: string[];
mode: SearchAgentConfig['mode'];
sources: SearchSources[];
}) => boolean;
execute: (
params: z.infer<TSchema>,