@tyvm/knowhow 0.0.16 → 0.0.17
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.
- package/package.json +2 -1
- package/src/agents/base/base.ts +25 -6
- package/src/agents/index.ts +2 -2
- package/src/agents/tools/agentCall.ts +0 -1
- package/src/agents/tools/execCommand.ts +95 -4
- package/src/agents/tools/list.ts +23 -19
- package/src/agents/tools/writeFile.ts +1 -1
- package/src/chat.ts +11 -0
- package/src/config.ts +3 -1
- package/src/processors/Base64ImageDetector.ts +190 -0
- package/src/processors/TokenCompressor.ts +357 -0
- package/src/processors/ToolResponseCache.ts +235 -0
- package/src/services/MessageProcessor.ts +107 -0
- package/src/services/Tools.ts +100 -1
- package/src/services/types.ts +57 -0
- package/ts_build/src/agents/base/base.d.ts +3 -1
- package/ts_build/src/agents/base/base.js +20 -5
- package/ts_build/src/agents/base/base.js.map +1 -1
- package/ts_build/src/agents/index.d.ts +2 -2
- package/ts_build/src/agents/index.js +5 -3
- package/ts_build/src/agents/index.js.map +1 -1
- package/ts_build/src/agents/tools/agentCall.js.map +1 -1
- package/ts_build/src/agents/tools/execCommand.d.ts +6 -1
- package/ts_build/src/agents/tools/execCommand.js +70 -4
- package/ts_build/src/agents/tools/execCommand.js.map +1 -1
- package/ts_build/src/agents/tools/expandTokens.d.ts +3 -0
- package/ts_build/src/agents/tools/expandTokens.js +33 -0
- package/ts_build/src/agents/tools/expandTokens.js.map +1 -0
- package/ts_build/src/agents/tools/getBigString.d.ts +3 -0
- package/ts_build/src/agents/tools/getBigString.js +33 -0
- package/ts_build/src/agents/tools/getBigString.js.map +1 -0
- package/ts_build/src/agents/tools/list.js +19 -17
- package/ts_build/src/agents/tools/list.js.map +1 -1
- package/ts_build/src/agents/tools/writeFile.js +1 -1
- package/ts_build/src/agents/tools/writeFile.js.map +1 -1
- package/ts_build/src/chat.js +6 -0
- package/ts_build/src/chat.js.map +1 -1
- package/ts_build/src/config.js +1 -1
- package/ts_build/src/config.js.map +1 -1
- package/ts_build/src/processors/Base64ImageDetector.d.ts +14 -0
- package/ts_build/src/processors/Base64ImageDetector.js +153 -0
- package/ts_build/src/processors/Base64ImageDetector.js.map +1 -0
- package/ts_build/src/processors/TokenCompressor.d.ts +28 -0
- package/ts_build/src/processors/TokenCompressor.js +226 -0
- package/ts_build/src/processors/TokenCompressor.js.map +1 -0
- package/ts_build/src/processors/ToolResponseCache.d.ts +22 -0
- package/ts_build/src/processors/ToolResponseCache.js +164 -0
- package/ts_build/src/processors/ToolResponseCache.js.map +1 -0
- package/ts_build/src/processors/ToolResponseManipulator.d.ts +22 -0
- package/ts_build/src/processors/ToolResponseManipulator.js +162 -0
- package/ts_build/src/processors/ToolResponseManipulator.js.map +1 -0
- package/ts_build/src/services/MessageProcessor.d.ts +17 -0
- package/ts_build/src/services/MessageProcessor.js +63 -0
- package/ts_build/src/services/MessageProcessor.js.map +1 -0
- package/ts_build/src/services/Tools.d.ts +12 -0
- package/ts_build/src/services/Tools.js +71 -0
- package/ts_build/src/services/Tools.js.map +1 -1
- package/ts_build/src/services/types.d.ts +32 -0
- package/ts_build/src/services/types.js +38 -0
- package/ts_build/src/services/types.js.map +1 -0
- package/ts_build/src/agents/configurable/OpenAIAgent.d.ts +0 -0
- package/ts_build/src/agents/configurable/OpenAIAgent.js +0 -1
- package/ts_build/src/agents/configurable/OpenAIAgent.js.map +0 -1
- package/ts_build/src/agents/tools/client.d.ts +0 -5
- package/ts_build/src/agents/tools/client.js +0 -21
- package/ts_build/src/agents/tools/client.js.map +0 -1
- package/ts_build/src/agents/tools/googleSearchTypes.d.ts +0 -74
- package/ts_build/src/agents/tools/googleSearchTypes.js +0 -3
- package/ts_build/src/agents/tools/googleSearchTypes.js.map +0 -1
- package/ts_build/src/commands/chat-ui.d.ts +0 -1
- package/ts_build/src/commands/chat-ui.js +0 -14
- package/ts_build/src/commands/chat-ui.js.map +0 -1
- package/ts_build/src/demo/chat-ui-demo.d.ts +0 -3
- package/ts_build/src/demo/chat-ui-demo.js +0 -20
- package/ts_build/src/demo/chat-ui-demo.js.map +0 -1
- package/ts_build/src/plugins/EmbeddingPluginV2.d.ts +0 -7
- package/ts_build/src/plugins/EmbeddingPluginV2.js +0 -41
- package/ts_build/src/plugins/EmbeddingPluginV2.js.map +0 -1
- package/ts_build/src/plugins/GitHubPluginV2.d.ts +0 -10
- package/ts_build/src/plugins/GitHubPluginV2.js +0 -57
- package/ts_build/src/plugins/GitHubPluginV2.js.map +0 -1
- package/ts_build/src/plugins/downloader/index.d.ts +0 -3
- package/ts_build/src/plugins/downloader/index.js +0 -41
- package/ts_build/src/plugins/downloader/index.js.map +0 -1
- package/ts_build/src/services/MessagePreprocessor.d.ts +0 -26
- package/ts_build/src/services/MessagePreprocessor.js +0 -190
- package/ts_build/src/services/MessagePreprocessor.js.map +0 -1
- package/ts_build/src/services/__tests__/MessagePreprocessor.test.d.ts +0 -1
- package/ts_build/src/services/__tests__/MessagePreprocessor.test.js +0 -117
- package/ts_build/src/services/__tests__/MessagePreprocessor.test.js.map +0 -1
- package/ts_build/src/terminal.d.ts +0 -1
- package/ts_build/src/terminal.js +0 -35
- package/ts_build/src/terminal.js.map +0 -1
- package/ts_build/src/ui/InkChatUI.d.ts +0 -1
- package/ts_build/src/ui/InkChatUI.js +0 -792
- package/ts_build/src/ui/InkChatUI.js.map +0 -1
- package/ts_build/src/ui/components/ChatInterface.d.ts +0 -15
- package/ts_build/src/ui/components/ChatInterface.js +0 -39
- package/ts_build/src/ui/components/ChatInterface.js.map +0 -1
- package/ts_build/src/ui/components/ChatMessage.d.ts +0 -8
- package/ts_build/src/ui/components/ChatMessage.js +0 -7
- package/ts_build/src/ui/components/ChatMessage.js.map +0 -1
- package/ts_build/src/ui/components/CommandPalette.d.ts +0 -8
- package/ts_build/src/ui/components/CommandPalette.js +0 -23
- package/ts_build/src/ui/components/CommandPalette.js.map +0 -1
- package/ts_build/src/ui/components/InputBar.d.ts +0 -8
- package/ts_build/src/ui/components/InputBar.js +0 -8
- package/ts_build/src/ui/components/InputBar.js.map +0 -1
- package/ts_build/src/ui/components/Sidebar.d.ts +0 -9
- package/ts_build/src/ui/components/Sidebar.js +0 -7
- package/ts_build/src/ui/components/Sidebar.js.map +0 -1
- package/ts_build/src/ui/components/StatusBar.d.ts +0 -10
- package/ts_build/src/ui/components/StatusBar.js +0 -8
- package/ts_build/src/ui/components/StatusBar.js.map +0 -1
- package/ts_build/src/ui/demo.d.ts +0 -3
- package/ts_build/src/ui/demo.js +0 -26
- package/ts_build/src/ui/demo.js.map +0 -1
- package/ts_build/src/ui/index.d.ts +0 -13
- package/ts_build/src/ui/index.js +0 -16
- package/ts_build/src/ui/index.js.map +0 -1
- package/ts_build/tests/integration/OpenAI-MessagePreprocessor.test.d.ts +0 -1
- package/ts_build/tests/integration/OpenAI-MessagePreprocessor.test.js +0 -148
- package/ts_build/tests/integration/OpenAI-MessagePreprocessor.test.js.map +0 -1
- package/ts_build/tests/services/MessagePreprocessor.test.d.ts +0 -1
- package/ts_build/tests/services/MessagePreprocessor.test.js +0 -117
- package/ts_build/tests/services/MessagePreprocessor.test.js.map +0 -1
package/src/services/Tools.ts
CHANGED
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { ChatCompletionTool } from "openai/resources/chat";
|
|
2
2
|
import { includedTools } from "../agents/tools/list";
|
|
3
3
|
import { Tool } from "../clients/types";
|
|
4
|
+
import { ToolOverrideRegistration, ToolWrapperRegistration, ToolOverrideFunction, ToolWrapper, createPatternMatcher } from "./types";
|
|
4
5
|
|
|
5
6
|
export class ToolsService {
|
|
6
7
|
tools = [] as Tool[];
|
|
8
|
+
private overrides: ToolOverrideRegistration[] = [];
|
|
9
|
+
private wrappers: ToolWrapperRegistration[] = [];
|
|
10
|
+
private originalFunctions: { [key: string]: (...args: any[]) => any } = {};
|
|
7
11
|
|
|
8
12
|
functions = {};
|
|
9
13
|
|
|
@@ -38,6 +42,40 @@ export class ToolsService {
|
|
|
38
42
|
}
|
|
39
43
|
|
|
40
44
|
setFunction(name: string, func: (...args: any) => any) {
|
|
45
|
+
// Store original function if not already stored
|
|
46
|
+
if (!this.originalFunctions[name]) {
|
|
47
|
+
this.originalFunctions[name] = func;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
// Check for overrides first
|
|
51
|
+
const override = this.findMatchingOverride(name);
|
|
52
|
+
if (override) {
|
|
53
|
+
this.functions[name] = async (...args: any[]) => {
|
|
54
|
+
const tool = this.getTool(name);
|
|
55
|
+
return await override.override(args, tool);
|
|
56
|
+
};
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// Check for wrappers
|
|
61
|
+
const wrappers = this.findMatchingWrappers(name);
|
|
62
|
+
if (wrappers.length > 0) {
|
|
63
|
+
let wrappedFunction = func;
|
|
64
|
+
|
|
65
|
+
// Apply wrappers in priority order
|
|
66
|
+
for (const wrapperReg of wrappers) {
|
|
67
|
+
const currentFunction = wrappedFunction;
|
|
68
|
+
wrappedFunction = async (...args: any[]) => {
|
|
69
|
+
const tool = this.getTool(name);
|
|
70
|
+
return await wrapperReg.wrapper(currentFunction, args, tool);
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
this.functions[name] = wrappedFunction;
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
// No overrides or wrappers, use original function
|
|
41
79
|
this.functions[name] = func;
|
|
42
80
|
}
|
|
43
81
|
|
|
@@ -60,6 +98,67 @@ export class ToolsService {
|
|
|
60
98
|
this.setFunction(fnName, fns[fnName]);
|
|
61
99
|
}
|
|
62
100
|
}
|
|
101
|
+
|
|
102
|
+
// Tool Override Methods
|
|
103
|
+
registerOverride(
|
|
104
|
+
pattern: string | RegExp,
|
|
105
|
+
override: ToolOverrideFunction,
|
|
106
|
+
priority: number = 0
|
|
107
|
+
): void {
|
|
108
|
+
this.overrides.push({ pattern, override, priority });
|
|
109
|
+
this.overrides.sort((a, b) => b.priority - a.priority);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
registerWrapper(
|
|
113
|
+
pattern: string | RegExp,
|
|
114
|
+
wrapper: ToolWrapper,
|
|
115
|
+
priority: number = 0
|
|
116
|
+
): void {
|
|
117
|
+
this.wrappers.push({ pattern, wrapper, priority });
|
|
118
|
+
this.wrappers.sort((a, b) => b.priority - a.priority);
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
removeOverride(pattern: string | RegExp): void {
|
|
122
|
+
this.overrides = this.overrides.filter(reg => reg.pattern !== pattern);
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
removeWrapper(pattern: string | RegExp): void {
|
|
126
|
+
this.wrappers = this.wrappers.filter(reg => reg.pattern !== pattern);
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
private findMatchingOverride(toolName: string): ToolOverrideRegistration | null {
|
|
130
|
+
for (const registration of this.overrides) {
|
|
131
|
+
const matcher = createPatternMatcher(registration.pattern);
|
|
132
|
+
if (matcher.matches(toolName)) {
|
|
133
|
+
return registration;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return null;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
private findMatchingWrappers(toolName: string): ToolWrapperRegistration[] {
|
|
140
|
+
const matchingWrappers: ToolWrapperRegistration[] = [];
|
|
141
|
+
for (const registration of this.wrappers) {
|
|
142
|
+
const matcher = createPatternMatcher(registration.pattern);
|
|
143
|
+
if (matcher.matches(toolName)) {
|
|
144
|
+
matchingWrappers.push(registration);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return matchingWrappers;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
getOriginalFunction(name: string): ((...args: any[]) => any) | undefined {
|
|
151
|
+
return this.originalFunctions[name];
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
clearOverrides(): void {
|
|
155
|
+
this.overrides = [];
|
|
156
|
+
this.wrappers = [];
|
|
157
|
+
// Restore original functions
|
|
158
|
+
for (const [name, originalFunc] of Object.entries(this.originalFunctions)) {
|
|
159
|
+
this.functions[name] = originalFunc;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
63
162
|
}
|
|
64
163
|
|
|
65
|
-
export const Tools = new ToolsService();
|
|
164
|
+
export const Tools = new ToolsService();
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { Tool } from "../clients/types";
|
|
2
|
+
|
|
3
|
+
export interface ToolOverrideFunction {
|
|
4
|
+
(originalArgs: any[], originalTool: Tool): Promise<any> | any;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
export interface ToolOverrideRegistration {
|
|
8
|
+
pattern: string | RegExp;
|
|
9
|
+
override: ToolOverrideFunction;
|
|
10
|
+
priority: number;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface ToolWrapper {
|
|
14
|
+
(originalFunction: (...args: any[]) => any, originalArgs: any[], originalTool: Tool): Promise<any> | any;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export interface ToolWrapperRegistration {
|
|
18
|
+
pattern: string | RegExp;
|
|
19
|
+
wrapper: ToolWrapper;
|
|
20
|
+
priority: number;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export interface PatternMatcher {
|
|
24
|
+
matches(toolName: string): boolean;
|
|
25
|
+
pattern: string | RegExp;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export class StringPatternMatcher implements PatternMatcher {
|
|
29
|
+
constructor(public pattern: string) {}
|
|
30
|
+
|
|
31
|
+
matches(toolName: string): boolean {
|
|
32
|
+
// Convert glob pattern to regex
|
|
33
|
+
const regexPattern = this.pattern
|
|
34
|
+
.replace(/[.*+?^${}()|[\]\\]/g, '\\$&') // Escape special regex chars
|
|
35
|
+
.replace(/\\\*/g, '.*') // Convert * to .*
|
|
36
|
+
.replace(/\\\?/g, '.'); // Convert ? to .
|
|
37
|
+
|
|
38
|
+
const regex = new RegExp(`^${regexPattern}$`);
|
|
39
|
+
return regex.test(toolName);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export class RegexPatternMatcher implements PatternMatcher {
|
|
44
|
+
constructor(public pattern: RegExp) {}
|
|
45
|
+
|
|
46
|
+
matches(toolName: string): boolean {
|
|
47
|
+
return this.pattern.test(toolName);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function createPatternMatcher(pattern: string | RegExp): PatternMatcher {
|
|
52
|
+
if (typeof pattern === 'string') {
|
|
53
|
+
return new StringPatternMatcher(pattern);
|
|
54
|
+
} else {
|
|
55
|
+
return new RegexPatternMatcher(pattern);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
@@ -5,6 +5,7 @@ import { IAgent } from "../interface";
|
|
|
5
5
|
import { ToolsService } from "../../services/Tools";
|
|
6
6
|
import { EventService } from "../../services/EventService";
|
|
7
7
|
import { Clients } from "../../clients";
|
|
8
|
+
import { MessageProcessor } from "../../services/MessageProcessor";
|
|
8
9
|
export { Message, Tool, ToolCall };
|
|
9
10
|
export interface ModelPreference {
|
|
10
11
|
model: string;
|
|
@@ -13,6 +14,7 @@ export interface ModelPreference {
|
|
|
13
14
|
export declare abstract class BaseAgent implements IAgent {
|
|
14
15
|
tools: ToolsService;
|
|
15
16
|
events: EventService;
|
|
17
|
+
messageProcessor: MessageProcessor;
|
|
16
18
|
abstract name: string;
|
|
17
19
|
abstract description: string;
|
|
18
20
|
private status;
|
|
@@ -42,7 +44,7 @@ export declare abstract class BaseAgent implements IAgent {
|
|
|
42
44
|
unpause: string;
|
|
43
45
|
};
|
|
44
46
|
disabledTools: any[];
|
|
45
|
-
constructor(tools?: ToolsService, events?: EventService);
|
|
47
|
+
constructor(tools?: ToolsService, events?: EventService, messageProcessor?: MessageProcessor);
|
|
46
48
|
newTask(): void;
|
|
47
49
|
register(): void;
|
|
48
50
|
setModelPreferences(value: ModelPreference[]): void;
|
|
@@ -7,9 +7,11 @@ const utils_1 = require("../../utils");
|
|
|
7
7
|
const EventService_1 = require("../../services/EventService");
|
|
8
8
|
const clients_1 = require("../../clients");
|
|
9
9
|
const ai_1 = require("../../ai");
|
|
10
|
+
const MessageProcessor_1 = require("../../services/MessageProcessor");
|
|
10
11
|
class BaseAgent {
|
|
11
12
|
tools;
|
|
12
13
|
events;
|
|
14
|
+
messageProcessor;
|
|
13
15
|
status = "in_progress";
|
|
14
16
|
lastHealthCheckTime = 0;
|
|
15
17
|
provider = "openai";
|
|
@@ -37,9 +39,10 @@ class BaseAgent {
|
|
|
37
39
|
unpause: "unpause",
|
|
38
40
|
};
|
|
39
41
|
disabledTools = [];
|
|
40
|
-
constructor(tools = Tools_1.Tools, events = EventService_1.Events) {
|
|
42
|
+
constructor(tools = Tools_1.Tools, events = EventService_1.Events, messageProcessor = new MessageProcessor_1.MessageProcessor()) {
|
|
41
43
|
this.tools = tools;
|
|
42
44
|
this.events = events;
|
|
45
|
+
this.messageProcessor = messageProcessor;
|
|
43
46
|
}
|
|
44
47
|
newTask() {
|
|
45
48
|
this.currentThread = 0;
|
|
@@ -311,6 +314,9 @@ class BaseAgent {
|
|
|
311
314
|
try {
|
|
312
315
|
const model = this.getModel();
|
|
313
316
|
let messages = _messages || (await this.getInitialMessages(userInput));
|
|
317
|
+
if (!_messages) {
|
|
318
|
+
messages = await this.messageProcessor.processMessages(messages, "initial_call");
|
|
319
|
+
}
|
|
314
320
|
if (this.pendingUserMessages.length) {
|
|
315
321
|
messages.push(...this.pendingUserMessages);
|
|
316
322
|
this.pendingUserMessages = [];
|
|
@@ -320,6 +326,7 @@ class BaseAgent {
|
|
|
320
326
|
const isMissingTool = this.isRequiredToolMissing();
|
|
321
327
|
const startIndex = 0;
|
|
322
328
|
const endIndex = messages.length;
|
|
329
|
+
messages = await this.messageProcessor.processMessages(messages, "per_call");
|
|
323
330
|
const compressThreshold = 10000;
|
|
324
331
|
const response = await this.getClient().createChatCompletion({
|
|
325
332
|
model,
|
|
@@ -353,6 +360,9 @@ class BaseAgent {
|
|
|
353
360
|
}
|
|
354
361
|
}
|
|
355
362
|
}
|
|
363
|
+
if (newToolCalls && newToolCalls.length > 0) {
|
|
364
|
+
messages = await this.messageProcessor.processMessages(messages, "post_call");
|
|
365
|
+
}
|
|
356
366
|
if (response.choices.length === 1 &&
|
|
357
367
|
firstMessage.content &&
|
|
358
368
|
this.easyFinalAnswer) {
|
|
@@ -413,7 +423,9 @@ class BaseAgent {
|
|
|
413
423
|
1. Task List
|
|
414
424
|
2. Completion Criteria - when the agent should stop
|
|
415
425
|
|
|
416
|
-
|
|
426
|
+
This output will be used to guide the work of the agent, and determine when we've accomplished the goal
|
|
427
|
+
|
|
428
|
+
\n\n<ToAnalyze>${JSON.stringify(messages)}</ToAnalyze>`;
|
|
417
429
|
const model = this.getModel();
|
|
418
430
|
const response = await this.getClient().createChatCompletion({
|
|
419
431
|
model,
|
|
@@ -423,6 +435,7 @@ class BaseAgent {
|
|
|
423
435
|
content: taskPrompt,
|
|
424
436
|
},
|
|
425
437
|
],
|
|
438
|
+
max_tokens: 2000,
|
|
426
439
|
});
|
|
427
440
|
this.adjustTotalCostUsd(response.usd_cost);
|
|
428
441
|
console.log(response);
|
|
@@ -440,10 +453,12 @@ class BaseAgent {
|
|
|
440
453
|
3. Next Steps - what we're about to do next to continue the user's original request.
|
|
441
454
|
4. Tasks remaining - what tasks are left from the initial task breakdown.
|
|
442
455
|
|
|
443
|
-
|
|
444
|
-
|
|
456
|
+
Our initial task breakdown: ${this.taskBreakdown}
|
|
457
|
+
|
|
458
|
+
This summary will become the agent's only memory of the past, all other messages will be dropped:
|
|
459
|
+
<ToSummarize>${JSON.stringify(toCompress)}</ToSummarize>
|
|
445
460
|
|
|
446
|
-
|
|
461
|
+
`;
|
|
447
462
|
const model = this.getModel();
|
|
448
463
|
const response = await this.getClient().createChatCompletion({
|
|
449
464
|
model,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/agents/base/base.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AAStC,gDAA2D;AAC3D,uCAIqB;AAErB,8DAAmE;AACnE,2CAAkD;AAClD,iCAAkC;AAQlC,MAAsB,SAAS;IAmCpB;IACA;IAhCD,MAAM,GAAG,aAAa,CAAC;IACvB,mBAAmB,GAAW,CAAC,CAAC;IAC9B,QAAQ,GAAG,QAAQ,CAAC;IACpB,SAAS,GAAW,WAAM,CAAC,MAAM,CAAC,MAAM,CAAC;IACzC,MAAM,GAAyB,IAAI,CAAC;IACpC,gBAAgB,GAAsB,EAAE,CAAC;IACzC,2BAA2B,GAAG,CAAC,CAAC;IAChC,eAAe,GAAG,KAAK,CAAC;IACxB,iBAAiB,GAAG,CAAC,aAAa,CAAC,CAAC;IACpC,YAAY,GAAG,CAAC,CAAC;IACjB,aAAa,GAAG,CAAC,CAAC;IAClB,OAAO,GAAG,EAAiB,CAAC;IAC5B,mBAAmB,GAAG,EAAe,CAAC;IACtC,aAAa,GAAG,EAAE,CAAC;IACnB,SAAS,GAAG,EAAc,CAAC;IAE9B,WAAW,GAAG,IAAI,qBAAY,EAAE,CAAC;IACjC,UAAU,GAAG;QAClB,SAAS,EAAE,YAAY;QACvB,YAAY,EAAE,eAAe;QAC7B,UAAU,EAAE,aAAa;QACzB,QAAQ,EAAE,WAAW;QACrB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,OAAO;QACd,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,SAAS;KACnB,CAAC;IAEF,aAAa,GAAG,EAAE,CAAC;IAEnB,YACS,QAAsB,aAAK,EAC3B,SAAuB,qBAAM;QAD7B,UAAK,GAAL,KAAK,CAAsB;QAC3B,WAAM,GAAN,MAAM,CAAuB;IACnC,CAAC;IAEJ,OAAO;QACL,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;IAC9B,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,mBAAmB,CAAC,KAAwB;QAC1C,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;QAC9B,IAAI,KAAK,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;SAClC;IACH,CAAC;IAED,iBAAiB,CAAC,KAAsB;QACtC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,SAAS;QACP,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,IAAI,CAAC,2BAA2B,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YACpE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC1E,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,WAAW,CAAC,KAAmC;QAC7C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,iBAAO,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;SACxD;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,SAAS,CAAC,MAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,kBAAkB,CAAC,KAAc;QAC/B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,KAAK;aACd,QAAQ,EAAE;aACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,WAAW,CAAC,QAAgB;QAC1B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;IAC5E,CAAC;IAED,UAAU,CAAC,QAAgB;QACzB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE;YACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;SACvE;IACH,CAAC;IAED,kBAAkB,CAAC,IAAY;QAC7B,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;SACtE;IACH,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,cAAc,CAAC,QAAmB;QAChC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC3D,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAED,mBAAmB,CAAC,QAAmB;QACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC;QAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IAChE,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAID,KAAK,CAAC,mBAAmB,CAAC,QAAkB;QAC1C,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5C,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAE5D,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAC7B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,CACnD,CAAC;QAEF,MAAM,cAAc,GAAG,CAAC,GAAQ,EAAE,EAAE;YAClC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gBAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;aACrC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,CAAC;QAEF,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,IAAI,EAAE,CAAC;QAC1E,MAAM,YAAY,GAChB,cAAc,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,IAAI,KAAK,CAAC;QAC5D,MAAM,MAAM,GAAG,YAAY;YACzB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YACrD,CAAC,CAAC,YAAY,CAAC;QAEjB,OAAO,CAAC,GAAG,CACT,oBAAoB,YAAY,aAAa,EAC7C,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAChC,CAAC;QAEF,IAAI,CAAC,cAAc,EAAE;YACnB,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,YAAY,YAAY,2BAA2B,OAAO,EAAE,CAAC;YAC3E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO;gBACL;oBACE,YAAY,EAAE,QAAQ,CAAC,EAAE;oBACzB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,KAAK;iBACf;aACF,CAAC;SACH;QAED,MAAM,gBAAgB,GAAG,MAAM,OAAO,CAAC,OAAO,CAC5C,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAClE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;QAEtC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE;YAC9C,QAAQ;YACR,gBAAgB;SACjB,CAAC,CAAC;QAEH,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,IAAI,YAAY,KAAK,yBAAyB,EAAE;YAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAGlB,CAAC;YAEJ,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;gBACtC,OAAO;oBACL,YAAY,EAAE,QAAQ,CAAC,EAAE,GAAG,GAAG,GAAG,KAAK;oBACvC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;oBAC1C,OAAO,EAAE,cAAc,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM;iBAC3D,CAAC;YACJ,CAAC,CAAC,CAAC;SACJ;QAED,YAAY,GAAG;YACb;gBACE,YAAY,EAAE,QAAQ,CAAC,EAAE;gBACzB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,cAAc,CAAC,gBAAgB,CAAC,IAAI,MAAM;aACpD;SACF,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAE1B,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,WAAW,CAAC,QAAmB;QAC7B,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;YAC9B,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE;gBAChC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;aAC9B;SACF;IACH,CAAC;IAED,kBAAkB,CAAC,SAAiB;QAClC,OAAO,IAAA,8BAAsB,EAAC,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAC/B,OAAO,IAAA,8BAAsB,EAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,mBAAmB,CAAC,QAAmB;QACrC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,GAAG,CAAC;YACJ,OAAO,EACL,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;gBAC3B,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC;gBACpC,CAAC,CAAC,CAAC,CAAC,OAAO;SAChB,CAAC,CAAc,CAAC;IACnB,CAAC;IAED,oBAAoB,CAAC,QAAmB;QACtC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1B,GAAG,CAAC;YACJ,OAAO,EACL,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ;gBAC3B,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC;gBAClC,CAAC,CAAC,CAAC,CAAC,OAAO;SAChB,CAAC,CAAc,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,WAAW;QACf,IAAI;YACF,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,oBAAoB,CAAC;gBAClE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;gBAC/C,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACtB,UAAU,EAAE,CAAC;aACd,CAAC,CAAC;YACH,OAAO,IAAI,CAAC;SACb;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,IAAI,WAAW,GAAG,IAAI,CAAC,mBAAmB,GAAG,EAAE,GAAG,IAAI,EAAE;YACtD,OAAO;SACR;QAED,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtC,OAAO,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,SAAS,EAAE,CAAC;YACjB,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;SACpC;QACD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;IAED,qBAAqB;QACnB,MAAM,qBAAqB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAC3D,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAA,mBAAW,EAAC,CAAC,CAAC,CAAC,CAClD,CAAC;QAEF,IAAI,qBAAqB,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;QAED,OAAO,CAAC,GAAG,CACT,uDAAuD,EACvD,IAAI,CAAC,mBAAmB,EAAE,EAC1B,IAAI,CAAC,iBAAiB,CACvB,CAAC;QAGF,MAAM,WAAW,GAAG,aAAa,CAAC;QAClC,MAAM,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACzE,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAGxE,IAAI,cAAc,IAAI,CAAC,mBAAmB,EAAE;YAC1C,OAAO,CAAC,IAAI,CACV,mEAAmE,CACpE,CAAC;YACF,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC3C,OAAO,KAAK,CAAC;SACd;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa;QACX,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IACtC,CAAC;IAED,OAAO;QACL,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,QAAQ;QACZ,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE;gBAClD,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE;gBAC/C,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAI;QACR,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAEnC,IAAI,CAAC,qBAAqB,CAAC;YACzB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,iEAAiE,IAAI,CAAC,iBAAiB,gDAAgD;SACtI,CAAC,CAAC;IAChB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,SAAiB,EAAE,SAAqB;QACjD,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;YACzC,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;SACvB;QAED,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAEhC,IAAI;YACF,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,IAAI,QAAQ,GAAG,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;YAEvE,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE;gBACnC,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBAC3C,IAAI,CAAC,mBAAmB,GAAG,EAAE,CAAC;aAC/B;YAED,QAAQ,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACnC,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAEnD,MAAM,UAAU,GAAG,CAAC,CAAC;YACrB,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;YACjC,MAAM,iBAAiB,GAAG,KAAK,CAAC;YAEhC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,oBAAoB,CAAC;gBAC3D,KAAK;gBACL,QAAQ;gBACR,KAAK,EAAE,IAAI,CAAC,eAAe,EAAE;gBAC7B,WAAW,EAAE,MAAM;aACpB,CAAC,CAAC;YAEH,IAAI,QAAQ,EAAE,QAAQ,KAAK,SAAS,EAAE;gBACpC,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC;aACtD;YAED,IAAI,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC5C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEzD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACjD,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAC5B,CAAC;YAEF,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACrC,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAE7B,MAAM,SAAS,GAAG,eAAe,CAAC,UAAU,CAAC;gBAC7C,IAAI,eAAe,CAAC,UAAU,EAAE;oBAE9B,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAE/B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;wBAChC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;wBAE9D,QAAQ,CAAC,IAAI,CAAC,GAAI,YAA0B,CAAC,CAAC;wBAE9C,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,EAAE,CACJ,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;4BACvC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAA,mBAAW,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CACvD,CAAC;wBAEF,IAAI,YAAY,EAAE;4BAChB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,IAAI,MAAM,CAAC;4BAC/C,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;4BACrD,OAAO,OAAO,CAAC;yBAChB;qBACF;iBACF;aACF;YAGD,IACE,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;gBAC7B,YAAY,CAAC,OAAO;gBACpB,IAAI,CAAC,eAAe,EACpB;gBACA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBAClE,OAAO,YAAY,CAAC,OAAO,CAAC;aAC7B;YAGD,IAAI,aAAa,EAAE;gBACjB,MAAM,KAAK,GAAG,kBAAkB,IAAI,CAAC,SAAS,CAC5C,IAAI,CAAC,iBAAiB,CACvB,+BAA+B,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBACnD,OAAO,KAAK,CAAC;aACd;YAGD,IAAI,IAAI,CAAC,mBAAmB,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBACrE,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;gBAChD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;gBACvB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBAClE,OAAO,YAAY,CAAC,OAAO,CAAC;aAC7B;YAED,IACE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,GAAG,iBAAiB;gBACpD,QAAQ,CAAC,MAAM,GAAG,EAAE,EACpB;gBACA,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CACT,sBAAsB,EACtB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAChC,SAAS,EACT,iBAAiB,CAClB,CAAC;gBACF,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACvE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;aAC/B;YAED,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;gBAEtE,OAAO,CAAC,GAAG,CACT,0EAA0E,CAC3E,CAAC;gBACF,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,qDAAqD,IAAI,CAAC,iBAAiB,kHAAkH;iBACvM,CAAC,CAAC;aACJ;YAED,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACnC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;SACvC;QAAC,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAChC,IAAI,CAAC,aAAa,EAAE,CAAC;gBACrB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aACxC;YAED,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACjB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;YACvD,OAAO,CAAC,CAAC,OAAO,CAAC;SAClB;IACH,CAAC;IAED,qBAAqB,CAAC,OAAgB;QACpC,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,CAAC;IAED,iBAAiB,CAAC,QAAmB;QACnC,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAmB;QACxC,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,aAAa,CAAC;SAC3B;QAED,MAAM,UAAU,GAAG;;;;;cAKT,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;QAErC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,oBAAoB,CAAC;YAC3D,KAAK;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,UAAU;iBACpB;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE3C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAEtB,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;QACzD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,QAAmB,EACnB,UAAkB,EAClB,QAAgB;QAEhB,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,gBAAgB,GAAG;;;;;;;;;;MAUvB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;;oCAEI,IAAI,CAAC,aAAa,EAAE,CAAC;QAErD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAE9B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,oBAAoB,CAAC;YAC3D,KAAK;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,gBAAgB;iBAC1B;aACF;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAE3C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;QAElC,MAAM,aAAa,GAAG;YACpB;gBACE,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;;UAEP,IAAI,CAAC,aAAa;;;UAGlB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;;;SAG1B;aACF;SACW,CAAC;QACf,MAAM,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC;QAErE,MAAM,WAAW,GAAG;YAClB,GAAG,cAAc;YACjB,GAAG,aAAa;YAChB,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;SAC5B,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACtD,MAAM,gBAAgB,GAAG,CACvB,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;YACrC,GAAG,CACJ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAEb,OAAO,CAAC,GAAG,CACT,0BAA0B,EAC1B,SAAS,EACT,IAAI,EACJ,SAAS,EACT,gBAAgB,GAAG,GAAG,EACtB,mBAAmB,CACpB,CAAC;QAEF,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAhoBD,8BAgoBC"}
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/agents/base/base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export
|
|
2
|
-
export
|
|
1
|
+
export { BaseAgent } from "./base/base";
|
|
2
|
+
export { ConfigAgent } from "./configurable/ConfigAgent";
|
|
3
3
|
export * from "./developer/developer";
|
|
4
4
|
export * from "./patcher/patcher";
|
|
5
5
|
export * from "./researcher/researcher";
|
|
@@ -26,9 +26,11 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
26
26
|
return result;
|
|
27
27
|
};
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.includedTools = exports.tools = void 0;
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
exports.includedTools = exports.tools = exports.ConfigAgent = exports.BaseAgent = void 0;
|
|
30
|
+
var base_1 = require("./base/base");
|
|
31
|
+
Object.defineProperty(exports, "BaseAgent", { enumerable: true, get: function () { return base_1.BaseAgent; } });
|
|
32
|
+
var ConfigAgent_1 = require("./configurable/ConfigAgent");
|
|
33
|
+
Object.defineProperty(exports, "ConfigAgent", { enumerable: true, get: function () { return ConfigAgent_1.ConfigAgent; } });
|
|
32
34
|
__exportStar(require("./developer/developer"), exports);
|
|
33
35
|
__exportStar(require("./patcher/patcher"), exports);
|
|
34
36
|
__exportStar(require("./researcher/researcher"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oCAAwC;AAA/B,iGAAA,SAAS,OAAA;AAClB,0DAAyD;AAAhD,0GAAA,WAAW,OAAA;AACpB,wDAAsC;AACtC,oDAAkC;AAClC,0DAAwC;AAExC,iDAAiC;AACjC,qCAA6C;AAApC,qGAAA,aAAa,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentCall.js","sourceRoot":"","sources":["../../../../src/agents/tools/agentCall.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"agentCall.js","sourceRoot":"","sources":["../../../../src/agents/tools/agentCall.ts"],"names":[],"mappings":";;;AAAA,8DAAqD;AACrD,mDAAgD;AAChD,yCAAyC;AAElC,KAAK,UAAU,SAAS,CAAC,SAAiB,EAAE,SAAiB;IAClE,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAS,GAAE,CAAC;QACjC,MAAM,UAAU,GAAG,MAAM,iBAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,GAAG,SAAS,OAAO,UAAU,EAAE,CAAC;QACnD,qBAAM,CAAC,IAAI,CAAC,aAAa,EAAE;YACzB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,UAAU;YACjB,OAAO;YACP,MAAM;SACP,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAZD,8BAYC"}
|
|
@@ -1 +1,6 @@
|
|
|
1
|
-
export
|
|
1
|
+
export interface ExecCommandOptions {
|
|
2
|
+
timeout?: number;
|
|
3
|
+
killOnTimeout?: boolean;
|
|
4
|
+
waitForCompletion?: boolean;
|
|
5
|
+
}
|
|
6
|
+
export declare const execCommand: (command: string, timeout?: number, killOnTimeout?: boolean, waitForCompletion?: boolean) => Promise<string>;
|
|
@@ -1,16 +1,82 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.execCommand = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
5
|
+
const util_1 = require("util");
|
|
6
|
+
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
7
|
+
const execWithTimeout = async (command, options = {}) => {
|
|
8
|
+
const { timeout, killOnTimeout = false, waitForCompletion = true } = options;
|
|
9
|
+
if (!timeout || waitForCompletion) {
|
|
10
|
+
try {
|
|
11
|
+
const result = await execAsync(command);
|
|
12
|
+
return { ...result, timedOut: false, killed: false };
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
return {
|
|
16
|
+
stdout: error.stdout || "",
|
|
17
|
+
stderr: error.stderr || error.message,
|
|
18
|
+
timedOut: false,
|
|
19
|
+
killed: false
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return new Promise((resolve) => {
|
|
24
|
+
const childProcess = (0, child_process_1.exec)(command, (error, stdout, stderr) => {
|
|
25
|
+
if (error && !error.killed) {
|
|
26
|
+
resolve({ stdout, stderr: stderr || error.message, timedOut: false, killed: false });
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
resolve({ stdout, stderr, timedOut: false, killed: error?.killed || false });
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
const timeoutId = setTimeout(() => {
|
|
33
|
+
if (killOnTimeout) {
|
|
34
|
+
childProcess.kill('SIGTERM');
|
|
35
|
+
setTimeout(() => {
|
|
36
|
+
if (!childProcess.killed) {
|
|
37
|
+
childProcess.kill('SIGKILL');
|
|
38
|
+
}
|
|
39
|
+
}, 5000);
|
|
40
|
+
resolve({
|
|
41
|
+
stdout: "",
|
|
42
|
+
stderr: `Command timed out after ${timeout}ms and was killed`,
|
|
43
|
+
timedOut: true,
|
|
44
|
+
killed: true
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
resolve({
|
|
49
|
+
stdout: "",
|
|
50
|
+
stderr: `Command timed out after ${timeout}ms but is still running in background`,
|
|
51
|
+
timedOut: true,
|
|
52
|
+
killed: false
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}, timeout);
|
|
56
|
+
childProcess.on('exit', () => {
|
|
57
|
+
clearTimeout(timeoutId);
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
};
|
|
61
|
+
const execCommand = async (command, timeout, killOnTimeout, waitForCompletion) => {
|
|
6
62
|
let output = "";
|
|
7
63
|
console.log("execCommand:", command);
|
|
8
|
-
const { stdout, stderr } = await (
|
|
64
|
+
const { stdout, stderr, timedOut, killed } = await execWithTimeout(command, {
|
|
65
|
+
timeout,
|
|
66
|
+
killOnTimeout,
|
|
67
|
+
waitForCompletion,
|
|
68
|
+
});
|
|
9
69
|
if (stderr) {
|
|
10
70
|
output += stderr + "\n";
|
|
11
71
|
}
|
|
12
72
|
output += stdout;
|
|
13
|
-
|
|
73
|
+
if (timedOut) {
|
|
74
|
+
const statusMsg = killed ? " (killed due to timeout)" : " (timed out, still running)";
|
|
75
|
+
console.log(`$ ${command}${statusMsg}:\n${output}`);
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
console.log(`$ ${command}:\n${output}`);
|
|
79
|
+
}
|
|
14
80
|
const fullOutput = output.split("\n");
|
|
15
81
|
const maxLines = 1000;
|
|
16
82
|
const maxCharacters = 40000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execCommand.js","sourceRoot":"","sources":["../../../../src/agents/tools/execCommand.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"execCommand.js","sourceRoot":"","sources":["../../../../src/agents/tools/execCommand.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.expandTokens = exports.expandTokensDefinition = void 0;
|
|
4
|
+
const TokenCompressor_1 = require("../../processors/TokenCompressor");
|
|
5
|
+
exports.expandTokensDefinition = {
|
|
6
|
+
type: "function",
|
|
7
|
+
function: {
|
|
8
|
+
name: "expandTokens",
|
|
9
|
+
description: "Retrieve compressed data that was stored during message processing. Use this when you see a compressed data key in messages.",
|
|
10
|
+
parameters: {
|
|
11
|
+
type: "object",
|
|
12
|
+
positional: true,
|
|
13
|
+
properties: {
|
|
14
|
+
key: {
|
|
15
|
+
type: "string",
|
|
16
|
+
description: "The key of the compressed data to retrieve",
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
required: ["key"],
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
function expandTokens(key) {
|
|
24
|
+
const data = TokenCompressor_1.globalTokenCompressor.retrieveString(key);
|
|
25
|
+
if (!data) {
|
|
26
|
+
return `Error: No data found for key "${key}". Available keys: ${TokenCompressor_1.globalTokenCompressor
|
|
27
|
+
.getStorageKeys()
|
|
28
|
+
.join(", ")}`;
|
|
29
|
+
}
|
|
30
|
+
return data;
|
|
31
|
+
}
|
|
32
|
+
exports.expandTokens = expandTokens;
|
|
33
|
+
//# sourceMappingURL=expandTokens.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expandTokens.js","sourceRoot":"","sources":["../../../../src/agents/tools/expandTokens.ts"],"names":[],"mappings":";;;AACA,sEAAyE;AAE5D,QAAA,sBAAsB,GAAS;IAC1C,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,8HAA8H;QAChI,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACV,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4CAA4C;iBAC1D;aACF;YACD,QAAQ,EAAE,CAAC,KAAK,CAAC;SAClB;KACF;CACF,CAAC;AAEF,SAAgB,YAAY,CAAC,GAAW;IACtC,MAAM,IAAI,GAAG,uCAAqB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAEvD,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,iCAAiC,GAAG,sBAAsB,uCAAqB;aACnF,cAAc,EAAE;aAChB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;KACjB;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAVD,oCAUC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getBigString = exports.getBigStringDefinition = void 0;
|
|
4
|
+
const TokenCompressor_1 = require("../../processors/TokenCompressor");
|
|
5
|
+
exports.getBigStringDefinition = {
|
|
6
|
+
type: "function",
|
|
7
|
+
function: {
|
|
8
|
+
name: "getBigString",
|
|
9
|
+
description: "Retrieve compressed data that was stored during message processing. Use this when you see a compressed data key in messages.",
|
|
10
|
+
parameters: {
|
|
11
|
+
type: "object",
|
|
12
|
+
positional: true,
|
|
13
|
+
properties: {
|
|
14
|
+
key: {
|
|
15
|
+
type: "string",
|
|
16
|
+
description: "The key of the compressed data to retrieve",
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
required: ["key"],
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
function getBigString(key) {
|
|
24
|
+
const data = TokenCompressor_1.globalTokenCompressor.retrieveString(key);
|
|
25
|
+
if (!data) {
|
|
26
|
+
return `Error: No data found for key "${key}". Available keys: ${TokenCompressor_1.globalTokenCompressor
|
|
27
|
+
.getStorageKeys()
|
|
28
|
+
.join(", ")}`;
|
|
29
|
+
}
|
|
30
|
+
return data;
|
|
31
|
+
}
|
|
32
|
+
exports.getBigString = getBigString;
|
|
33
|
+
//# sourceMappingURL=getBigString.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBigString.js","sourceRoot":"","sources":["../../../../src/agents/tools/getBigString.ts"],"names":[],"mappings":";;;AACA,sEAAyE;AAE5D,QAAA,sBAAsB,GAAS;IAC1C,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE;QACR,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,8HAA8H;QAChI,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE;gBACV,GAAG,EAAE;oBACH,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4CAA4C;iBAC1D;aACF;YACD,QAAQ,EAAE,CAAC,KAAK,CAAC;SAClB;KACF;CACF,CAAC;AAEF,SAAgB,YAAY,CAAC,GAAW;IACtC,MAAM,IAAI,GAAG,uCAAqB,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IAEvD,IAAI,CAAC,IAAI,EAAE;QACT,OAAO,iCAAiC,GAAG,sBAAsB,uCAAqB;aACnF,cAAc,EAAE;aAChB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;KACjB;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAVD,oCAUC"}
|