repoburg 1.3.10 → 1.3.11
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/backend/dist/src/llm-orchestration/action-handlers/action-handler.interface.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/apply-diff.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/apply-diff.handler.js +35 -0
- package/backend/dist/src/llm-orchestration/action-handlers/apply-diff.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.js +48 -0
- package/backend/dist/src/llm-orchestration/action-handlers/create-file.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.js +21 -0
- package/backend/dist/src/llm-orchestration/action-handlers/delete-file.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/dto/howto.args.dto.d.ts +2 -0
- package/backend/dist/src/llm-orchestration/action-handlers/dto/howto.args.dto.js +7 -0
- package/backend/dist/src/llm-orchestration/action-handlers/dto/howto.args.dto.js.map +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.js +55 -0
- package/backend/dist/src/llm-orchestration/action-handlers/edit-file.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/final.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/final.handler.js +20 -0
- package/backend/dist/src/llm-orchestration/action-handlers/final.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/howto.handler.d.ts +9 -0
- package/backend/dist/src/llm-orchestration/action-handlers/howto.handler.js +85 -0
- package/backend/dist/src/llm-orchestration/action-handlers/howto.handler.js.map +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.js +21 -0
- package/backend/dist/src/llm-orchestration/action-handlers/new-session.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/patch.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/patch.handler.js +105 -0
- package/backend/dist/src/llm-orchestration/action-handlers/patch.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/quick-edit.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/quick-edit.handler.js +53 -0
- package/backend/dist/src/llm-orchestration/action-handlers/quick-edit.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.js +30 -0
- package/backend/dist/src/llm-orchestration/action-handlers/request-context.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js +45 -0
- package/backend/dist/src/llm-orchestration/action-handlers/run-command.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.d.ts +1 -0
- package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.js +29 -0
- package/backend/dist/src/llm-orchestration/action-handlers/use-mcp-tool.handler.js.map +1 -1
- package/backend/dist/src/llm-orchestration/llm-orchestration.module.js +4 -2
- package/backend/dist/src/llm-orchestration/llm-orchestration.module.js.map +1 -1
- package/backend/dist/src/seeding/data/custom-snippets/eta-for.d.ts +4 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-for.js +8 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-for.js.map +1 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-if.d.ts +4 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-if.js +8 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-if.js.map +1 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-ifelse.d.ts +4 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-ifelse.js +8 -0
- package/backend/dist/src/seeding/data/custom-snippets/eta-ifelse.js.map +1 -0
- package/backend/dist/src/seeding/data/custom-snippets/it-mcp.d.ts +4 -0
- package/backend/dist/src/seeding/data/custom-snippets/it-mcp.js +8 -0
- package/backend/dist/src/seeding/data/custom-snippets/it-mcp.js.map +1 -0
- package/backend/dist/src/seeding/data/custom-snippets/it-tools.d.ts +4 -0
- package/backend/dist/src/seeding/data/custom-snippets/it-tools.js +8 -0
- package/backend/dist/src/seeding/data/custom-snippets/it-tools.js.map +1 -0
- package/backend/dist/src/seeding/data/system-prompts/default_master-agent.d.ts +1 -1
- package/backend/dist/src/seeding/data/system-prompts/default_master-agent.js +1 -1
- package/backend/dist/src/seeding/data/system-prompts/experimental_eta_master-agent.d.ts +2 -0
- package/backend/dist/src/seeding/data/system-prompts/experimental_eta_master-agent.js +62 -0
- package/backend/dist/src/seeding/data/system-prompts/experimental_eta_master-agent.js.map +1 -0
- package/backend/dist/src/system-prompts/dto/system-prompt.dto.d.ts +6 -0
- package/backend/dist/src/system-prompts/dto/system-prompt.dto.js +12 -1
- package/backend/dist/src/system-prompts/dto/system-prompt.dto.js.map +1 -1
- package/backend/dist/src/system-prompts/system-prompts.controller.d.ts +3 -1
- package/backend/dist/src/system-prompts/system-prompts.controller.js +20 -0
- package/backend/dist/src/system-prompts/system-prompts.controller.js.map +1 -1
- package/backend/dist/src/system-prompts/system-prompts.module.js +11 -1
- package/backend/dist/src/system-prompts/system-prompts.module.js.map +1 -1
- package/backend/dist/src/system-prompts/system-prompts.service.d.ts +11 -3
- package/backend/dist/src/system-prompts/system-prompts.service.js +39 -12
- package/backend/dist/src/system-prompts/system-prompts.service.js.map +1 -1
- package/backend/dist/src/utils/ai-format-generator.d.ts +1 -0
- package/backend/dist/src/utils/ai-format-generator.js +23 -0
- package/backend/dist/src/utils/ai-format-generator.js.map +1 -0
- package/backend/dist/src/utils/index.d.ts +1 -0
- package/backend/dist/src/utils/index.js +1 -0
- package/backend/dist/src/utils/index.js.map +1 -1
- package/backend/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -17,6 +17,7 @@ const class_validator_1 = require("class-validator");
|
|
|
17
17
|
const handler_validation_error_1 = require("../errors/handler-validation.error");
|
|
18
18
|
const patch_args_dto_1 = require("./dto/patch.args.dto");
|
|
19
19
|
const tokenpatch_1 = require("../../../packages/tokenpatch");
|
|
20
|
+
const utils_1 = require("../../utils");
|
|
20
21
|
const grammarMap = {
|
|
21
22
|
'.js': 'tree-sitter-javascript.wasm',
|
|
22
23
|
'.jsx': 'tree-sitter-javascript.wasm',
|
|
@@ -50,6 +51,110 @@ let PatchHandler = PatchHandler_1 = class PatchHandler {
|
|
|
50
51
|
return prodPath;
|
|
51
52
|
})();
|
|
52
53
|
}
|
|
54
|
+
getDefinition() {
|
|
55
|
+
const goodAnchorExample = (0, utils_1.generateToolCall)({
|
|
56
|
+
tool_name: this.toolName,
|
|
57
|
+
file_path: 'src/services/config.ts',
|
|
58
|
+
patch_code: `\`\`\`typescript
|
|
59
|
+
const config = {
|
|
60
|
+
port: 9000,
|
|
61
|
+
host: 'localhost',
|
|
62
|
+
protocol: 'https'
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
function connect() {
|
|
66
|
+
\`\`\``,
|
|
67
|
+
});
|
|
68
|
+
const badAnchorExample = (0, utils_1.generateToolCall)({
|
|
69
|
+
tool_name: this.toolName,
|
|
70
|
+
file_path: 'src/services/config.ts',
|
|
71
|
+
patch_code: `\`\`\`typescript
|
|
72
|
+
const config = {
|
|
73
|
+
port: 9000,
|
|
74
|
+
host: 'localhost',
|
|
75
|
+
protocol: 'https'
|
|
76
|
+
};
|
|
77
|
+
\`\`\``,
|
|
78
|
+
});
|
|
79
|
+
const appendExample = (0, utils_1.generateToolCall)({
|
|
80
|
+
tool_name: this.toolName,
|
|
81
|
+
file_path: 'src/utils/math.ts',
|
|
82
|
+
patch_code: `\`\`\`typescript
|
|
83
|
+
export { calculate };
|
|
84
|
+
export { sum };
|
|
85
|
+
// @end-of-file
|
|
86
|
+
\`\`\``,
|
|
87
|
+
});
|
|
88
|
+
const prependExample = (0, utils_1.generateToolCall)({
|
|
89
|
+
tool_name: this.toolName,
|
|
90
|
+
file_path: 'src/main.ts',
|
|
91
|
+
patch_code: `\`\`\`typescript
|
|
92
|
+
// @begin-of-file
|
|
93
|
+
import fs from 'fs';
|
|
94
|
+
import { ModuleA } from './moduleA';
|
|
95
|
+
\`\`\``,
|
|
96
|
+
});
|
|
97
|
+
const definition = `
|
|
98
|
+
<${this.toolName}>
|
|
99
|
+
Applies an intelligent, context-aware patch to a code file. This is the most robust and preferred method for modifying code.
|
|
100
|
+
|
|
101
|
+
The algorithm works by treating your 'patch_code' as a snippet of the file's **final desired state**. It finds a unique location in the original file that matches the prefix and suffix of your snippet and replaces the content between them.
|
|
102
|
+
|
|
103
|
+
**CRITICAL RULES:**
|
|
104
|
+
1. **The 'patch_code' is a literal replacement**: The entire content of your 'patch_code' will replace the section of the original file that it matches. It is not a diff or a partial change.
|
|
105
|
+
2. **Provide valid, parsable code**: The snippet in 'patch_code' must be syntactically correct. Do not provide incomplete lines or half-finished code blocks, as the parser will fail.
|
|
106
|
+
3. **Include unique anchors**: Your 'patch_code' MUST include enough surrounding, unchanged context (a few lines before and after your change) to serve as a unique anchor. If the context is not unique, the patch will fail.
|
|
107
|
+
|
|
108
|
+
Special Markers for Edge Cases:
|
|
109
|
+
- To add code to the very beginning of a file, start 'patch_code' with: \`// @begin-of-file\`
|
|
110
|
+
- To add code to the very end of a file, end 'patch_code' with: \`// @end-of-file\`
|
|
111
|
+
|
|
112
|
+
Parameters:
|
|
113
|
+
- "file_path": (string) The relative path to the file to be patched.
|
|
114
|
+
- "patch_code": (string) A code snippet containing your changes, with enough surrounding context to serve as a unique anchor.
|
|
115
|
+
|
|
116
|
+
<example_good_anchoring>
|
|
117
|
+
Explanation: This example shows how to correctly modify the first 'config' object in a file that has two similar objects. Notice the 'patch_code' includes the 'function connect()' line below the changes. This provides a unique "suffix anchor" to ensure the correct 'config' object is targeted.
|
|
118
|
+
|
|
119
|
+
Original File Content:
|
|
120
|
+
\`\`\`typescript
|
|
121
|
+
const config = {
|
|
122
|
+
port: 8080,
|
|
123
|
+
host: 'localhost',
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
function connect() {
|
|
127
|
+
// uses config
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
const config2 = {
|
|
131
|
+
port: 3000,
|
|
132
|
+
host: 'remote',
|
|
133
|
+
};
|
|
134
|
+
\`\`\`
|
|
135
|
+
|
|
136
|
+
${goodAnchorExample}
|
|
137
|
+
</example_good_anchoring>
|
|
138
|
+
|
|
139
|
+
<example_bad_anchoring>
|
|
140
|
+
Explanation: This is a **bad example**. The 'patch_code' does not include the unique 'function connect()' suffix. If the file contains another object that looks similar, the patcher won't know which one to modify and the patch will likely fail for being ambiguous.
|
|
141
|
+
|
|
142
|
+
${badAnchorExample}
|
|
143
|
+
</example_bad_anchoring>
|
|
144
|
+
|
|
145
|
+
<example_append>
|
|
146
|
+
Explanation: Use the '// @end-of-file' marker to add content to the end of a file.
|
|
147
|
+
${appendExample}
|
|
148
|
+
</example_append>
|
|
149
|
+
|
|
150
|
+
<example_prepend>
|
|
151
|
+
Explanation: Use the '// @begin-of-file' marker to add content to the beginning of a file.
|
|
152
|
+
${prependExample}
|
|
153
|
+
</example_prepend>
|
|
154
|
+
</${this.toolName}>
|
|
155
|
+
`;
|
|
156
|
+
return definition.trim();
|
|
157
|
+
}
|
|
53
158
|
resolveAndValidatePath(unsafePath) {
|
|
54
159
|
const normalizedPath = path.normalize(unsafePath);
|
|
55
160
|
if (path.isAbsolute(normalizedPath)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"patch.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/patch.handler.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAyE;AACzE,kCAAkC;AAClC,2BAAgC;AAChC,6BAA6B;AAC7B,yDAAiD;AACjD,qDAA2C;AAM3C,iFAA4E;AAC5E,yDAAoD;AACpD,6DAAiE;
|
|
1
|
+
{"version":3,"file":"patch.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/patch.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,12 +15,65 @@ const class_transformer_1 = require("class-transformer");
|
|
|
15
15
|
const class_validator_1 = require("class-validator");
|
|
16
16
|
const handler_validation_error_1 = require("../errors/handler-validation.error");
|
|
17
17
|
const quick_edit_args_dto_1 = require("./dto/quick-edit.args.dto");
|
|
18
|
+
const utils_1 = require("../../utils");
|
|
18
19
|
let QuickEditHandler = QuickEditHandler_1 = class QuickEditHandler {
|
|
19
20
|
constructor() {
|
|
20
21
|
this.toolName = 'quick_edit';
|
|
21
22
|
this.logger = new common_1.Logger(QuickEditHandler_1.name);
|
|
22
23
|
this.projectRoot = process.env.REPOBURG_PROJECT_PATH || process.cwd();
|
|
23
24
|
}
|
|
25
|
+
getDefinition() {
|
|
26
|
+
const insertAfterExample = (0, utils_1.generateToolCall)({
|
|
27
|
+
tool_name: this.toolName,
|
|
28
|
+
file_path: 'src/components/Header.tsx',
|
|
29
|
+
action: 'insert_after',
|
|
30
|
+
search_block: `import React from 'react';`,
|
|
31
|
+
new_content: `import { useTheme } from '@emotion/react';`,
|
|
32
|
+
});
|
|
33
|
+
const replaceExample = (0, utils_1.generateToolCall)({
|
|
34
|
+
tool_name: this.toolName,
|
|
35
|
+
file_path: 'src/config.ts',
|
|
36
|
+
action: 'replace',
|
|
37
|
+
search_block: `export const API_TIMEOUT = 5000;`,
|
|
38
|
+
new_content: `export const API_TIMEOUT = 10000; // Increased timeout`,
|
|
39
|
+
});
|
|
40
|
+
const deleteExample = (0, utils_1.generateToolCall)({
|
|
41
|
+
tool_name: this.toolName,
|
|
42
|
+
file_path: 'src/utils/legacy.js',
|
|
43
|
+
action: 'delete_block',
|
|
44
|
+
search_block: `
|
|
45
|
+
function oldUnusedFunction() {
|
|
46
|
+
return 'hello';
|
|
47
|
+
}
|
|
48
|
+
`.trim(),
|
|
49
|
+
});
|
|
50
|
+
const definition = `
|
|
51
|
+
<${this.toolName}>
|
|
52
|
+
Makes small, targeted changes to a file by finding a unique block of text and inserting, replacing, or deleting it.
|
|
53
|
+
The 'search_block' must be an **exact, character-for-character match** and must be **unique** within the file.
|
|
54
|
+
If the block is not found or is not unique, the tool will fail.
|
|
55
|
+
|
|
56
|
+
Parameters:
|
|
57
|
+
- "file_path": (string) The relative path to the file to be modified.
|
|
58
|
+
- "action": (enum) The operation to perform. Allowed values: 'insert_after', 'insert_before', 'replace', 'delete_block'.
|
|
59
|
+
- "search_block": (string) A unique and exact block of code to locate the position for the edit.
|
|
60
|
+
- "new_content": (string, optional) The new code to be added. Required for 'insert_after', 'insert_before', and 'replace'.
|
|
61
|
+
|
|
62
|
+
<example_insert>
|
|
63
|
+
${insertAfterExample}
|
|
64
|
+
</example_insert>
|
|
65
|
+
|
|
66
|
+
<example_replace>
|
|
67
|
+
${replaceExample}
|
|
68
|
+
</example_replace>
|
|
69
|
+
|
|
70
|
+
<example_delete>
|
|
71
|
+
${deleteExample}
|
|
72
|
+
</example_delete>
|
|
73
|
+
</${this.toolName}>
|
|
74
|
+
`;
|
|
75
|
+
return definition.trim();
|
|
76
|
+
}
|
|
24
77
|
resolveAndValidatePath(unsafePath) {
|
|
25
78
|
const normalizedPath = path.normalize(unsafePath);
|
|
26
79
|
if (path.isAbsolute(normalizedPath)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quick-edit.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/quick-edit.handler.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAKwB;AACxB,kCAAkC;AAClC,6BAA6B;AAC7B,yDAAiD;AACjD,qDAA2C;AAM3C,iFAA4E;AAC5E,mEAA6D;
|
|
1
|
+
{"version":3,"file":"quick-edit.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/quick-edit.handler.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAKwB;AACxB,kCAAkC;AAClC,6BAA6B;AAC7B,yDAAiD;AACjD,qDAA2C;AAM3C,iFAA4E;AAC5E,mEAA6D;AAC7D,uCAA+C;AAGxC,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAAtB;QACI,aAAQ,GAAG,YAAY,CAAC;QAChB,WAAM,GAAG,IAAI,eAAM,CAAC,kBAAgB,CAAC,IAAI,CAAC,CAAC;QAC3C,gBAAW,GAC1B,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IA8LvD,CAAC;IA5LC,aAAa;QACX,MAAM,kBAAkB,GAAG,IAAA,wBAAgB,EAAC;YAC1C,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,SAAS,EAAE,2BAA2B;YACtC,MAAM,EAAE,cAAc;YACtB,YAAY,EAAE,4BAA4B;YAC1C,WAAW,EAAE,4CAA4C;SAC1D,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,IAAA,wBAAgB,EAAC;YACtC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,SAAS,EAAE,eAAe;YAC1B,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,kCAAkC;YAChD,WAAW,EAAE,wDAAwD;SACtE,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,IAAA,wBAAgB,EAAC;YACrC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,SAAS,EAAE,qBAAqB;YAChC,MAAM,EAAE,cAAc;YACtB,YAAY,EAAE;;;;OAIb,CAAC,IAAI,EAAE;SACT,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG;GACpB,IAAI,CAAC,QAAQ;;;;;;;;;;;;MAYV,kBAAkB;;;;MAIlB,cAAc;;;;MAId,aAAa;;IAEf,IAAI,CAAC,QAAQ;CAChB,CAAC;QACE,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAEO,sBAAsB,CAAC,UAAkB;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAClD,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,4BAAmB,CAC3B,mCAAmC,UAAU,EAAE,CAChD,CAAC;QACJ,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,4BAAmB,CAC3B,kCAAkC,UAAU,EAAE,CAC/C,CAAC;QACJ,CAAC;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,WAAW,CACjB,QAAgB,EAChB,MAAqD,EACrD,WAAmB;QAEnB,IAAI,UAAkB,CAAC;QACvB,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,WAAW;gBACd,UAAU,GAAG,sCAAsC,CAAC;gBACpD,MAAM;YACR,KAAK,YAAY;gBACf,UAAU;oBACR,oEAAoE,CAAC;gBACvE,MAAM;YACR,KAAK,gBAAgB;gBACnB,UAAU,GAAG,wCAAwC,CAAC;gBACtD,MAAM;QACV,CAAC;QACD,OAAO,aAAa,QAAQ,kCAAkC,UAAU,gDAAgD,WAAW,8FAA8F,CAAC;IACpO,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAA4B,EAC5B,OAA6B;QAE7B,MAAM,aAAa,GAAG,IAAA,gCAAY,EAAC,sCAAgB,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,IAAI,iDAAsB,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QAExD,MAAM,eAAe,GAAG,MAAM,EAAE;aAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;aAC1B,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,KAAK,CAAC;QACd,CAAC,CAAC,CAAC;QAEL,IAAI,eAAe,KAAK,IAAI,EAAE,CAAC;YAC7B,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CACnC,SAAS,EACT,gBAAgB,EAChB,YAAY,CACb,CAAC;YACF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACrC,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,kBAAkB,SAAS,2BAA2B;gBAC/D,aAAa,EAAE,YAAY;gBAC3B,cAAc,EAAE,aAAa;aAC9B,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAElD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC;YAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YACvE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBACrC,SAAS,EAAE,IAAI,CAAC,QAAQ;gBACxB,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,kBAAkB,SAAS,iCAAiC,MAAM,IAAI;gBAC/E,aAAa,EAAE,YAAY;gBAC3B,cAAc,EAAE,aAAa;aAC9B,CAAC;QACJ,CAAC;QAED,IAAI,cAAsB,CAAC;QAC3B,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC;QAE9B,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,SAAS;gBACZ,cAAc,GAAG,GAAG,MAAM,GAAG,WAAW,GAAG,KAAK,EAAE,CAAC;gBACnD,MAAM;YACR,KAAK,cAAc;gBACjB,cAAc,GAAG,GAAG,MAAM,GAAG,YAAY,KAAK,WAAW,GAAG,KAAK,EAAE,CAAC;gBACpE,MAAM;YACR,KAAK,eAAe;gBAClB,cAAc,GAAG,GAAG,MAAM,GAAG,WAAW,KAAK,YAAY,GAAG,KAAK,EAAE,CAAC;gBACpE,MAAM;YACR,KAAK,cAAc;gBACjB,cAAc,GAAG,GAAG,MAAM,GAAG,KAAK,EAAE,CAAC;gBACrC,MAAM;QACV,CAAC;QAED,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACrD,OAAO;gBACL,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,SAAS,SAAS,0CAA0C;gBACrE,cAAc,EAAE,EAAE,GAAG,aAAa,EAAE,OAAO,EAAE,cAAc,EAAE;gBAC7D,2BAA2B,EAAE,eAAe;aAC7C,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0CAA0C,SAAS,KAAK,KAAK,CAAC,OAAO,EAAE,CACxE,CAAC;YACF,MAAM,IAAI,qCAA4B,CACpC,8BAA8B,SAAS,MAAM,KAAK,CAAC,OAAO,EAAE,CAC7D,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAlMY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;GACA,gBAAgB,CAkM5B"}
|
|
@@ -2,6 +2,7 @@ import { ActionHandler } from './action-handler.interface';
|
|
|
2
2
|
import { ActionExecutionResult, PlanExecutionContext } from '../llm-orchestration.interfaces';
|
|
3
3
|
export declare class RequestContextHandler implements ActionHandler {
|
|
4
4
|
readonly toolName = "request_context";
|
|
5
|
+
getDefinition(): string;
|
|
5
6
|
execute(args: {
|
|
6
7
|
[key: string]: any;
|
|
7
8
|
}, context: PlanExecutionContext): Promise<ActionExecutionResult>;
|
|
@@ -12,10 +12,40 @@ const request_context_args_dto_1 = require("./dto/request-context.args.dto");
|
|
|
12
12
|
const class_transformer_1 = require("class-transformer");
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
const handler_validation_error_1 = require("../errors/handler-validation.error");
|
|
15
|
+
const utils_1 = require("../../utils");
|
|
15
16
|
let RequestContextHandler = class RequestContextHandler {
|
|
16
17
|
constructor() {
|
|
17
18
|
this.toolName = 'request_context';
|
|
18
19
|
}
|
|
20
|
+
getDefinition() {
|
|
21
|
+
const filesExample = (0, utils_1.generateToolCall)({
|
|
22
|
+
tool_name: this.toolName,
|
|
23
|
+
files: 'src/App.tsx,src/theme/ThemeProvider.tsx,src/store/session.slice.ts,src/lib/api/client.ts',
|
|
24
|
+
});
|
|
25
|
+
const foldersExample = (0, utils_1.generateToolCall)({
|
|
26
|
+
tool_name: this.toolName,
|
|
27
|
+
folders: 'src/components/common,src/hooks',
|
|
28
|
+
});
|
|
29
|
+
const definition = `
|
|
30
|
+
<${this.toolName}>
|
|
31
|
+
Requests the content of files or entire folders to build context before making changes.
|
|
32
|
+
This is a crucial exploration tool. It is efficient to request many files at once.
|
|
33
|
+
|
|
34
|
+
Parameters:
|
|
35
|
+
- "files": (string, optional) A comma-separated list of relative file paths to read.
|
|
36
|
+
- "folders": (string, optional) A comma-separated list of relative folder paths to read.
|
|
37
|
+
|
|
38
|
+
<example>
|
|
39
|
+
${filesExample}
|
|
40
|
+
</example>
|
|
41
|
+
|
|
42
|
+
<example>
|
|
43
|
+
${foldersExample}
|
|
44
|
+
</example>
|
|
45
|
+
</${this.toolName}>
|
|
46
|
+
`;
|
|
47
|
+
return definition.trim();
|
|
48
|
+
}
|
|
19
49
|
async execute(args, context) {
|
|
20
50
|
const validatedArgs = (0, class_transformer_1.plainToClass)(request_context_args_dto_1.RequestContextArgsDto, args);
|
|
21
51
|
const errors = await (0, class_validator_1.validate)(validatedArgs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-context.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/request-context.handler.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAM5C,6EAAuE;AACvE,yDAAiD;AACjD,qDAA2C;AAC3C,iFAA4E;
|
|
1
|
+
{"version":3,"file":"request-context.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/request-context.handler.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;AAM5C,6EAAuE;AACvE,yDAAiD;AACjD,qDAA2C;AAC3C,iFAA4E;AAC5E,uCAA+C;AAGxC,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IAA3B;QACI,aAAQ,GAAG,iBAAiB,CAAC;IAkExC,CAAC;IAhEC,aAAa;QACX,MAAM,YAAY,GAAG,IAAA,wBAAgB,EAAC;YACpC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,KAAK,EACH,0FAA0F;SAC7F,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,IAAA,wBAAgB,EAAC;YACtC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,OAAO,EAAE,iCAAiC;SAC3C,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG;GACpB,IAAI,CAAC,QAAQ;;;;;;;;;EASd,YAAY;;;;EAIZ,cAAc;;IAEZ,IAAI,CAAC,QAAQ;CAChB,CAAC;QACE,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAA4B,EAC5B,OAA6B;QAE7B,MAAM,aAAa,GAAG,IAAA,gCAAY,EAAC,gDAAqB,EAAE,IAAI,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,IAAI,iDAAsB,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,aAAa,CAAC;QAEzC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC;QACjC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,mBAAmB,CAAC;QAChD,OAAO,CAAC,cAAc,GAAG;YACvB,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE;gBACJ,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;gBACzD,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;aAChE;SACF,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,0CAA0C;YACnD,cAAc,EAAE,aAAa;SAC9B,CAAC;IACJ,CAAC;CACF,CAAA;AAnEY,sDAAqB;gCAArB,qBAAqB;IADjC,IAAA,mBAAU,GAAE;GACA,qBAAqB,CAmEjC"}
|
|
@@ -4,6 +4,7 @@ export declare class RunCommandHandler implements ActionHandler {
|
|
|
4
4
|
readonly toolName = "run_command";
|
|
5
5
|
private readonly logger;
|
|
6
6
|
private readonly projectRoot;
|
|
7
|
+
getDefinition(): string;
|
|
7
8
|
execute(args: {
|
|
8
9
|
[key: string]: any;
|
|
9
10
|
}, context: PlanExecutionContext): Promise<ActionExecutionResult>;
|
|
@@ -15,6 +15,7 @@ const run_command_args_dto_1 = require("./dto/run-command.args.dto");
|
|
|
15
15
|
const class_transformer_1 = require("class-transformer");
|
|
16
16
|
const class_validator_1 = require("class-validator");
|
|
17
17
|
const handler_validation_error_1 = require("../errors/handler-validation.error");
|
|
18
|
+
const utils_1 = require("../../utils");
|
|
18
19
|
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
19
20
|
let RunCommandHandler = RunCommandHandler_1 = class RunCommandHandler {
|
|
20
21
|
constructor() {
|
|
@@ -22,6 +23,50 @@ let RunCommandHandler = RunCommandHandler_1 = class RunCommandHandler {
|
|
|
22
23
|
this.logger = new common_1.Logger(RunCommandHandler_1.name);
|
|
23
24
|
this.projectRoot = process.env.REPOBURG_PROJECT_PATH || process.cwd();
|
|
24
25
|
}
|
|
26
|
+
getDefinition() {
|
|
27
|
+
const treeExample = (0, utils_1.generateToolCall)({
|
|
28
|
+
tool_name: this.toolName,
|
|
29
|
+
command_string: 'tree -L 2 src',
|
|
30
|
+
});
|
|
31
|
+
const rgExample1 = (0, utils_1.generateToolCall)({
|
|
32
|
+
tool_name: this.toolName,
|
|
33
|
+
command_string: 'rg "TODO|FIXME" .',
|
|
34
|
+
});
|
|
35
|
+
const rgExample2 = (0, utils_1.generateToolCall)({
|
|
36
|
+
tool_name: this.toolName,
|
|
37
|
+
command_string: 'rg "function App" .',
|
|
38
|
+
});
|
|
39
|
+
const rgExample3 = (0, utils_1.generateToolCall)({
|
|
40
|
+
tool_name: this.toolName,
|
|
41
|
+
command_string: `rg --files-with-matches "from '../utils'" .`,
|
|
42
|
+
});
|
|
43
|
+
const definition = `
|
|
44
|
+
<${this.toolName}>
|
|
45
|
+
Executes a shell command in the root of the project.
|
|
46
|
+
Used for exploration and gathering information (e.g., 'tree -L 2', 'rg "pattern" .').
|
|
47
|
+
|
|
48
|
+
Parameters:
|
|
49
|
+
- "command_string": (string) The shell command to execute.
|
|
50
|
+
|
|
51
|
+
<example>
|
|
52
|
+
${treeExample}
|
|
53
|
+
</example>
|
|
54
|
+
|
|
55
|
+
<example>
|
|
56
|
+
${rgExample1}
|
|
57
|
+
</example>
|
|
58
|
+
|
|
59
|
+
<example>
|
|
60
|
+
${rgExample2}
|
|
61
|
+
</example>
|
|
62
|
+
|
|
63
|
+
<example>
|
|
64
|
+
${rgExample3}
|
|
65
|
+
</example>
|
|
66
|
+
</${this.toolName}>
|
|
67
|
+
`;
|
|
68
|
+
return definition.trim();
|
|
69
|
+
}
|
|
25
70
|
async execute(args, context) {
|
|
26
71
|
const validatedArgs = (0, class_transformer_1.plainToClass)(run_command_args_dto_1.RunCommandArgsDto, args);
|
|
27
72
|
const errors = await (0, class_validator_1.validate)(validatedArgs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-command.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/run-command.handler.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoD;AAMpD,iDAAqC;AACrC,+BAAiC;AACjC,qEAA+D;AAC/D,yDAAiD;AACjD,qDAA2C;AAC3C,iFAA4E;
|
|
1
|
+
{"version":3,"file":"run-command.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/run-command.handler.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAoD;AAMpD,iDAAqC;AACrC,+BAAiC;AACjC,qEAA+D;AAC/D,yDAAiD;AACjD,qDAA2C;AAC3C,iFAA4E;AAC5E,uCAA+C;AAE/C,MAAM,SAAS,GAAG,IAAA,gBAAS,EAAC,oBAAI,CAAC,CAAC;AAG3B,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAAvB;QACI,aAAQ,GAAG,aAAa,CAAC;QACjB,WAAM,GAAG,IAAI,eAAM,CAAC,mBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5C,gBAAW,GAC1B,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAsGvD,CAAC;IApGC,aAAa;QACX,MAAM,WAAW,GAAG,IAAA,wBAAgB,EAAC;YACnC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,cAAc,EAAE,eAAe;SAChC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAA,wBAAgB,EAAC;YAClC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,cAAc,EAAE,mBAAmB;SACpC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAA,wBAAgB,EAAC;YAClC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,cAAc,EAAE,qBAAqB;SACtC,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAA,wBAAgB,EAAC;YAClC,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,cAAc,EAAE,6CAA6C;SAC9D,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG;GACpB,IAAI,CAAC,QAAQ;;;;;;;;EAQd,WAAW;;;;EAIX,UAAU;;;;EAIV,UAAU;;;;EAIV,UAAU;;IAER,IAAI,CAAC,QAAQ;CAChB,CAAC;QACE,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAA4B,EAC5B,OAA6B;QAE7B,MAAM,aAAa,GAAG,IAAA,gCAAY,EAAC,wCAAiB,EAAE,IAAI,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,IAAI,iDAAsB,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC;QACzC,IAAI,aAAqB,CAAC;QAC1B,IAAI,OAAe,CAAC;QACpB,IAAI,MAAM,GAA0B,SAAS,CAAC;QAC9C,IAAI,YAAgC,CAAC;QAErC,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,SAAS,CAAC,cAAc,EAAE;gBACzD,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,SAAS,EAAE,GAAG,GAAG,IAAI,GAAG,IAAI;gBAC5B,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YACH,aAAa,GAAG,MAAM,IAAI,MAAM,IAAI,8BAA8B,CAAC;YACnE,OAAO,GAAG,YAAY,cAAc,aAAa,CAAC;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,KAAY,CAAC;YAC/B,aAAa,GAAG,mBAAmB,SAAS,CAAC,OAAO,gBAClD,SAAS,CAAC,MAAM,IAAI,KACtB,gBAAgB,SAAS,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;YAC5C,OAAO,GAAG,YAAY,cAAc,WAAW,CAAC;YAChD,MAAM,GAAG,SAAS,CAAC;YACnB,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,4BAA4B,aAAa,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC5B,OAAO,EAAE,cAAc;YACvB,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM;YACN,OAAO,EAAE,GAAG,OAAO,mBAAmB;YACtC,cAAc,EAAE,EAAE,cAAc,EAAE;YAClC,aAAa,EAAE,YAAY;YAC3B,aAAa,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE;SACtE,CAAC;IACJ,CAAC;CACF,CAAA;AA1GY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;GACA,iBAAiB,CA0G7B"}
|
|
@@ -6,6 +6,7 @@ export declare class UseMcpToolHandler implements ActionHandler {
|
|
|
6
6
|
readonly toolName = "use_mcp_tool";
|
|
7
7
|
private readonly logger;
|
|
8
8
|
constructor(mcpService: McpService);
|
|
9
|
+
getDefinition(): string;
|
|
9
10
|
execute(args: {
|
|
10
11
|
[key: string]: any;
|
|
11
12
|
}, context: PlanExecutionContext): Promise<ActionExecutionResult>;
|
|
@@ -17,12 +17,41 @@ const use_mcp_tool_args_dto_1 = require("./dto/use-mcp-tool.args.dto");
|
|
|
17
17
|
const class_transformer_1 = require("class-transformer");
|
|
18
18
|
const class_validator_1 = require("class-validator");
|
|
19
19
|
const handler_validation_error_1 = require("../errors/handler-validation.error");
|
|
20
|
+
const utils_1 = require("../../utils");
|
|
20
21
|
let UseMcpToolHandler = UseMcpToolHandler_1 = class UseMcpToolHandler {
|
|
21
22
|
constructor(mcpService) {
|
|
22
23
|
this.mcpService = mcpService;
|
|
23
24
|
this.toolName = 'use_mcp_tool';
|
|
24
25
|
this.logger = new common_1.Logger(UseMcpToolHandler_1.name);
|
|
25
26
|
}
|
|
27
|
+
getDefinition() {
|
|
28
|
+
const exampleArgs = `{
|
|
29
|
+
"verbose": true
|
|
30
|
+
}`;
|
|
31
|
+
const example = (0, utils_1.generateToolCall)({
|
|
32
|
+
tool_name: this.toolName,
|
|
33
|
+
server_name: 'chrome-devtools',
|
|
34
|
+
mcp_tool_name: 'take_snapshot',
|
|
35
|
+
arguments: exampleArgs,
|
|
36
|
+
});
|
|
37
|
+
const definition = `
|
|
38
|
+
<${this.toolName}>
|
|
39
|
+
Executes a tool from a connected Model Context Protocol (MCP) server.
|
|
40
|
+
This enables interaction with external services like linters, browsers, etc.
|
|
41
|
+
The available servers and tools are injected dynamically into the prompt.
|
|
42
|
+
|
|
43
|
+
Parameters:
|
|
44
|
+
- "server_name": (string) The name of the MCP server providing the tool.
|
|
45
|
+
- "mcp_tool_name": (string) The name of the tool to execute on that server.
|
|
46
|
+
- "arguments": (string) A JSON string containing the tool's input parameters, following the tool's specific schema.
|
|
47
|
+
|
|
48
|
+
<example>
|
|
49
|
+
${example}
|
|
50
|
+
</example>
|
|
51
|
+
</${this.toolName}>
|
|
52
|
+
`;
|
|
53
|
+
return definition.trim();
|
|
54
|
+
}
|
|
26
55
|
async execute(args, context) {
|
|
27
56
|
const validatedArgs = (0, class_transformer_1.plainToClass)(use_mcp_tool_args_dto_1.UseMcpToolArgsDto, args);
|
|
28
57
|
const errors = await (0, class_validator_1.validate)(validatedArgs);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-mcp-tool.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/use-mcp-tool.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AAMpD,uDAAmD;AACnD,uEAAgE;AAChE,yDAAiD;AACjD,qDAA2C;AAC3C,iFAA4E;
|
|
1
|
+
{"version":3,"file":"use-mcp-tool.handler.js","sourceRoot":"","sources":["../../../../src/llm-orchestration/action-handlers/use-mcp-tool.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,2CAAoD;AAMpD,uDAAmD;AACnD,uEAAgE;AAChE,yDAAiD;AACjD,qDAA2C;AAC3C,iFAA4E;AAC5E,uCAA+C;AAGxC,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAI5B,YAA6B,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;QAH1C,aAAQ,GAAG,cAAc,CAAC;QAClB,WAAM,GAAG,IAAI,eAAM,CAAC,mBAAiB,CAAC,IAAI,CAAC,CAAC;IAEP,CAAC;IAEvD,aAAa;QACX,MAAM,WAAW,GAAG;;EAEtB,CAAC;QACC,MAAM,OAAO,GAAG,IAAA,wBAAgB,EAAC;YAC/B,SAAS,EAAE,IAAI,CAAC,QAAQ;YACxB,WAAW,EAAE,iBAAiB;YAC9B,aAAa,EAAE,eAAe;YAC9B,SAAS,EAAE,WAAW;SACvB,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG;GACpB,IAAI,CAAC,QAAQ;;;;;;;;;;;EAWd,OAAO;;IAEL,IAAI,CAAC,QAAQ;CAChB,CAAC;QACE,OAAO,UAAU,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,OAAO,CACX,IAA4B,EAC5B,OAA6B;QAE7B,MAAM,aAAa,GAAG,IAAA,gCAAY,EAAC,yCAAiB,EAAE,IAAI,CAAC,CAAC;QAC5D,MAAM,MAAM,GAAG,MAAM,IAAA,0BAAQ,EAAC,aAAa,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,aAAa,GAAG,MAAM;iBACzB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC7D,IAAI,CAAC,IAAI,CAAC,CAAC;YACd,MAAM,IAAI,iDAAsB,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC;QAED,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,aAAa,CAAC;QAC3E,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,cAAc,CAC7D,WAAW,EACX,aAAa,EACb,SAAS,CACV,CAAC;QAEF,MAAM,aAAa,GAAG,MAAM,IAAI,MAAM,IAAI,2BAA2B,CAAC;QACtE,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;YAC7B,SAAS,EAAE,GAAG,WAAW,IAAI,aAAa,EAAE;YAC5C,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QAEH,OAAO;YACL,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,aAAa,WAAW,IAAI,aAAa,8BAA8B;YAChF,cAAc,EAAE;gBACd,WAAW;gBACX,SAAS,EAAE,aAAa;gBACxB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;aACrC;YACD,aAAa,EAAE;gBACb,MAAM,EAAE,aAAa;aACtB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA3EY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;qCAK8B,wBAAU;GAJxC,iBAAiB,CA2E7B"}
|
|
@@ -35,6 +35,7 @@ const quick_edit_handler_1 = require("./action-handlers/quick-edit.handler");
|
|
|
35
35
|
const invalid_tool_feedback_hook_1 = require("./hooks/invalid-tool-feedback.hook");
|
|
36
36
|
const patch_handler_1 = require("./action-handlers/patch.handler");
|
|
37
37
|
const apply_diff_handler_1 = require("./action-handlers/apply-diff.handler");
|
|
38
|
+
const howto_handler_1 = require("./action-handlers/howto.handler");
|
|
38
39
|
const actionHandlers = [
|
|
39
40
|
create_file_handler_1.CreateFileHandler,
|
|
40
41
|
edit_file_handler_1.EditFileHandler,
|
|
@@ -47,6 +48,7 @@ const actionHandlers = [
|
|
|
47
48
|
request_context_handler_1.RequestContextHandler,
|
|
48
49
|
new_session_handler_1.NewSessionHandler,
|
|
49
50
|
final_handler_1.FinalHandler,
|
|
51
|
+
howto_handler_1.HowtoHandler,
|
|
50
52
|
];
|
|
51
53
|
const postExecutionHooks = [
|
|
52
54
|
invalid_tool_feedback_hook_1.InvalidToolFeedbackHook,
|
|
@@ -65,7 +67,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
65
67
|
(0, common_1.forwardRef)(() => chat_module_1.InteractiveChatModule),
|
|
66
68
|
(0, common_1.forwardRef)(() => session_inputs_module_1.SessionInputsModule),
|
|
67
69
|
events_module_1.EventsModule,
|
|
68
|
-
system_prompts_module_1.SystemPromptsModule,
|
|
70
|
+
(0, common_1.forwardRef)(() => system_prompts_module_1.SystemPromptsModule),
|
|
69
71
|
sessions_module_1.SessionsModule,
|
|
70
72
|
mcp_module_1.McpModule,
|
|
71
73
|
execution_logs_module_1.ExecutionLogsModule,
|
|
@@ -90,7 +92,7 @@ exports.LlmOrchestrationModule = LlmOrchestrationModule = __decorate([
|
|
|
90
92
|
inject: postExecutionHooks,
|
|
91
93
|
},
|
|
92
94
|
],
|
|
93
|
-
exports: [llm_turn_processor_service_1.LlmTurnProcessorService],
|
|
95
|
+
exports: [llm_turn_processor_service_1.LlmTurnProcessorService, 'ACTION_HANDLER_REGISTRY'],
|
|
94
96
|
})
|
|
95
97
|
], LlmOrchestrationModule);
|
|
96
98
|
//# sourceMappingURL=llm-orchestration.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-orchestration.module.js","sourceRoot":"","sources":["../../../src/llm-orchestration/llm-orchestration.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,6CAAgD;AAChD,oDAA0D;AAC1D,kFAA4E;AAC5E,6EAAuE;AACvE,yFAAkF;AAClF,yFAAkF;AAClF,4FAAuF;AACvF,iEAAwE;AACxE,mFAA8E;AAC9E,2DAAuD;AACvD,mFAA8E;AAC9E,iEAA6D;AAC7D,+EAA0E;AAC1E,iFAA2E;AAC3E,uFAAkF;AAClF,+EAA0E;AAC1E,mEAA+D;AAC/D,kDAA8C;AAE9C,mFAA8E;AAC9E,+EAA0E;AAC1E,2EAAsE;AACtE,+EAA0E;AAC1E,mFAA8E;AAC9E,6EAAwE;AACxE,mFAA6E;AAC7E,mEAA+D;AAC/D,6EAAwE;
|
|
1
|
+
{"version":3,"file":"llm-orchestration.module.js","sourceRoot":"","sources":["../../../src/llm-orchestration/llm-orchestration.module.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAAoD;AACpD,6CAAgD;AAChD,oDAA0D;AAC1D,kFAA4E;AAC5E,6EAAuE;AACvE,yFAAkF;AAClF,yFAAkF;AAClF,4FAAuF;AACvF,iEAAwE;AACxE,mFAA8E;AAC9E,2DAAuD;AACvD,mFAA8E;AAC9E,iEAA6D;AAC7D,+EAA0E;AAC1E,iFAA2E;AAC3E,uFAAkF;AAClF,+EAA0E;AAC1E,mEAA+D;AAC/D,kDAA8C;AAE9C,mFAA8E;AAC9E,+EAA0E;AAC1E,2EAAsE;AACtE,+EAA0E;AAC1E,mFAA8E;AAC9E,6EAAwE;AACxE,mFAA6E;AAC7E,mEAA+D;AAC/D,6EAAwE;AACxE,mEAA+D;AAG/D,MAAM,cAAc,GAAG;IACrB,uCAAiB;IACjB,mCAAe;IACf,uCAAiB;IACjB,qCAAgB;IAChB,qCAAgB;IAChB,4BAAY;IACZ,uCAAiB;IACjB,wCAAiB;IACjB,+CAAqB;IACrB,uCAAiB;IACjB,4BAAY;IACZ,4BAAY;CACb,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACzB,oDAAuB;IACvB,yDAAyB;IACzB,yDAAyB;IACzB,qDAAwB;CACzB,CAAC;AAqCK,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;CAAG,CAAA;AAAzB,wDAAsB;iCAAtB,sBAAsB;IAlClC,IAAA,eAAM,EAAC;QACN,OAAO,EAAE;YACP,uBAAa,CAAC,UAAU,CAAC,CAAC,wBAAQ,EAAE,4BAAY,CAAC,CAAC;YAClD,iDAAsB;YACtB,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,mCAAqB,CAAC;YACvC,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;YACrC,4BAAY;YACZ,IAAA,mBAAU,EAAC,GAAG,EAAE,CAAC,2CAAmB,CAAC;YACrC,gCAAc;YACd,sBAAS;YACT,2CAAmB;SACpB;QACD,SAAS,EAAE;YACT,kDAAsB;YACtB,oDAAuB;YACvB,GAAG,cAAc;YACjB,GAAG,kBAAkB;YACrB;gBACE,OAAO,EAAE,yBAAyB;gBAClC,UAAU,EAAE,CAAC,GAAG,QAAyB,EAAE,EAAE;oBAC3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAyB,CAAC;oBAClD,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;oBACvE,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBACD,MAAM,EAAE,cAAc;aACvB;YACD;gBACE,OAAO,EAAE,sBAAsB;gBAC/B,UAAU,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,CAAC,KAAK;gBAC/B,MAAM,EAAE,kBAAkB;aAC3B;SACF;QACD,OAAO,EAAE,CAAC,oDAAuB,EAAE,yBAAyB,CAAC;KAC9D,CAAC;GACW,sBAAsB,CAAG"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scope = exports.description = exports.body = exports.prefix = void 0;
|
|
4
|
+
exports.prefix = 'for';
|
|
5
|
+
exports.body = '<% for (const ${1:item} of ${2:array}) { %>\n\t$0\n<% } %>';
|
|
6
|
+
exports.description = 'Inserts a "for...of" loop for ETA templates.';
|
|
7
|
+
exports.scope = 'eta,markdown';
|
|
8
|
+
//# sourceMappingURL=eta-for.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eta-for.js","sourceRoot":"","sources":["../../../../../src/seeding/data/custom-snippets/eta-for.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,KAAK,CAAC;AACf,QAAA,IAAI,GACf,4DAA4D,CAAC;AAClD,QAAA,WAAW,GAAG,8CAA8C,CAAC;AAC7D,QAAA,KAAK,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scope = exports.description = exports.body = exports.prefix = void 0;
|
|
4
|
+
exports.prefix = 'if';
|
|
5
|
+
exports.body = '<% if (${1:condition}) { %>\n\t$0\n<% } %>';
|
|
6
|
+
exports.description = 'Inserts an "if" block for ETA templates.';
|
|
7
|
+
exports.scope = 'eta,markdown';
|
|
8
|
+
//# sourceMappingURL=eta-if.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eta-if.js","sourceRoot":"","sources":["../../../../../src/seeding/data/custom-snippets/eta-if.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,IAAI,CAAC;AACd,QAAA,IAAI,GAAG,4CAA4C,CAAC;AACpD,QAAA,WAAW,GAAG,0CAA0C,CAAC;AACzD,QAAA,KAAK,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scope = exports.description = exports.body = exports.prefix = void 0;
|
|
4
|
+
exports.prefix = 'ifelse';
|
|
5
|
+
exports.body = '<% if (${1:condition}) { %>\n\t$2\n<% } else { %>\n\t$0\n<% } %>';
|
|
6
|
+
exports.description = 'Inserts an "if-else" block for ETA templates.';
|
|
7
|
+
exports.scope = 'eta,markdown';
|
|
8
|
+
//# sourceMappingURL=eta-ifelse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eta-ifelse.js","sourceRoot":"","sources":["../../../../../src/seeding/data/custom-snippets/eta-ifelse.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,IAAI,GACf,kEAAkE,CAAC;AACxD,QAAA,WAAW,GAAG,+CAA+C,CAAC;AAC9D,QAAA,KAAK,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scope = exports.description = exports.body = exports.prefix = void 0;
|
|
4
|
+
exports.prefix = 'itmcp';
|
|
5
|
+
exports.body = '<%~ it.mcpServers %>';
|
|
6
|
+
exports.description = 'Inserts the placeholder for MCP server definitions.';
|
|
7
|
+
exports.scope = 'eta,markdown';
|
|
8
|
+
//# sourceMappingURL=it-mcp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"it-mcp.js","sourceRoot":"","sources":["../../../../../src/seeding/data/custom-snippets/it-mcp.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,OAAO,CAAC;AACjB,QAAA,IAAI,GAAG,sBAAsB,CAAC;AAC9B,QAAA,WAAW,GACtB,qDAAqD,CAAC;AAC3C,QAAA,KAAK,GAAG,cAAc,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scope = exports.description = exports.body = exports.prefix = void 0;
|
|
4
|
+
exports.prefix = 'ittool';
|
|
5
|
+
exports.body = '<%~ it.tools.${1:tool_name} %>';
|
|
6
|
+
exports.description = 'Inserts a Repoburg tool call.';
|
|
7
|
+
exports.scope = 'eta,markdown';
|
|
8
|
+
//# sourceMappingURL=it-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"it-tools.js","sourceRoot":"","sources":["../../../../../src/seeding/data/custom-snippets/it-tools.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG,QAAQ,CAAC;AAClB,QAAA,IAAI,GAAG,gCAAgC,CAAC;AACxC,QAAA,WAAW,GAAG,+BAA+B,CAAC;AAC9C,QAAA,KAAK,GAAG,cAAc,CAAC"}
|