repoburg 1.3.166 → 1.3.167

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (22) hide show
  1. package/backend/dist/src/llm-orchestration/action-handlers/dto/web-fetch.args.dto.d.ts +3 -0
  2. package/backend/dist/src/llm-orchestration/action-handlers/dto/web-fetch.args.dto.js +22 -0
  3. package/backend/dist/src/llm-orchestration/action-handlers/dto/web-fetch.args.dto.js.map +1 -0
  4. package/backend/dist/src/llm-orchestration/action-handlers/dto/web-search.args.dto.d.ts +4 -0
  5. package/backend/dist/src/llm-orchestration/action-handlers/dto/web-search.args.dto.js +30 -0
  6. package/backend/dist/src/llm-orchestration/action-handlers/dto/web-search.args.dto.js.map +1 -0
  7. package/backend/dist/src/llm-orchestration/action-handlers/web-fetch.handler.d.ts +16 -0
  8. package/backend/dist/src/llm-orchestration/action-handlers/web-fetch.handler.js +180 -0
  9. package/backend/dist/src/llm-orchestration/action-handlers/web-fetch.handler.js.map +1 -0
  10. package/backend/dist/src/llm-orchestration/action-handlers/web-search.handler.d.ts +16 -0
  11. package/backend/dist/src/llm-orchestration/action-handlers/web-search.handler.js +185 -0
  12. package/backend/dist/src/llm-orchestration/action-handlers/web-search.handler.js.map +1 -0
  13. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +9 -1
  14. package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -1
  15. package/backend/dist/src/mcp-server/mcp-server.constants.js +2 -0
  16. package/backend/dist/src/mcp-server/mcp-server.constants.js.map +1 -1
  17. package/backend/dist/src/system-prompts/system-prompts.service.js +2 -0
  18. package/backend/dist/src/system-prompts/system-prompts.service.js.map +1 -1
  19. package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
  20. package/backend/package.json +2 -1
  21. package/backend/test-workspace-llm-turn-processor/.repoburg/hooks/context-size-hook.ts +19 -0
  22. package/package.json +1 -1
