@vinhnt-sdk/core 0.9.6 → 0.9.7
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/dist/fakes/fake-model.d.ts.map +1 -1
- package/dist/fakes/fake-model.js +3 -0
- package/dist/fakes/fake-model.js.map +1 -1
- package/dist/kernel/run-loop.d.ts.map +1 -1
- package/dist/kernel/run-loop.js +90 -6
- package/dist/kernel/run-loop.js.map +1 -1
- package/dist/system-context/prompts/anthropic.d.ts +1 -1
- package/dist/system-context/prompts/anthropic.d.ts.map +1 -1
- package/dist/system-context/prompts/anthropic.js +8 -3
- package/dist/system-context/prompts/anthropic.js.map +1 -1
- package/dist/system-context/prompts/deepseek.d.ts +1 -1
- package/dist/system-context/prompts/deepseek.d.ts.map +1 -1
- package/dist/system-context/prompts/deepseek.js +8 -3
- package/dist/system-context/prompts/deepseek.js.map +1 -1
- package/dist/system-context/prompts/default.d.ts +1 -1
- package/dist/system-context/prompts/default.d.ts.map +1 -1
- package/dist/system-context/prompts/default.js +10 -4
- package/dist/system-context/prompts/default.js.map +1 -1
- package/dist/system-context/prompts/gemini.d.ts +1 -1
- package/dist/system-context/prompts/gemini.d.ts.map +1 -1
- package/dist/system-context/prompts/gemini.js +8 -3
- package/dist/system-context/prompts/gemini.js.map +1 -1
- package/dist/system-context/prompts/openai.d.ts +1 -1
- package/dist/system-context/prompts/openai.d.ts.map +1 -1
- package/dist/system-context/prompts/openai.js +7 -2
- package/dist/system-context/prompts/openai.js.map +1 -1
- package/package.json +13 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fake-model.d.ts","sourceRoot":"","sources":["../../src/fakes/fake-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IAiBnD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAjB3B,QAAQ,CAAC,QAAQ,UAAU;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAA2B;IAClD,QAAQ,CAAC,OAAO,EAAE,YAAY,CAA+B;IAC7D,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAa;IACtD,QAAQ,CAAC,YAAY;;;;;;MAMV;IACX,mFAAmF;IACnF,SAAS,SAAK;IACd,OAAO,CAAC,KAAK,CAAK;gBAGC,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,YAAA;IAG7C,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"fake-model.d.ts","sourceRoot":"","sources":["../../src/fakes/fake-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,iBAAkB,YAAW,aAAa;IAiBnD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IAjB3B,QAAQ,CAAC,QAAQ,UAAU;IAC3B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAA2B;IAClD,QAAQ,CAAC,OAAO,EAAE,YAAY,CAA+B;IAC7D,QAAQ,CAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAa;IACtD,QAAQ,CAAC,YAAY;;;;;;MAMV;IACX,mFAAmF;IACnF,SAAS,SAAK;IACd,OAAO,CAAC,KAAK,CAAK;gBAGC,SAAS,EAAE,aAAa,EAAE,EAC1B,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,YAAA;IAG7C,MAAM,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,aAAa,CAAC,gBAAgB,CAAC;IAgB3F,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAI3B,QAAQ,CAAC,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAgBrF"}
|
package/dist/fakes/fake-model.js
CHANGED
|
@@ -49,6 +49,9 @@ export class FakeModelProvider {
|
|
|
49
49
|
yield { type: "tool_call", id: tc.id, name: tc.name, args: tc.args };
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
|
+
if (response.finishReason) {
|
|
53
|
+
yield { type: "finish", reason: response.finishReason };
|
|
54
|
+
}
|
|
52
55
|
yield { type: "done" };
|
|
53
56
|
}
|
|
54
57
|
countTokens(text) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fake-model.js","sourceRoot":"","sources":["../../src/fakes/fake-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,iBAAiB;IAiBT;IACA;IAjBV,QAAQ,GAAG,MAAM,CAAC;IAClB,KAAK,GAAY,YAAuB,CAAC;IACzC,OAAO,GAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACpD,YAAY,GAAuB,SAAS,CAAC;IAC7C,YAAY,GAAG;QACtB,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,KAAK;KACf,CAAC;IACX,mFAAmF;IACnF,SAAS,GAAG,CAAC,CAAC;IACN,KAAK,GAAG,CAAC,CAAC;IAElB,YACmB,SAA0B,EAC1B,OAAiC;QADjC,cAAS,GAAT,SAAS,CAAiB;QAC1B,YAAO,GAAP,OAAO,CAA0B;IACjD,CAAC;IAEJ,KAAK,CAAC,CAAC,MAAM,CAAC,OAAqB,EAAE,MAAoB;QACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;QACD,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACvB,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACpC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAA+B,EAAE,CAAC;YAClG,CAAC;QACH,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAqB,EAAE,OAAqB;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,0CAA0C;QAC1C,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAkB,CAAC;QACvD,CAAC;QAED,uCAAuC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,sBAAsB,CAAC;QAClE,MAAM,OAAO,GAAG,OAAO;YACrB,CAAC,CAAC,GAAG,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,CAAC,CAAC,GAAG,MAAM,mBAAmB,CAAC;QAEjC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"fake-model.js","sourceRoot":"","sources":["../../src/fakes/fake-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAG7C;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,iBAAiB;IAiBT;IACA;IAjBV,QAAQ,GAAG,MAAM,CAAC;IAClB,KAAK,GAAY,YAAuB,CAAC;IACzC,OAAO,GAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IACpD,YAAY,GAAuB,SAAS,CAAC;IAC7C,YAAY,GAAG;QACtB,SAAS,EAAE,IAAI;QACf,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,KAAK;QACjB,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,KAAK;KACf,CAAC;IACX,mFAAmF;IACnF,SAAS,GAAG,CAAC,CAAC;IACN,KAAK,GAAG,CAAC,CAAC;IAElB,YACmB,SAA0B,EAC1B,OAAiC;QADjC,cAAS,GAAT,SAAS,CAAiB;QAC1B,YAAO,GAAP,OAAO,CAA0B;IACjD,CAAC;IAEJ,KAAK,CAAC,CAAC,MAAM,CAAC,OAAqB,EAAE,MAAoB;QACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YACrB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;QACD,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;YACvB,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACpC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAA+B,EAAE,CAAC;YAClG,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC1B,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC1D,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACzB,CAAC;IAED,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAqB,EAAE,OAAqB;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,0CAA0C;QAC1C,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAkB,CAAC;QACvD,CAAC;QAED,uCAAuC;QACvC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,sBAAsB,CAAC;QAClE,MAAM,OAAO,GAAG,OAAO;YACrB,CAAC,CAAC,GAAG,MAAM,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC/C,CAAC,CAAC,GAAG,MAAM,mBAAmB,CAAC;QAEjC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-loop.d.ts","sourceRoot":"","sources":["../../src/kernel/run-loop.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"run-loop.d.ts","sourceRoot":"","sources":["../../src/kernel/run-loop.ts"],"names":[],"mappings":"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"}
|
package/dist/kernel/run-loop.js
CHANGED
|
@@ -148,6 +148,28 @@ function isContextOverflowError(msg) {
|
|
|
148
148
|
return ((lower.includes("context") || lower.includes("maximum") || lower.includes("too long") || lower.includes("too large")) &&
|
|
149
149
|
(lower.includes("token") || lower.includes("length")));
|
|
150
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* Detect "model claims it created/wrote a file but emitted zero tool calls"
|
|
153
|
+
* with finish_reason=stop (or empty). Bounded repair instead of silently
|
|
154
|
+
* completing with prose only (P0'-1).
|
|
155
|
+
*/
|
|
156
|
+
function detectMissedFileAction(content, finishReason) {
|
|
157
|
+
const fr = (finishReason ?? "").toLowerCase().replace(/_/g, "-");
|
|
158
|
+
// Only consider "natural end" finishes — tool-calls path is handled separately.
|
|
159
|
+
if (fr === "tool-calls" || fr === "tool_use" || fr === "tool-use")
|
|
160
|
+
return false;
|
|
161
|
+
const text = content ?? "";
|
|
162
|
+
if (text.length < 40)
|
|
163
|
+
return false;
|
|
164
|
+
// Vietnamese + English claim patterns for file creation/write.
|
|
165
|
+
const claimRe = /(?:đã\s+(?:tạo|ghi|viết|sửa|cập nhật)|created?|wrote|saved|generated|written)\s+(?:one\s+|a\s+|the\s+)?(?:new\s+)?file/i;
|
|
166
|
+
const hasClaim = claimRe.test(text);
|
|
167
|
+
// Large fenced code block strongly suggests the model meant to write a file.
|
|
168
|
+
const fenced = (text.match(/```[\w-]*\n[\s\S]{80,}?```/g) ?? []).length > 0;
|
|
169
|
+
// Or content looks like a file body (HTML/CSS/JSON/TS module markers) outside pure Q&A.
|
|
170
|
+
const looksLikeFileBody = /<!DOCTYPE|<html|^\s*\{[\s\S]{60,}\}|^export\s+(?:const|function|default)/m.test(text);
|
|
171
|
+
return hasClaim || (fenced && looksLikeFileBody) || (fenced && text.length > 400);
|
|
172
|
+
}
|
|
151
173
|
async function processStep(deps, input) {
|
|
152
174
|
const { runId, ctx, runAbort, sessionId, runModel, runSessionState } = input;
|
|
153
175
|
const stepTimeoutController = new AbortController();
|
|
@@ -191,7 +213,7 @@ async function processStep(deps, input) {
|
|
|
191
213
|
}
|
|
192
214
|
let response;
|
|
193
215
|
try {
|
|
194
|
-
response = await deps.circuitBreaker.call(() => deps.modelCaller.callModelStream(messages, input.step, runId, ctx, stepTimeoutController.signal, deps.currentAgent?.permissions?.maxTokens, input.disableTools), stepTimeoutController.signal);
|
|
216
|
+
response = await deps.circuitBreaker.call(() => deps.modelCaller.callModelStream(messages, input.step, runId, ctx, stepTimeoutController.signal, deps.currentAgent?.permissions?.maxTokens, input.disableTools, input.forceToolChoice ? "required" : undefined), stepTimeoutController.signal);
|
|
195
217
|
}
|
|
196
218
|
catch (err) {
|
|
197
219
|
if (stepTimeoutController.signal.aborted && !runAbort.signal.aborted) {
|
|
@@ -218,7 +240,7 @@ async function processStep(deps, input) {
|
|
|
218
240
|
const compactor = deps.compactor;
|
|
219
241
|
messages = await compactOnOverflow(messages, compactor, input.step, stepTimeoutController.signal, sessionId, deps.addSessionMessage);
|
|
220
242
|
runSessionState?.resetMessages(messages);
|
|
221
|
-
response = await deps.circuitBreaker.call(() => deps.modelCaller.callModelStream(messages, input.step, runId, ctx, stepTimeoutController.signal, deps.currentAgent?.permissions?.maxTokens), stepTimeoutController.signal);
|
|
243
|
+
response = await deps.circuitBreaker.call(() => deps.modelCaller.callModelStream(messages, input.step, runId, ctx, stepTimeoutController.signal, deps.currentAgent?.permissions?.maxTokens, input.disableTools, input.forceToolChoice ? "required" : undefined), stepTimeoutController.signal);
|
|
222
244
|
}
|
|
223
245
|
else {
|
|
224
246
|
throw err;
|
|
@@ -273,11 +295,22 @@ async function processStep(deps, input) {
|
|
|
273
295
|
}
|
|
274
296
|
}
|
|
275
297
|
const toolCalls = response.toolCalls ?? [];
|
|
298
|
+
// P0'-7 Safety: suppress tool execution when finish_reason indicates
|
|
299
|
+
// truncation/filter — half-written args must not run (DeerFlow pattern).
|
|
300
|
+
const safetyFr = (response.finishReason ?? "").toLowerCase().replace(/_/g, "-");
|
|
301
|
+
let suppressedToolCalls = false;
|
|
302
|
+
let effectiveToolCalls = toolCalls;
|
|
303
|
+
if (toolCalls.length > 0 &&
|
|
304
|
+
(safetyFr === "content-filter" || safetyFr === "content_filter" ||
|
|
305
|
+
safetyFr === "length" || safetyFr === "max-tokens" || safetyFr === "max_tokens")) {
|
|
306
|
+
effectiveToolCalls = [];
|
|
307
|
+
suppressedToolCalls = true;
|
|
308
|
+
}
|
|
276
309
|
messages.push({
|
|
277
310
|
role: "assistant",
|
|
278
311
|
content: finalContent,
|
|
279
|
-
...(
|
|
280
|
-
toolCalls:
|
|
312
|
+
...(effectiveToolCalls.length > 0 ? {
|
|
313
|
+
toolCalls: effectiveToolCalls.map((tc) => ({
|
|
281
314
|
id: tc.id,
|
|
282
315
|
name: tc.name,
|
|
283
316
|
args: tc.args,
|
|
@@ -292,7 +325,26 @@ async function processStep(deps, input) {
|
|
|
292
325
|
...(asstModel ? { model: asstModel } : {}),
|
|
293
326
|
...(msgCost !== undefined ? { cost: msgCost } : {}),
|
|
294
327
|
});
|
|
295
|
-
if (
|
|
328
|
+
if (suppressedToolCalls) {
|
|
329
|
+
// Surface to the model as a tool-result style note so it can retry cleanly.
|
|
330
|
+
messages.push({
|
|
331
|
+
role: "user",
|
|
332
|
+
content: `[System] Tool calls were dropped because finish_reason=${response.finishReason} (response truncated or filtered). Partial text was kept. Call tools again with complete arguments if still needed.`,
|
|
333
|
+
});
|
|
334
|
+
return {
|
|
335
|
+
messages,
|
|
336
|
+
step: input.step,
|
|
337
|
+
runId,
|
|
338
|
+
totalInputTokens: input.totalInputTokens,
|
|
339
|
+
totalOutputTokens: input.totalOutputTokens,
|
|
340
|
+
finalOutput: finalContent,
|
|
341
|
+
completed: false,
|
|
342
|
+
toolCallCount: 0,
|
|
343
|
+
lastStepToolOutcomes: [],
|
|
344
|
+
...(validatedOutput !== undefined ? { structuredOutput: validatedOutput } : {}),
|
|
345
|
+
};
|
|
346
|
+
}
|
|
347
|
+
if (effectiveToolCalls.length === 0) {
|
|
296
348
|
// Missed tool-call detection: model said finish_reason=tool_calls but
|
|
297
349
|
// produced zero calls (malformed stream / dropped ids). Inject a repair
|
|
298
350
|
// prompt (bounded) instead of falsely completing the run.
|
|
@@ -322,6 +374,30 @@ async function processStep(deps, input) {
|
|
|
322
374
|
// silently reporting success with no file written.
|
|
323
375
|
throw new KernelError("missed_tool_calls", `finish_reason=tool_calls but no tool calls after ${repairs} repair attempts`);
|
|
324
376
|
}
|
|
377
|
+
// P0'-1 Claim-vs-action: finish_reason=stop but content claims file work
|
|
378
|
+
// and no tools ran — force a repair turn with tool_choice=required.
|
|
379
|
+
const claimRepairs = input.claimRepairAttempts ?? 0;
|
|
380
|
+
if (!input.disableTools &&
|
|
381
|
+
claimRepairs < 2 &&
|
|
382
|
+
detectMissedFileAction(finalContent, response.finishReason)) {
|
|
383
|
+
messages.push({
|
|
384
|
+
role: "user",
|
|
385
|
+
content: `[System] You described creating or modifying a file in your last message, but you did not call write_file/edit_file/apply_patch — nothing was written to disk. Call the appropriate file tool NOW with the actual content. Do not repeat the file body only in chat.`,
|
|
386
|
+
});
|
|
387
|
+
return {
|
|
388
|
+
messages,
|
|
389
|
+
step: input.step,
|
|
390
|
+
runId,
|
|
391
|
+
totalInputTokens: input.totalInputTokens,
|
|
392
|
+
totalOutputTokens: input.totalOutputTokens,
|
|
393
|
+
finalOutput: response.content,
|
|
394
|
+
completed: false,
|
|
395
|
+
toolCallCount: 0,
|
|
396
|
+
lastStepToolOutcomes: [],
|
|
397
|
+
claimRepairAttempts: claimRepairs + 1,
|
|
398
|
+
forceToolChoiceNext: true,
|
|
399
|
+
};
|
|
400
|
+
}
|
|
325
401
|
return {
|
|
326
402
|
messages,
|
|
327
403
|
step: input.step,
|
|
@@ -335,7 +411,7 @@ async function processStep(deps, input) {
|
|
|
335
411
|
...(validatedOutput !== undefined ? { structuredOutput: validatedOutput } : {}),
|
|
336
412
|
};
|
|
337
413
|
}
|
|
338
|
-
const { toolCallCount, selfCorrectTokens, toolResults, handoff } = await deps.stepExecutor.executeToolCalls(
|
|
414
|
+
const { toolCallCount, selfCorrectTokens, toolResults, handoff } = await deps.stepExecutor.executeToolCalls(effectiveToolCalls.map((tc) => ({ toolId: tc.id, toolName: tc.name, args: tc.args })), messages, input.step, runId, ctx, stepTimeoutController, sessionId, runModel);
|
|
339
415
|
// Handle handoff — transfer control to target agent
|
|
340
416
|
if (handoff) {
|
|
341
417
|
const currentAgentId = deps.currentAgent?.id ?? "unknown";
|
|
@@ -437,6 +513,8 @@ export async function runLoop(deps, input) {
|
|
|
437
513
|
let handoffResult;
|
|
438
514
|
let contextEpochActive = false;
|
|
439
515
|
let toolCallRepairAttempts = 0;
|
|
516
|
+
let claimRepairAttempts = 0;
|
|
517
|
+
let forceToolChoiceNext = false;
|
|
440
518
|
// Real system head (identity + agent systemPrompt) sent as a proper `system`
|
|
441
519
|
// message at the head of the conversation instead of being flattened into the
|
|
442
520
|
// user turn (RV-40).
|
|
@@ -610,6 +688,8 @@ export async function runLoop(deps, input) {
|
|
|
610
688
|
totalInputTokens, totalOutputTokens, finalOutput,
|
|
611
689
|
...(onLastStep ? { disableTools: true } : {}),
|
|
612
690
|
toolCallRepairAttempts,
|
|
691
|
+
claimRepairAttempts,
|
|
692
|
+
forceToolChoice: forceToolChoiceNext,
|
|
613
693
|
});
|
|
614
694
|
messages = stepResult.messages;
|
|
615
695
|
totalInputTokens = stepResult.totalInputTokens;
|
|
@@ -618,6 +698,10 @@ export async function runLoop(deps, input) {
|
|
|
618
698
|
if (stepResult.toolCallRepairAttempts !== undefined) {
|
|
619
699
|
toolCallRepairAttempts = stepResult.toolCallRepairAttempts;
|
|
620
700
|
}
|
|
701
|
+
if (stepResult.claimRepairAttempts !== undefined) {
|
|
702
|
+
claimRepairAttempts = stepResult.claimRepairAttempts;
|
|
703
|
+
}
|
|
704
|
+
forceToolChoiceNext = stepResult.forceToolChoiceNext === true;
|
|
621
705
|
if (stepResult.structuredOutput !== undefined) {
|
|
622
706
|
structuredOutput = stepResult.structuredOutput;
|
|
623
707
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-loop.js","sourceRoot":"","sources":["../../src/kernel/run-loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run-loop.js","sourceRoot":"","sources":["../../src/kernel/run-loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const ANTHROPIC_PROMPT = "You are VNT Agent, an interactive
|
|
1
|
+
export declare const ANTHROPIC_PROMPT = "You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.\n\nIMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.\n\n# Tone and style\n- Only use emojis if the user explicitly requests it. Avoid using emojis in all communication unless asked.\n- Keep responses short and direct. Answer the user's question directly, without elaboration, explanation, or details unless asked.\n- Avoid introductions, conclusions, and explanations. One word answers are best when appropriate.\n- Your responses are displayed in a chat/UI interface. Use GitHub-flavored markdown for formatting.\n\n# Professional objectivity\nPrioritize technical accuracy and truthfulness over validating the user's beliefs. Focus on facts and problem-solving, providing direct, objective technical info without any unnecessary superlatives, praise, or emotional validation. Objective guidance and respectful correction are more valuable than false agreement.\n\n# Following conventions\nWhen making changes to files, first understand the file's code conventions. Mimic code style, use existing libraries and utilities, and follow existing patterns.\n- NEVER assume that a given library is available. Check that this codebase already uses the given library first.\n- When editing code, first look at surrounding context (especially imports) to understand frameworks and libraries in use.\n- Always follow security best practices. Never introduce code that exposes secrets or keys.\n\n# Code style\n- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.\n- Prefer editing existing files when a suitable file exists. Create new files when explicitly required or no existing file fits.\n\n# Doing tasks\nWhen performing software engineering tasks:\n1. Search to understand the codebase first.\n2. Implement using available tools.\n3. Verify the solution if possible.\n4. NEVER commit changes unless the user explicitly asks.\n\n# File operations (MANDATORY)\n- To create or modify files you MUST call `write_file`, `edit_file`, or `apply_patch`.\n- NEVER output file contents only in chat as a substitute for calling the tool.\n- If the user asks you to create a file, call the tool even if you also provide a short summary.\n\n# Tool usage policy\n- Prefer search tools over bash for file finding.\n- Batch independent tool calls together.\n- Reference code with `file_path:line_number` pattern.";
|
|
2
2
|
//# sourceMappingURL=anthropic.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/anthropic.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/anthropic.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,8pFAsC4B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const ANTHROPIC_PROMPT = `You are VNT Agent, an interactive
|
|
1
|
+
export const ANTHROPIC_PROMPT = `You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.
|
|
2
2
|
|
|
3
3
|
IMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ IMPORTANT: You must NEVER generate or guess URLs for the user unless you are con
|
|
|
6
6
|
- Only use emojis if the user explicitly requests it. Avoid using emojis in all communication unless asked.
|
|
7
7
|
- Keep responses short and direct. Answer the user's question directly, without elaboration, explanation, or details unless asked.
|
|
8
8
|
- Avoid introductions, conclusions, and explanations. One word answers are best when appropriate.
|
|
9
|
-
- Your responses
|
|
9
|
+
- Your responses are displayed in a chat/UI interface. Use GitHub-flavored markdown for formatting.
|
|
10
10
|
|
|
11
11
|
# Professional objectivity
|
|
12
12
|
Prioritize technical accuracy and truthfulness over validating the user's beliefs. Focus on facts and problem-solving, providing direct, objective technical info without any unnecessary superlatives, praise, or emotional validation. Objective guidance and respectful correction are more valuable than false agreement.
|
|
@@ -19,7 +19,7 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
19
19
|
|
|
20
20
|
# Code style
|
|
21
21
|
- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.
|
|
22
|
-
-
|
|
22
|
+
- Prefer editing existing files when a suitable file exists. Create new files when explicitly required or no existing file fits.
|
|
23
23
|
|
|
24
24
|
# Doing tasks
|
|
25
25
|
When performing software engineering tasks:
|
|
@@ -28,6 +28,11 @@ When performing software engineering tasks:
|
|
|
28
28
|
3. Verify the solution if possible.
|
|
29
29
|
4. NEVER commit changes unless the user explicitly asks.
|
|
30
30
|
|
|
31
|
+
# File operations (MANDATORY)
|
|
32
|
+
- To create or modify files you MUST call \`write_file\`, \`edit_file\`, or \`apply_patch\`.
|
|
33
|
+
- NEVER output file contents only in chat as a substitute for calling the tool.
|
|
34
|
+
- If the user asks you to create a file, call the tool even if you also provide a short summary.
|
|
35
|
+
|
|
31
36
|
# Tool usage policy
|
|
32
37
|
- Prefer search tools over bash for file finding.
|
|
33
38
|
- Batch independent tool calls together.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/system-context/prompts/anthropic.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/system-context/prompts/anthropic.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAsCyB,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const DEEPSEEK_PROMPT = "You are VNT Agent, an interactive
|
|
1
|
+
export declare const DEEPSEEK_PROMPT = "You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.\n\nIMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.\n\n# Tone and style\n- Be concise and direct. DeepSeek models are strong at reasoning \u2014 use this for complex analysis, but keep output focused.\n- Avoid long chains of reasoning in visible output. Use tool calls to verify assumptions rather than speculating.\n- Answer the user's question directly, without elaboration or explanation unless asked.\n- Your output is displayed in a chat/UI interface. Use GitHub-flavored markdown.\n- Only use emojis if the user explicitly requests it.\n\n# Action-oriented reasoning\n- Think step by step internally, but take concrete actions (tool calls) to make progress.\n- When analyzing a problem, use search/read tools to gather facts before proposing solutions.\n- After getting tool results, immediately determine the next action rather than narrating what happened.\n- If you're unsure, use a tool to verify rather than asking the user.\n\n# Following conventions\nWhen making changes to files, first understand the file's code conventions. Mimic code style, use existing libraries and utilities, and follow existing patterns.\n- NEVER assume a given library is available. Check the codebase first.\n- When editing code, look at surrounding context (especially imports) to understand frameworks and libraries in use.\n- Always follow security best practices. Never introduce code that exposes secrets or keys.\n\n# Code style\n- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.\n- Prefer editing existing files when a suitable file exists. Create new files when explicitly required or no existing file fits.\n\n# Doing tasks\n1. Search to understand the codebase first.\n2. Implement using available tools.\n3. Verify the solution if possible.\n4. NEVER commit changes unless the user explicitly asks.\n\n# File operations (MANDATORY)\n- To create or modify files you MUST call `write_file`, `edit_file`, or `apply_patch`.\n- NEVER output file contents only in chat as a substitute for calling the tool.\n- If the user asks you to create a file, call the tool even if you also provide a short summary.\n\n# Tool usage policy\n- Prefer search tools over bash for file finding.\n- Batch independent tool calls together.\n- Reference code with `file_path:line_number` pattern.";
|
|
2
2
|
//# sourceMappingURL=deepseek.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepseek.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/deepseek.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,
|
|
1
|
+
{"version":3,"file":"deepseek.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/deepseek.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,2oFAyC6B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const DEEPSEEK_PROMPT = `You are VNT Agent, an interactive
|
|
1
|
+
export const DEEPSEEK_PROMPT = `You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.
|
|
2
2
|
|
|
3
3
|
IMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ IMPORTANT: You must NEVER generate or guess URLs for the user unless you are con
|
|
|
6
6
|
- Be concise and direct. DeepSeek models are strong at reasoning — use this for complex analysis, but keep output focused.
|
|
7
7
|
- Avoid long chains of reasoning in visible output. Use tool calls to verify assumptions rather than speculating.
|
|
8
8
|
- Answer the user's question directly, without elaboration or explanation unless asked.
|
|
9
|
-
- Your output is displayed
|
|
9
|
+
- Your output is displayed in a chat/UI interface. Use GitHub-flavored markdown.
|
|
10
10
|
- Only use emojis if the user explicitly requests it.
|
|
11
11
|
|
|
12
12
|
# Action-oriented reasoning
|
|
@@ -23,7 +23,7 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
23
23
|
|
|
24
24
|
# Code style
|
|
25
25
|
- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.
|
|
26
|
-
-
|
|
26
|
+
- Prefer editing existing files when a suitable file exists. Create new files when explicitly required or no existing file fits.
|
|
27
27
|
|
|
28
28
|
# Doing tasks
|
|
29
29
|
1. Search to understand the codebase first.
|
|
@@ -31,6 +31,11 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
31
31
|
3. Verify the solution if possible.
|
|
32
32
|
4. NEVER commit changes unless the user explicitly asks.
|
|
33
33
|
|
|
34
|
+
# File operations (MANDATORY)
|
|
35
|
+
- To create or modify files you MUST call \`write_file\`, \`edit_file\`, or \`apply_patch\`.
|
|
36
|
+
- NEVER output file contents only in chat as a substitute for calling the tool.
|
|
37
|
+
- If the user asks you to create a file, call the tool even if you also provide a short summary.
|
|
38
|
+
|
|
34
39
|
# Tool usage policy
|
|
35
40
|
- Prefer search tools over bash for file finding.
|
|
36
41
|
- Batch independent tool calls together.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deepseek.js","sourceRoot":"","sources":["../../../src/system-context/prompts/deepseek.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG
|
|
1
|
+
{"version":3,"file":"deepseek.js","sourceRoot":"","sources":["../../../src/system-context/prompts/deepseek.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAyC0B,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const DEFAULT_PROMPT = "You are VNT Agent, an interactive
|
|
1
|
+
export declare const DEFAULT_PROMPT = "You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.\n\nIMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.\n\n# Tone and style\nYou should be concise, direct, and to the point. Your responses are displayed in a chat/UI interface. Your responses can use GitHub-flavored markdown for formatting.\nOutput text to communicate with the user; all text you output outside of tool use is displayed to the user. Use tools to complete tasks \u2014 especially file operations. Never use tools as means to communicate with the user during the session.\nIf you cannot or will not help the user with something, please offer helpful alternatives if possible, and otherwise keep your response to 1-2 sentences.\nOnly use emojis if the user explicitly requests it. Avoid using emojis in all communication unless asked.\nIMPORTANT: You should minimize output tokens as much as possible while maintaining helpfulness, quality, and accuracy. Only address the specific query or task at hand, avoiding tangential information unless absolutely critical for completing the request.\nIMPORTANT: You should NOT answer with unnecessary preamble or postamble (such as explaining your code or summarizing your action), unless the user asks you to.\nIMPORTANT: Keep your responses short. You MUST answer concisely with fewer than 4 lines (not including tool use or code generation), unless user asks for detail. Answer the user's question directly, without elaboration, explanation, or details. One word answers are best. Avoid introductions, conclusions, and explanations.\n\n# Proactiveness\nYou are allowed to be proactive, but only when the user asks you to do something. You should strive to strike a balance between:\n1. Doing the right thing when asked, including taking actions and follow-up actions\n2. Not surprising the user with actions you take without asking\nFor example, if the user asks you how to approach something, you should do your best to answer their question first, and not immediately jump into taking actions.\n3. Do not add additional code explanation summary unless requested by the user. After working on a file, just stop, rather than providing an explanation of what you did.\n\n# Following conventions\nWhen making changes to files, first understand the file's code conventions. Mimic code style, use existing libraries and utilities, and follow existing patterns.\n- NEVER assume that a given library is available, even if it is well known. Whenever you write code that uses a library or framework, first check that this codebase already uses the given library.\n- When you create a new component, first look at existing components to see how they're written.\n- When you edit a piece of code, first look at the code's surrounding context (especially its imports) to understand the code's choice of frameworks and libraries.\n- Always follow security best practices. Never introduce code that exposes or logs secrets and keys. Never commit secrets or keys to the repository.\n\n# Code style\n- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks you to add them.\n- Prefer editing existing files in the codebase when a suitable file exists. Create new files when explicitly required or when no existing file fits.\n\n# Doing tasks\nWhen performing software engineering tasks:\n1. Use the available search tools to understand the codebase and the user's query.\n2. Implement the solution using all tools available to you.\n3. Verify the solution if possible.\n4. NEVER commit changes unless the user explicitly asks you to.\n\n# File operations (MANDATORY)\n- To create or modify files you MUST call `write_file`, `edit_file`, or `apply_patch` (whichever applies).\n- NEVER output file contents only in chat as a substitute for calling the tool.\n- If the user asks you to create a file, call the tool even if you also provide a short summary.\n- Printing code or config in a message does NOT create a file on disk.\n\n# Tool usage policy\n- When doing file search, prefer to use search tools rather than bash commands.\n- When making multiple tool calls that are independent, batch them together.\n- When referencing specific functions or pieces of code, include the pattern `file_path:line_number` to allow the user to easily navigate to the source code location.";
|
|
2
2
|
//# sourceMappingURL=default.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/default.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/default.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc,4hJA+C8I,CAAC"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
export const DEFAULT_PROMPT = `You are VNT Agent, an interactive
|
|
1
|
+
export const DEFAULT_PROMPT = `You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.
|
|
2
2
|
|
|
3
3
|
IMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.
|
|
4
4
|
|
|
5
5
|
# Tone and style
|
|
6
|
-
You should be concise, direct, and to the point.
|
|
7
|
-
Output text to communicate with the user; all text you output outside of tool use is displayed to the user.
|
|
6
|
+
You should be concise, direct, and to the point. Your responses are displayed in a chat/UI interface. Your responses can use GitHub-flavored markdown for formatting.
|
|
7
|
+
Output text to communicate with the user; all text you output outside of tool use is displayed to the user. Use tools to complete tasks — especially file operations. Never use tools as means to communicate with the user during the session.
|
|
8
8
|
If you cannot or will not help the user with something, please offer helpful alternatives if possible, and otherwise keep your response to 1-2 sentences.
|
|
9
9
|
Only use emojis if the user explicitly requests it. Avoid using emojis in all communication unless asked.
|
|
10
10
|
IMPORTANT: You should minimize output tokens as much as possible while maintaining helpfulness, quality, and accuracy. Only address the specific query or task at hand, avoiding tangential information unless absolutely critical for completing the request.
|
|
@@ -27,7 +27,7 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
27
27
|
|
|
28
28
|
# Code style
|
|
29
29
|
- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks you to add them.
|
|
30
|
-
-
|
|
30
|
+
- Prefer editing existing files in the codebase when a suitable file exists. Create new files when explicitly required or when no existing file fits.
|
|
31
31
|
|
|
32
32
|
# Doing tasks
|
|
33
33
|
When performing software engineering tasks:
|
|
@@ -36,6 +36,12 @@ When performing software engineering tasks:
|
|
|
36
36
|
3. Verify the solution if possible.
|
|
37
37
|
4. NEVER commit changes unless the user explicitly asks you to.
|
|
38
38
|
|
|
39
|
+
# File operations (MANDATORY)
|
|
40
|
+
- To create or modify files you MUST call \`write_file\`, \`edit_file\`, or \`apply_patch\` (whichever applies).
|
|
41
|
+
- NEVER output file contents only in chat as a substitute for calling the tool.
|
|
42
|
+
- If the user asks you to create a file, call the tool even if you also provide a short summary.
|
|
43
|
+
- Printing code or config in a message does NOT create a file on disk.
|
|
44
|
+
|
|
39
45
|
# Tool usage policy
|
|
40
46
|
- When doing file search, prefer to use search tools rather than bash commands.
|
|
41
47
|
- When making multiple tool calls that are independent, batch them together.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/system-context/prompts/default.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG
|
|
1
|
+
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/system-context/prompts/default.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yKA+C2I,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const GEMINI_PROMPT = "You are VNT Agent, an interactive
|
|
1
|
+
export declare const GEMINI_PROMPT = "You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.\n\nIMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.\n\n# Tone and style\n- Be extremely concise and direct. Gemini responses tend to be verbose by default \u2014 actively counter this.\n- Avoid introductions, conclusions, explanations, and summaries unless the user explicitly asks.\n- Answer in as few words as possible. One-word answers are best when appropriate.\n- Your output is displayed in a chat/UI interface. Use GitHub-flavored markdown.\n- Only use emojis if the user explicitly requests it.\n\n# Focus on action\n- Use tools immediately rather than explaining what you plan to do.\n- After running a tool, process the result and take the next step without commentary.\n- If the user asks a question, answer it directly rather than describing your approach.\n- NEVER add a \"summary\" or \"overview\" of what you did unless asked.\n\n# Following conventions\nWhen making changes to files, first understand the file's code conventions. Mimic code style, use existing libraries and utilities, and follow existing patterns.\n- NEVER assume a given library is available. Check the codebase first.\n- When editing code, look at surrounding context (especially imports) to understand frameworks and libraries in use.\n- Always follow security best practices. Never introduce code that exposes secrets or keys.\n\n# Code style\n- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.\n- Prefer editing existing files when a suitable file exists. Create new files when explicitly required or no existing file fits.\n\n# Doing tasks\n1. Search to understand the codebase first.\n2. Implement using available tools.\n3. Verify the solution if possible.\n4. NEVER commit changes unless the user explicitly asks.\n\n# File operations (MANDATORY)\n- To create or modify files you MUST call `write_file`, `edit_file`, or `apply_patch`.\n- NEVER output file contents only in chat as a substitute for calling the tool.\n- If the user asks you to create a file, call the tool even if you also provide a short summary.\n\n# Tool usage policy\n- Prefer search tools over bash for file finding.\n- Batch independent tool calls together.\n- Reference code with `file_path:line_number` pattern.";
|
|
2
2
|
//# sourceMappingURL=gemini.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/gemini.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/gemini.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,6iFAyC+B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const GEMINI_PROMPT = `You are VNT Agent, an interactive
|
|
1
|
+
export const GEMINI_PROMPT = `You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.
|
|
2
2
|
|
|
3
3
|
IMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming. You may use URLs provided by the user in their messages or local files.
|
|
4
4
|
|
|
@@ -6,7 +6,7 @@ IMPORTANT: You must NEVER generate or guess URLs for the user unless you are con
|
|
|
6
6
|
- Be extremely concise and direct. Gemini responses tend to be verbose by default — actively counter this.
|
|
7
7
|
- Avoid introductions, conclusions, explanations, and summaries unless the user explicitly asks.
|
|
8
8
|
- Answer in as few words as possible. One-word answers are best when appropriate.
|
|
9
|
-
- Your output is displayed
|
|
9
|
+
- Your output is displayed in a chat/UI interface. Use GitHub-flavored markdown.
|
|
10
10
|
- Only use emojis if the user explicitly requests it.
|
|
11
11
|
|
|
12
12
|
# Focus on action
|
|
@@ -23,7 +23,7 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
23
23
|
|
|
24
24
|
# Code style
|
|
25
25
|
- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.
|
|
26
|
-
-
|
|
26
|
+
- Prefer editing existing files when a suitable file exists. Create new files when explicitly required or no existing file fits.
|
|
27
27
|
|
|
28
28
|
# Doing tasks
|
|
29
29
|
1. Search to understand the codebase first.
|
|
@@ -31,6 +31,11 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
31
31
|
3. Verify the solution if possible.
|
|
32
32
|
4. NEVER commit changes unless the user explicitly asks.
|
|
33
33
|
|
|
34
|
+
# File operations (MANDATORY)
|
|
35
|
+
- To create or modify files you MUST call \`write_file\`, \`edit_file\`, or \`apply_patch\`.
|
|
36
|
+
- NEVER output file contents only in chat as a substitute for calling the tool.
|
|
37
|
+
- If the user asks you to create a file, call the tool even if you also provide a short summary.
|
|
38
|
+
|
|
34
39
|
# Tool usage policy
|
|
35
40
|
- Prefer search tools over bash for file finding.
|
|
36
41
|
- Batch independent tool calls together.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/system-context/prompts/gemini.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG
|
|
1
|
+
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/system-context/prompts/gemini.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAyC4B,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const OPENAI_PROMPT = "You are VNT Agent, an interactive
|
|
1
|
+
export declare const OPENAI_PROMPT = "You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. You should keep going until the user's query is completely resolved, before ending your turn.\n\nYour thinking should be thorough and so it's fine if it's very long. However, avoid unnecessary repetition and verbosity. You should be concise, but thorough.\n\nYou MUST iterate and keep going until the problem is solved. You have everything you need to resolve this problem. Fully solve it autonomously.\n\nOnly terminate your turn when you are sure that the problem is solved. Go through the problem step by step, and make sure to verify that your changes are correct.\n\nIMPORTANT: You must NEVER generate or guess URLs for the user unless you are confident that the URLs are for helping the user with programming.\n\n# Following conventions\nWhen making changes to files, first understand the file's code conventions. Mimic code style, use existing libraries and utilities, and follow existing patterns.\n- NEVER assume that a given library is available. Check that this codebase already uses it first.\n- When editing code, look at surrounding context (especially imports) to understand frameworks and libraries in use.\n- Always follow security best practices.\n\n# Code style\n- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.\n- Prefer editing existing files when a suitable file exists. Create new files when explicitly required.\n\n# Doing tasks\n1. Search to understand the codebase first.\n2. Implement using available tools.\n3. Verify the solution.\n4. NEVER commit changes unless the user explicitly asks.\n\n# File operations (MANDATORY)\n- To create or modify files you MUST call `write_file`, `edit_file`, or `apply_patch`.\n- NEVER output file contents only in chat as a substitute for calling the tool.\n- If the user asks you to create a file, call the tool even if you also provide a short summary.\n\n# Tool usage policy\n- Prefer search tools over bash for file finding.\n- Batch independent tool calls together.\n- Reference code with `file_path:line_number` pattern.";
|
|
2
2
|
//# sourceMappingURL=openai.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/openai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"openai.d.ts","sourceRoot":"","sources":["../../../src/system-context/prompts/openai.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,6nEAkC+B,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export const OPENAI_PROMPT = `You are VNT Agent, an interactive
|
|
1
|
+
export const OPENAI_PROMPT = `You are VNT Agent, an interactive coding assistant in a chat/UI interface that helps users with software engineering tasks. You should keep going until the user's query is completely resolved, before ending your turn.
|
|
2
2
|
|
|
3
3
|
Your thinking should be thorough and so it's fine if it's very long. However, avoid unnecessary repetition and verbosity. You should be concise, but thorough.
|
|
4
4
|
|
|
@@ -16,7 +16,7 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
16
16
|
|
|
17
17
|
# Code style
|
|
18
18
|
- DO NOT ADD comments to code unless the original code already has extensive comments or the user asks.
|
|
19
|
-
-
|
|
19
|
+
- Prefer editing existing files when a suitable file exists. Create new files when explicitly required.
|
|
20
20
|
|
|
21
21
|
# Doing tasks
|
|
22
22
|
1. Search to understand the codebase first.
|
|
@@ -24,6 +24,11 @@ When making changes to files, first understand the file's code conventions. Mimi
|
|
|
24
24
|
3. Verify the solution.
|
|
25
25
|
4. NEVER commit changes unless the user explicitly asks.
|
|
26
26
|
|
|
27
|
+
# File operations (MANDATORY)
|
|
28
|
+
- To create or modify files you MUST call \`write_file\`, \`edit_file\`, or \`apply_patch\`.
|
|
29
|
+
- NEVER output file contents only in chat as a substitute for calling the tool.
|
|
30
|
+
- If the user asks you to create a file, call the tool even if you also provide a short summary.
|
|
31
|
+
|
|
27
32
|
# Tool usage policy
|
|
28
33
|
- Prefer search tools over bash for file finding.
|
|
29
34
|
- Batch independent tool calls together.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/system-context/prompts/openai.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG
|
|
1
|
+
{"version":3,"file":"openai.js","sourceRoot":"","sources":["../../../src/system-context/prompts/openai.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yDAkC4B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vinhnt-sdk/core",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.7",
|
|
4
4
|
"description": "Core agent engine for VNT Agent - kernel, tools, sessions, plugins, permissions, and knowledge",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -53,18 +53,18 @@
|
|
|
53
53
|
"prepublishOnly": "pnpm build"
|
|
54
54
|
},
|
|
55
55
|
"dependencies": {
|
|
56
|
-
"@vinhnt-sdk/event": "
|
|
57
|
-
"@vinhnt-sdk/guard": "
|
|
58
|
-
"@vinhnt-sdk/guardrails": "
|
|
59
|
-
"@vinhnt-sdk/knowledge": "
|
|
60
|
-
"@vinhnt-sdk/llm": "
|
|
61
|
-
"@vinhnt-sdk/permission": "
|
|
62
|
-
"@vinhnt-sdk/sandbox": "
|
|
63
|
-
"@vinhnt-sdk/schema": "
|
|
64
|
-
"@vinhnt-sdk/session": "
|
|
65
|
-
"@vinhnt-sdk/step-executor": "
|
|
66
|
-
"@vinhnt-sdk/tools": "
|
|
67
|
-
"@vinhnt-sdk/workflow": "
|
|
56
|
+
"@vinhnt-sdk/event": "workspace:*",
|
|
57
|
+
"@vinhnt-sdk/guard": "workspace:*",
|
|
58
|
+
"@vinhnt-sdk/guardrails": "workspace:*",
|
|
59
|
+
"@vinhnt-sdk/knowledge": "workspace:*",
|
|
60
|
+
"@vinhnt-sdk/llm": "workspace:*",
|
|
61
|
+
"@vinhnt-sdk/permission": "workspace:*",
|
|
62
|
+
"@vinhnt-sdk/sandbox": "workspace:*",
|
|
63
|
+
"@vinhnt-sdk/schema": "workspace:*",
|
|
64
|
+
"@vinhnt-sdk/session": "workspace:*",
|
|
65
|
+
"@vinhnt-sdk/step-executor": "workspace:*",
|
|
66
|
+
"@vinhnt-sdk/tools": "workspace:*",
|
|
67
|
+
"@vinhnt-sdk/workflow": "workspace:*",
|
|
68
68
|
"zod": "^4.4.3"
|
|
69
69
|
}
|
|
70
70
|
}
|