@@ -0,0 +1,3 @@
1
+ export declare class WebFetchArgsDto {
2
+ url: string;
3
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WebFetchArgsDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class WebFetchArgsDto {
15
+ }
16
+ exports.WebFetchArgsDto = WebFetchArgsDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)({ message: 'url must be a string.' }),
19
+ (0, class_validator_1.IsNotEmpty)({ message: 'url must not be empty.' }),
20
+ __metadata("design:type", String)
21
+ ], WebFetchArgsDto.prototype, "url", void 0);
22
+ //# sourceMappingURL=web-fetch.args.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-fetch.args.dto.js","sourceRoot":"","sources":["../../../../../src/llm-orchestration/action-handlers/dto/web-fetch.args.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAuD;AAEvD,MAAa,eAAe;CAI3B;AAJD,0CAIC;AADC;IAFC,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;IAC9C,IAAA,4BAAU,EAAC,EAAE,OAAO,EAAE,wBAAwB,EAAE,CAAC;;4CACtC"}
@@ -0,0 +1,4 @@
1
+ export declare class WebSearchArgsDto {
2
+ query: string;
3
+ max_results?: number;
4
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.WebSearchArgsDto = void 0;
13
+ const class_validator_1 = require("class-validator");
14
+ class WebSearchArgsDto {
15
+ }
16
+ exports.WebSearchArgsDto = WebSearchArgsDto;
17
+ __decorate([
18
+ (0, class_validator_1.IsString)({ message: 'query must be a string.' }),
19
+ (0, class_validator_1.IsNotEmpty)({ message: 'query must not be empty.' }),
20
+ __metadata("design:type", String)
21
+ ], WebSearchArgsDto.prototype, "query", void 0);
22
+ __decorate([
23
+ (0, class_validator_1.IsOptional)(),
24
+ (0, class_validator_1.IsNumber)({}, { message: 'max_results must be a number.' }),
25
+ (0, class_validator_1.IsInt)({ message: 'max_results must be an integer.' }),
26
+ (0, class_validator_1.Min)(1, { message: 'max_results must be at least 1.' }),
27
+ (0, class_validator_1.Max)(10, { message: 'max_results must be at most 10.' }),
28
+ __metadata("design:type", Number)
29
+ ], WebSearchArgsDto.prototype, "max_results", void 0);
30
+ //# sourceMappingURL=web-search.args.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-search.args.dto.js","sourceRoot":"","sources":["../../../../../src/llm-orchestration/action-handlers/dto/web-search.args.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAQyB;AAEzB,MAAa,gBAAgB;CAW5B;AAXD,4CAWC;AARC;IAFC,IAAA,0BAAQ,EAAC,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC;IAChD,IAAA,4BAAU,EAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;;+CACtC;AAOd;IALC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,+BAA+B,EAAE,CAAC;IAC1D,IAAA,uBAAK,EAAC,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;IACrD,IAAA,qBAAG,EAAC,CAAC,EAAE,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;IACtD,IAAA,qBAAG,EAAC,EAAE,EAAE,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;;qDACnC"}
@@ -0,0 +1,16 @@
1
+ import { ActionHandler } from './action-handler.interface';
2
+ import { ActionExecutionResult, PlanExecutionContext, ToolMetadata } from '../llm-orchestration.interfaces';
3
+ import { ApplicationStateService } from '../../application-state/application-state.service';
4
+ export declare class WebFetchHandler implements ActionHandler {
5
+ private readonly applicationStateService;
6
+ readonly toolName = "web_fetch";
7
+ private readonly logger;
8
+ private readonly baseUrl;
9
+ constructor(applicationStateService: ApplicationStateService);
10
+ getMetadata(): ToolMetadata;
11
+ private generateExample;
12
+ getDefinition(): string;
13
+ execute(args: {
14
+ [key: string]: any;
15
+ }, context: PlanExecutionContext): Promise<ActionExecutionResult>;
16
+ }
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var WebFetchHandler_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.WebFetchHandler = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const web_fetch_args_dto_1 = require("./dto/web-fetch.args.dto");
16
+ const class_transformer_1 = require("class-transformer");
17
+ const class_validator_1 = require("class-validator");
18
+ const application_state_service_1 = require("../../application-state/application-state.service");
19
+ const utils_1 = require("../../utils");
20
+ const gpt_tokenizer_1 = require("gpt-tokenizer");
21
+ let WebFetchHandler = WebFetchHandler_1 = class WebFetchHandler {
22
+ constructor(applicationStateService) {
23
+ this.applicationStateService = applicationStateService;
24
+ this.toolName = 'web_fetch';
25
+ this.logger = new common_1.Logger(WebFetchHandler_1.name);
26
+ this.baseUrl = 'https://ollama.com/api';
27
+ }
28
+ getMetadata() {
29
+ return {
30
+ name: this.toolName,
31
+ description: this.getDefinition(),
32
+ arguments: [
33
+ {
34
+ name: 'url',
35
+ type: 'string',
36
+ description: 'The URL of the web page to fetch.',
37
+ required: true,
38
+ },
39
+ ],
40
+ };
41
+ }
42
+ generateExample(toolCall) {
43
+ return (0, utils_1.generateToolCallJson)(toolCall);
44
+ }
45
+ getDefinition() {
46
+ const example = this.generateExample({
47
+ tool_name: this.toolName,
48
+ url: 'https://ollama.com',
49
+ });
50
+ const definition = `
51
+ -------------
52
+ ### ${this.toolName}
53
+ Fetches a single web page by URL using Ollama's web fetch API.
54
+ Returns the page title, main content, and links found on the page.
55
+ Useful for reading the full content of a URL found via web_search or provided by the user.
56
+
57
+ Requires an Ollama API key to be configured in settings.
58
+
59
+ #### Parameters
60
+ - "url": (string, required) The URL of the web page to fetch.
61
+
62
+ #### Example
63
+ :${example}
64
+ -------------
65
+ `;
66
+ return `\n${definition.trim()}\n`;
67
+ }
68
+ async execute(args, context) {
69
+ const validatedArgs = (0, class_transformer_1.plainToClass)(web_fetch_args_dto_1.WebFetchArgsDto, args);
70
+ const errors = await (0, class_validator_1.validate)(validatedArgs);
71
+ if (errors.length > 0) {
72
+ const errorMessages = errors
73
+ .map((err) => Object.values(err.constraints || {}).join(', '))
74
+ .join('; ');
75
+ return {
76
+ status: 'FAILURE',
77
+ summary: `Invalid arguments for ${this.toolName}.`,
78
+ error_message: errorMessages,
79
+ persisted_args: args,
80
+ execution_log: { output: '', error_message: errorMessages },
81
+ };
82
+ }
83
+ const { url } = validatedArgs;
84
+ const apiKey = await this.applicationStateService.getOllamaApiKey();
85
+ if (!apiKey) {
86
+ const msg = 'Ollama API key is not configured. Web fetch requires an Ollama API key. Please ask the user to set their Ollama API key in the Settings page (Ollama section). A free Ollama account is required — create one at https://ollama.com/settings/keys to generate an API key.';
87
+ this.logger.warn(msg);
88
+ return {
89
+ status: 'FAILURE',
90
+ summary: msg,
91
+ error_message: msg,
92
+ persisted_args: { url },
93
+ execution_log: { output: '', error_message: msg },
94
+ };
95
+ }
96
+ let output;
97
+ let status = 'SUCCESS';
98
+ let errorMessage;
99
+ try {
100
+ this.logger.log(`Web fetch: "${url}"`);
101
+ const response = await fetch(`${this.baseUrl}/web_fetch`, {
102
+ method: 'POST',
103
+ headers: {
104
+ 'Content-Type': 'application/json',
105
+ Authorization: `Bearer ${apiKey}`,
106
+ },
107
+ body: JSON.stringify({ url }),
108
+ });
109
+ if (!response.ok) {
110
+ const errorText = await response.text();
111
+ let errorDetail = errorText;
112
+ try {
113
+ const errorJson = JSON.parse(errorText);
114
+ errorDetail = errorJson?.error || errorText;
115
+ }
116
+ catch {
117
+ }
118
+ const msg = `Ollama web fetch API error (${response.status}): ${errorDetail}`;
119
+ this.logger.error(msg);
120
+ return {
121
+ status: 'FAILURE',
122
+ summary: `Web fetch failed.`,
123
+ error_message: msg,
124
+ persisted_args: { url },
125
+ execution_log: { output: '', error_message: msg },
126
+ };
127
+ }
128
+ const data = (await response.json());
129
+ const sections = [];
130
+ if (data.title) {
131
+ sections.push(`**Title:** ${data.title}`);
132
+ }
133
+ if (data.content) {
134
+ sections.push(`**Content:**\n${data.content}`);
135
+ }
136
+ if (data.links && data.links.length > 0) {
137
+ sections.push(`**Links:**\n${data.links.map((l) => `- ${l}`).join('\n')}`);
138
+ }
139
+ output = sections.join('\n\n') || 'No content returned.';
140
+ this.logger.log(`Web fetch completed for "${url}" (${data.links?.length || 0} links)`);
141
+ }
142
+ catch (error) {
143
+ const execError = error;
144
+ status = 'FAILURE';
145
+ errorMessage = execError.message;
146
+ output = `Web fetch failed: ${execError.message}`;
147
+ this.logger.error(`Web fetch error: ${execError.message}`);
148
+ }
149
+ const tokenCount = (0, gpt_tokenizer_1.countTokens)(output);
150
+ const tokenLimit = await this.applicationStateService.getEffectiveFollowupTokenLimit(context.system_prompt_id);
151
+ if (tokenCount > tokenLimit) {
152
+ const ratio = tokenLimit / tokenCount;
153
+ const truncatedLength = Math.floor(output.length * ratio);
154
+ const truncationWarning = `\n\n[OUTPUT TRUNCATED: ${tokenCount} tokens exceeds limit of ${tokenLimit}.]`;
155
+ output = output.slice(0, truncatedLength) + truncationWarning;
156
+ errorMessage =
157
+ (errorMessage || '') +
158
+ ` Output truncated due to size limit (${tokenCount} > ${tokenLimit} tokens).`;
159
+ this.logger.warn(`Web fetch output truncated: ${tokenCount} tokens exceeds limit of ${tokenLimit}`);
160
+ }
161
+ return {
162
+ status,
163
+ summary: status === 'SUCCESS'
164
+ ? `Web fetch for "${url}" completed.`
165
+ : `Web fetch failed.`,
166
+ persisted_args: { url },
167
+ error_message: errorMessage,
168
+ execution_log: {
169
+ output,
170
+ error_message: errorMessage || '',
171
+ },
172
+ };
173
+ }
174
+ };
175
+ exports.WebFetchHandler = WebFetchHandler;
176
+ exports.WebFetchHandler = WebFetchHandler = WebFetchHandler_1 = __decorate([
177
+ (0, common_1.Injectable)(),
178
+ __metadata("design:paramtypes", [application_state_service_1.ApplicationStateService])
179
+ ], WebFetchHandler);
180
+ //# sourceMappingURL=web-fetch.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-fetch.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/web-fetch.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { ActionHandler } from './action-handler.interface';
2
+ import { ActionExecutionResult, PlanExecutionContext, ToolMetadata } from '../llm-orchestration.interfaces';
3
+ import { ApplicationStateService } from '../../application-state/application-state.service';
4
+ export declare class WebSearchHandler implements ActionHandler {
5
+ private readonly applicationStateService;
6
+ readonly toolName = "web_search";
7
+ private readonly logger;
8
+ private readonly baseUrl;
9
+ constructor(applicationStateService: ApplicationStateService);
10
+ getMetadata(): ToolMetadata;
11
+ private generateExample;
12
+ getDefinition(): string;
13
+ execute(args: {
14
+ [key: string]: any;
15
+ }, context: PlanExecutionContext): Promise<ActionExecutionResult>;
16
+ }
@@ -0,0 +1,185 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var WebSearchHandler_1;
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ exports.WebSearchHandler = void 0;
14
+ const common_1 = require("@nestjs/common");
15
+ const web_search_args_dto_1 = require("./dto/web-search.args.dto");
16
+ const class_transformer_1 = require("class-transformer");
17
+ const class_validator_1 = require("class-validator");
18
+ const application_state_service_1 = require("../../application-state/application-state.service");
19
+ const utils_1 = require("../../utils");
20
+ const gpt_tokenizer_1 = require("gpt-tokenizer");
21
+ let WebSearchHandler = WebSearchHandler_1 = class WebSearchHandler {
22
+ constructor(applicationStateService) {
23
+ this.applicationStateService = applicationStateService;
24
+ this.toolName = 'web_search';
25
+ this.logger = new common_1.Logger(WebSearchHandler_1.name);
26
+ this.baseUrl = 'https://ollama.com/api';
27
+ }
28
+ getMetadata() {
29
+ return {
30
+ name: this.toolName,
31
+ description: this.getDefinition(),
32
+ arguments: [
33
+ {
34
+ name: 'query',
35
+ type: 'string',
36
+ description: 'The search query string.',
37
+ required: true,
38
+ },
39
+ {
40
+ name: 'max_results',
41
+ type: 'number',
42
+ description: 'Maximum results to return (default 5, max 10).',
43
+ required: false,
44
+ },
45
+ ],
46
+ };
47
+ }
48
+ generateExample(toolCall) {
49
+ return (0, utils_1.generateToolCallJson)(toolCall);
50
+ }
51
+ getDefinition() {
52
+ const example = this.generateExample({
53
+ tool_name: this.toolName,
54
+ query: 'what is ollama?',
55
+ max_results: 5,
56
+ });
57
+ const definition = `
58
+ -------------
59
+ ### ${this.toolName}
60
+ Performs a web search using Ollama's web search API.
61
+ Returns relevant search results with titles, URLs, and content snippets.
62
+ Useful for finding the latest information, reducing hallucinations, and augmenting model knowledge.
63
+
64
+ Requires an Ollama API key to be configured in settings.
65
+
66
+ #### Parameters
67
+ - "query": (string, required) The search query string.
68
+ - "max_results": (number, optional) Maximum results to return. Default is 5, maximum is 10.
69
+
70
+ #### Example
71
+ :${example}
72
+ -------------
73
+ `;
74
+ return `\n${definition.trim()}\n`;
75
+ }
76
+ async execute(args, context) {
77
+ const validatedArgs = (0, class_transformer_1.plainToClass)(web_search_args_dto_1.WebSearchArgsDto, args);
78
+ const errors = await (0, class_validator_1.validate)(validatedArgs);
79
+ if (errors.length > 0) {
80
+ const errorMessages = errors
81
+ .map((err) => Object.values(err.constraints || {}).join(', '))
82
+ .join('; ');
83
+ return {
84
+ status: 'FAILURE',
85
+ summary: `Invalid arguments for ${this.toolName}.`,
86
+ error_message: errorMessages,
87
+ persisted_args: args,
88
+ execution_log: { output: '', error_message: errorMessages },
89
+ };
90
+ }
91
+ const { query, max_results } = validatedArgs;
92
+ const maxResults = max_results ?? 5;
93
+ const apiKey = await this.applicationStateService.getOllamaApiKey();
94
+ if (!apiKey) {
95
+ const msg = 'Ollama API key is not configured. Web search requires an Ollama API key. Please ask the user to set their Ollama API key in the Settings page (Ollama section). A free Ollama account is required — create one at https://ollama.com/settings/keys to generate an API key.';
96
+ this.logger.warn(msg);
97
+ return {
98
+ status: 'FAILURE',
99
+ summary: msg,
100
+ error_message: msg,
101
+ persisted_args: { query, max_results: maxResults },
102
+ execution_log: { output: '', error_message: msg },
103
+ };
104
+ }
105
+ let output;
106
+ let status = 'SUCCESS';
107
+ let errorMessage;
108
+ try {
109
+ this.logger.log(`Web search: "${query}" (max ${maxResults} results)`);
110
+ const response = await fetch(`${this.baseUrl}/web_search`, {
111
+ method: 'POST',
112
+ headers: {
113
+ 'Content-Type': 'application/json',
114
+ Authorization: `Bearer ${apiKey}`,
115
+ },
116
+ body: JSON.stringify({ query, max_results: maxResults }),
117
+ });
118
+ if (!response.ok) {
119
+ const errorText = await response.text();
120
+ let errorDetail = errorText;
121
+ try {
122
+ const errorJson = JSON.parse(errorText);
123
+ errorDetail = errorJson?.error || errorText;
124
+ }
125
+ catch {
126
+ }
127
+ const msg = `Ollama web search API error (${response.status}): ${errorDetail}`;
128
+ this.logger.error(msg);
129
+ return {
130
+ status: 'FAILURE',
131
+ summary: `Web search failed.`,
132
+ error_message: msg,
133
+ persisted_args: { query, max_results: maxResults },
134
+ execution_log: { output: '', error_message: msg },
135
+ };
136
+ }
137
+ const data = (await response.json());
138
+ const results = data.results || [];
139
+ output = results
140
+ .map((r, i) => `### Result ${i + 1}\n**Title:** ${r.title}\n**URL:** ${r.url}\n**Content:** ${r.content}`)
141
+ .join('\n\n---\n\n');
142
+ if (!output) {
143
+ output = 'No search results found.';
144
+ }
145
+ this.logger.log(`Web search returned ${results.length} results`);
146
+ }
147
+ catch (error) {
148
+ const execError = error;
149
+ status = 'FAILURE';
150
+ errorMessage = execError.message;
151
+ output = `Web search failed: ${execError.message}`;
152
+ this.logger.error(`Web search error: ${execError.message}`);
153
+ }
154
+ const tokenCount = (0, gpt_tokenizer_1.countTokens)(output);
155
+ const tokenLimit = await this.applicationStateService.getEffectiveFollowupTokenLimit(context.system_prompt_id);
156
+ if (tokenCount > tokenLimit) {
157
+ const ratio = tokenLimit / tokenCount;
158
+ const truncatedLength = Math.floor(output.length * ratio);
159
+ const truncationWarning = `\n\n[OUTPUT TRUNCATED: ${tokenCount} tokens exceeds limit of ${tokenLimit}.]`;
160
+ output = output.slice(0, truncatedLength) + truncationWarning;
161
+ errorMessage =
162
+ (errorMessage || '') +
163
+ ` Output truncated due to size limit (${tokenCount} > ${tokenLimit} tokens).`;
164
+ this.logger.warn(`Web search output truncated: ${tokenCount} tokens exceeds limit of ${tokenLimit}`);
165
+ }
166
+ return {
167
+ status,
168
+ summary: status === 'SUCCESS'
169
+ ? `Web search for "${query}" completed.`
170
+ : `Web search failed.`,
171
+ persisted_args: { query, max_results: maxResults },
172
+ error_message: errorMessage,
173
+ execution_log: {
174
+ output,
175
+ error_message: errorMessage || '',
176
+ },
177
+ };
178
+ }
179
+ };
180
+ exports.WebSearchHandler = WebSearchHandler;
181
+ exports.WebSearchHandler = WebSearchHandler = WebSearchHandler_1 = __decorate([
182
+ (0, common_1.Injectable)(),
183
+ __metadata("design:paramtypes", [application_state_service_1.ApplicationStateService])
184
+ ], WebSearchHandler);
185
+ //# sourceMappingURL=web-search.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-search.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/web-search.handler.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,8 @@ const manage_sub_agents_handler_1 = require("./action-handlers/manage-sub-agents
66
66
  const manage_agents_handler_1 = require("./action-handlers/manage-agents.handler");
67
67
  const manage_mcp_servers_handler_1 = require("./action-handlers/manage-mcp-servers.handler");
68
68
  const manage_tool_hooks_handler_1 = require("./action-handlers/manage-tool-hooks.handler");
69
+ const web_search_handler_1 = require("./action-handlers/web-search.handler");
70
+ const web_fetch_handler_1 = require("./action-handlers/web-fetch.handler");
69
71
  const invalid_tool_feedback_hook_1 = require("./hooks/invalid-tool-feedback.hook");
70
72
  const frontend_notification_hook_1 = require("./hooks/frontend-notification.hook");
71
73
  const follow_up_post_execution_hook_1 = require("./hooks/follow-up-post-execution.hook");
@@ -135,13 +137,15 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
135
137
  manage_agents_handler_1.ManageAgentsHandler,
136
138
  manage_mcp_servers_handler_1.ManageMcpServersHandler,
137
139
  manage_tool_hooks_handler_1.ManageToolHooksHandler,
140
+ web_search_handler_1.WebSearchHandler,
141
+ web_fetch_handler_1.WebFetchHandler,
138
142
  invalid_tool_feedback_hook_1.InvalidToolFeedbackHook,
139
143
  frontend_notification_hook_1.FrontendNotificationHook,
140
144
  follow_up_post_execution_hook_1.FollowUpPostExecutionHook,
141
145
  yolo_mode_post_execution_hook_1.YoloModePostExecutionHook,
142
146
  {
143
147
  provide: 'ACTION_HANDLER_REGISTRY',
144
- useFactory: (createFile, deleteFile, overwriteFile, runCommand, requestContext, final, quickEdit, applyDiff, patch, newSession, writeTodo, executeCode, invokeSubAgent, listSubAgents, getSessionHistory, generateTitle, askUser, getMessages, discardMessages, sessionStatus, htmlFinal, manageSystemPrompts, manageContextTemplates, manageContextSnippets, manageCustomSnippets, manageCustomVariables, manageSubAgents, manageAgents, manageMcpServers, manageToolHooks) => {
148
+ useFactory: (createFile, deleteFile, overwriteFile, runCommand, requestContext, final, quickEdit, applyDiff, patch, newSession, writeTodo, executeCode, invokeSubAgent, listSubAgents, getSessionHistory, generateTitle, askUser, getMessages, discardMessages, sessionStatus, htmlFinal, manageSystemPrompts, manageContextTemplates, manageContextSnippets, manageCustomSnippets, manageCustomVariables, manageSubAgents, manageAgents, manageMcpServers, manageToolHooks, webSearch, webFetch) => {
145
149
  const registry = new Map();
146
150
  registry.set(createFile.toolName, createFile);
147
151
  registry.set(deleteFile.toolName, deleteFile);
@@ -173,6 +177,8 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
173
177
  registry.set(manageAgents.toolName, manageAgents);
174
178
  registry.set(manageMcpServers.toolName, manageMcpServers);
175
179
  registry.set(manageToolHooks.toolName, manageToolHooks);
180
+ registry.set(webSearch.toolName, webSearch);
181
+ registry.set(webFetch.toolName, webFetch);
176
182
  return registry;
177
183
  },
178
184
  inject: [
@@ -206,6 +212,8 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
206
212
  manage_agents_handler_1.ManageAgentsHandler,
207
213
  manage_mcp_servers_handler_1.ManageMcpServersHandler,
208
214
  manage_tool_hooks_handler_1.ManageToolHooksHandler,
215
+ web_search_handler_1.WebSearchHandler,
216
+ web_fetch_handler_1.WebFetchHandler,
209
217
  ],
210
218
  },
211
219
  {
@@ -1 +1 @@
1
- {"version":3,"file":"llm-orchestration.module.js","sourceRoot":"","sources":["../../../src/llm-orchestration/llm-orchestration.module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"llm-orchestration.module.js","sourceRoot":"","sources":["../../../src/llm-orchestration/llm-orchestration.module.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ exports.EXPOSED_TOOL_NAMES = [
11
11
  'manage_sub_agents',
12
12
  'manage_mcp_servers',
13
13
  'manage_tool_hooks',
14
+ 'web_search',
15
+ 'web_fetch',
14
16
  ];
15
17
  exports.REPOBURG_MCP_HTTP_PORT_DEFAULT = 3100;
16
18
  exports.REPOBURG_MCP_HTTP_HOST_DEFAULT = '127.0.0.1';
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.constants.js","sourceRoot":"","sources":["../../../src/mcp-server/mcp-server.constants.ts"],"names":[],"mappings":";;;AAWa,QAAA,kBAAkB,GAAsB;IACnD,eAAe;IACf,uBAAuB;IACvB,0BAA0B;IAC1B,yBAAyB;IACzB,wBAAwB;IACxB,yBAAyB;IACzB,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;CACpB,CAAC;AAQW,QAAA,8BAA8B,GAAG,IAAI,CAAC;AACtC,QAAA,8BAA8B,GAAG,WAAW,CAAC;AAC7C,QAAA,sBAAsB,GAAG,MAAM,CAAC;AAahC,QAAA,aAAa,GAAG,EAAE,SAAS,EAAE,GAAG,EAAW,CAAC"}
1
+ {"version":3,"file":"mcp-server.constants.js","sourceRoot":"","sources":["../../../src/mcp-server/mcp-server.constants.ts"],"names":[],"mappings":";;;AAWa,QAAA,kBAAkB,GAAsB;IACnD,eAAe;IACf,uBAAuB;IACvB,0BAA0B;IAC1B,yBAAyB;IACzB,wBAAwB;IACxB,yBAAyB;IACzB,mBAAmB;IACnB,oBAAoB;IACpB,mBAAmB;IACnB,YAAY;IACZ,WAAW;CACZ,CAAC;AAQW,QAAA,8BAA8B,GAAG,IAAI,CAAC;AACtC,QAAA,8BAA8B,GAAG,WAAW,CAAC;AAC7C,QAAA,sBAAsB,GAAG,MAAM,CAAC;AAahC,QAAA,aAAa,GAAG,EAAE,SAAS,EAAE,GAAG,EAAW,CAAC"}
@@ -50,6 +50,8 @@ let SystemPromptsService = class SystemPromptsService {
50
50
  'get_messages',
51
51
  'discard_messages',
52
52
  'session_status',
53
+ 'web_search',
54
+ 'web_fetch',
53
55
  'manage_system_prompts',
54
56
  'manage_context_templates',
55
57
  'manage_context_snippets',