koneck 2.96.0 → 2.98.0
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/capability-claims.d.ts +24 -1
- package/dist/capability-claims.d.ts.map +1 -1
- package/dist/capability-claims.js +36 -5
- package/dist/capability-claims.js.map +1 -1
- package/dist/context-limit.d.ts.map +1 -1
- package/dist/context-limit.js +15 -0
- package/dist/context-limit.js.map +1 -1
- package/dist/engine.d.ts +23 -1
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +186 -21
- package/dist/engine.js.map +1 -1
- package/dist/identity.d.ts +16 -4
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +20 -6
- package/dist/identity.js.map +1 -1
- package/dist/lean-mode.d.ts.map +1 -1
- package/dist/lean-mode.js +8 -3
- package/dist/lean-mode.js.map +1 -1
- package/dist/tools.d.ts +19 -4
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +90 -17
- package/dist/tools.js.map +1 -1
- package/package.json +1 -1
|
@@ -58,6 +58,29 @@ export declare function capabilityCorrection(denied: readonly Capability[]): str
|
|
|
58
58
|
* Named as KONECK's own note, the way the identity answer is, because it is a fact about this
|
|
59
59
|
* program rather than the model's view of itself — and because somebody who has just been told the
|
|
60
60
|
* agent cannot browse needs to know which of the two to believe.
|
|
61
|
+
*
|
|
62
|
+
* ## It does not claim an outcome it does not have
|
|
63
|
+
*
|
|
64
|
+
* The first version ended "KONECK has told it otherwise and asked again", written before the retry
|
|
65
|
+
* had happened. On a machine whose window was truncating the prompt the retry came back empty, so
|
|
66
|
+
* what the reader got was a claim that something had been asked again, no second answer, and a
|
|
67
|
+
* finished run — reported as "koneck says they asked again, but nothing is running at all". Which
|
|
68
|
+
* was fair: the sentence described an intention as though it were a result.
|
|
69
|
+
*
|
|
70
|
+
* So the wording follows what is actually known at the point it is said, and the outcome is
|
|
71
|
+
* reported separately when there is one.
|
|
72
|
+
*/
|
|
73
|
+
export declare function capabilityNotice(denied: readonly Capability[], model: string, opts?: {
|
|
74
|
+
retrying: boolean;
|
|
75
|
+
}): string;
|
|
76
|
+
/**
|
|
77
|
+
* When the window is why it said that, and correcting it would be noise.
|
|
78
|
+
*
|
|
79
|
+
* The tools are described at the top of the prompt, so a window too small to hold them means the
|
|
80
|
+
* model is answering about a toolset it was never shown — and its denial is honest from where it is
|
|
81
|
+
* standing. Arguing with it then is worse than useless: the correction is one more message on a
|
|
82
|
+
* prompt already being cut, and the retry comes back empty. What the reader needs is the number and
|
|
83
|
+
* the fix, not a second attempt that cannot work.
|
|
61
84
|
*/
|
|
62
|
-
export declare function
|
|
85
|
+
export declare function deniedBecauseNoRoom(denied: readonly Capability[], model: string, floorTokens: number, limitTokens: number, howToFix: string): string;
|
|
63
86
|
//# sourceMappingURL=capability-claims.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability-claims.d.ts","sourceRoot":"","sources":["../src/capability-claims.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,MAAM,WAAW,UAAU;IACzB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAmBD,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAyD7C,CAAC;AAgBF,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,SAAS,UAAU,EAAE,CAWvB;AAED,6FAA6F;AAC7F,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,CAQ1E;AAED
|
|
1
|
+
{"version":3,"file":"capability-claims.d.ts","sourceRoot":"","sources":["../src/capability-claims.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,MAAM,WAAW,UAAU;IACzB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;CAC7B;AAmBD,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAyD7C,CAAC;AAgBF,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,SAAS,UAAU,EAAE,CAWvB;AAED,6FAA6F;AAC7F,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,GAAG,MAAM,CAQ1E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,SAAS,UAAU,EAAE,EAC7B,KAAK,EAAE,MAAM,EACb,IAAI,GAAE;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAuB,GAC/C,MAAM,CAQR;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,UAAU,EAAE,EAC7B,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,GACf,MAAM,CASR"}
|
|
@@ -159,13 +159,44 @@ export function capabilityCorrection(denied) {
|
|
|
159
159
|
* Named as KONECK's own note, the way the identity answer is, because it is a fact about this
|
|
160
160
|
* program rather than the model's view of itself — and because somebody who has just been told the
|
|
161
161
|
* agent cannot browse needs to know which of the two to believe.
|
|
162
|
+
*
|
|
163
|
+
* ## It does not claim an outcome it does not have
|
|
164
|
+
*
|
|
165
|
+
* The first version ended "KONECK has told it otherwise and asked again", written before the retry
|
|
166
|
+
* had happened. On a machine whose window was truncating the prompt the retry came back empty, so
|
|
167
|
+
* what the reader got was a claim that something had been asked again, no second answer, and a
|
|
168
|
+
* finished run — reported as "koneck says they asked again, but nothing is running at all". Which
|
|
169
|
+
* was fair: the sentence described an intention as though it were a result.
|
|
170
|
+
*
|
|
171
|
+
* So the wording follows what is actually known at the point it is said, and the outcome is
|
|
172
|
+
* reported separately when there is one.
|
|
162
173
|
*/
|
|
163
|
-
export function capabilityNotice(denied, model) {
|
|
174
|
+
export function capabilityNotice(denied, model, opts = { retrying: true }) {
|
|
164
175
|
const what = denied.map(c => c.what).join(' and ');
|
|
165
|
-
|
|
176
|
+
const head = `${model} said it cannot manage ${what}. It can: the \`${denied[0].tool}\` tool is `
|
|
166
177
|
+ `enabled on this turn and does exactly that. Small models often carry that phrasing over from `
|
|
167
|
-
+ `training on assistants which genuinely had no browser
|
|
168
|
-
|
|
169
|
-
+ `KONECK
|
|
178
|
+
+ `training on assistants which genuinely had no browser.`;
|
|
179
|
+
return opts.retrying
|
|
180
|
+
? head + ` KONECK is telling it otherwise and trying the turn again.`
|
|
181
|
+
: head;
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* When the window is why it said that, and correcting it would be noise.
|
|
185
|
+
*
|
|
186
|
+
* The tools are described at the top of the prompt, so a window too small to hold them means the
|
|
187
|
+
* model is answering about a toolset it was never shown — and its denial is honest from where it is
|
|
188
|
+
* standing. Arguing with it then is worse than useless: the correction is one more message on a
|
|
189
|
+
* prompt already being cut, and the retry comes back empty. What the reader needs is the number and
|
|
190
|
+
* the fix, not a second attempt that cannot work.
|
|
191
|
+
*/
|
|
192
|
+
export function deniedBecauseNoRoom(denied, model, floorTokens, limitTokens, howToFix) {
|
|
193
|
+
const what = denied.map(c => c.what).join(' and ');
|
|
194
|
+
return `${model} said it cannot manage ${what}, and on this window that is not a habit — it is `
|
|
195
|
+
+ `the truth from where it is standing. The tool descriptions come to `
|
|
196
|
+
+ `${floorTokens.toLocaleString()} tokens and the server is working in `
|
|
197
|
+
+ `${limitTokens.toLocaleString()}, so the part of the prompt describing the browser is being `
|
|
198
|
+
+ `cut off before the model sees it. It is not being told it has one.\n\n`
|
|
199
|
+
+ `KONECK has NOT argued with it, because another message on a prompt already too long would `
|
|
200
|
+
+ `only make it worse. Raise the window and this stops happening:\n\n${howToFix}`;
|
|
170
201
|
}
|
|
171
202
|
//# sourceMappingURL=capability-claims.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capability-claims.js","sourceRoot":"","sources":["../src/capability-claims.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"capability-claims.js","sourceRoot":"","sources":["../src/capability-claims.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-limit.d.ts","sourceRoot":"","sources":["../src/context-limit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA6BH;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAE5C,uCAAuC;AACvC,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAS1E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,OAAO,CAAC;AAE/B,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAE1E;AAED,uFAAuF;AACvF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAI9D;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAgB7D;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,MAAM,EACb,SAAS,SAAQ,GAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsBxB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAK/E;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAG7E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEpF;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAI7E;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAA;CAAE,GACrF,MAAM,
|
|
1
|
+
{"version":3,"file":"context-limit.d.ts","sourceRoot":"","sources":["../src/context-limit.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA6BH;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAE5C,uCAAuC;AACvC,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAS1E;AAED;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,OAAO,CAAC;AAE/B,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAE1E;AAED,uFAAuF;AACvF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAI9D;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAgB7D;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,KAAK,EAAE,MAAM,EACb,SAAS,SAAQ,GAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsBxB;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,sBAAsB,OAAQ,CAAC;AAE5C;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAK/E;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAG7E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAEpF;AAED,iFAAiF;AACjF,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAI7E;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAA;CAAE,GACrF,MAAM,CA6BR;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,SAAS,GAAE,OAAO,KAAa,EAC/B,SAAS,SAAQ,GAChB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA0BnD;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,YAAY;IAC3B,8FAA8F;IAC9F,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAc/F;AA0BD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAM3D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CAiCT;AA4BD,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAA;CAAO,GAC7F,MAAM,CA2BR"}
|
package/dist/context-limit.js
CHANGED
|
@@ -203,6 +203,21 @@ export function crowdedWindowAdvice(fixedTokens, limit, opts) {
|
|
|
203
203
|
const k = (n) => `${(n / 1000).toFixed(1)}k`;
|
|
204
204
|
return `**${opts.model} has about ${k(limit)} tokens to work in, and ${k(fixedTokens)} of that ` +
|
|
205
205
|
`is spent before you type anything** (the instructions and the tool descriptions).\n\n` +
|
|
206
|
+
/*
|
|
207
|
+
* Whose limit this is, said before anything else about it.
|
|
208
|
+
*
|
|
209
|
+
* Read as KONECK rationing the model — "why is it even limiting context window, koneck should
|
|
210
|
+
* never limit but must allow a model to work freely, this is even ollama, so i am not paying
|
|
211
|
+
* anything". Fair, from the wording: it announced a budget and a reduced tool set and never
|
|
212
|
+
* said where the number came from. It comes from the server, which reports it and then cuts
|
|
213
|
+
* anything longer without saying so; the trimming is how a prompt survives that intact rather
|
|
214
|
+
* than being sliced in the middle. Nothing here is KONECK's ceiling, and there is nothing to
|
|
215
|
+
* pay for or ask permission for — it is one setting on your own machine.
|
|
216
|
+
*/
|
|
217
|
+
`This is the window the server reports for the loaded model, not a ceiling KONECK applies: ` +
|
|
218
|
+
`Ollama serves 4,096 by default whatever a model was trained for. KONECK trims to fit it ` +
|
|
219
|
+
`because the server silently truncates anything longer — a prompt cut in the middle is how a ` +
|
|
220
|
+
`model comes to say it has no tools. Raise the window and nothing is trimmed at all.\n\n` +
|
|
206
221
|
`That leaves roughly ${k(Math.max(0, limit - fixedTokens))} for your question, the reply, and ` +
|
|
207
222
|
`every file the agent reads. It is why a model this size starts repeating itself, writes tool ` +
|
|
208
223
|
`calls as plain text, or invents an answer about itself: it is not being given room to see ` +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-limit.js","sourceRoot":"","sources":["../src/context-limit.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-limit.js","sourceRoot":"","sources":["../src/context-limit.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.d.ts
CHANGED
|
@@ -3,11 +3,13 @@ import { type Pace } from './pace.js';
|
|
|
3
3
|
import { Trajectory } from './trajectory.js';
|
|
4
4
|
import type { TrajectoryEvent } from './trajectory.js';
|
|
5
5
|
import type { Plan } from './plan.js';
|
|
6
|
+
import { type ProjectInfo } from './project.js';
|
|
6
7
|
import { type PluginEntry } from './plugins.js';
|
|
7
8
|
import { type MCPClientEntry } from './mcp.js';
|
|
9
|
+
import { type Assembled } from './prompt-budget.js';
|
|
8
10
|
import { CheckpointRecorder } from './checkpoint.js';
|
|
9
11
|
export { resolveMaxTurns } from './run-limits.js';
|
|
10
|
-
import type { Message, AgentConfig, TokenStats } from './types.js';
|
|
12
|
+
import type { Message, AgentConfig, ExecutionContext, TokenStats } from './types.js';
|
|
11
13
|
/**
|
|
12
14
|
* Turns a provider failure into something a user can act on.
|
|
13
15
|
*
|
|
@@ -167,6 +169,26 @@ export declare function personalityInstruction(personality: AgentConfig['persona
|
|
|
167
169
|
* without limit — and the older an entry is, the likelier it is to be about something abandoned.
|
|
168
170
|
*/
|
|
169
171
|
export declare function truncateMemory(memory: string, limit?: number): string;
|
|
172
|
+
export declare function buildSystemPrompt(ctx: ExecutionContext, memory?: string | null, project?: ProjectInfo | null, agentInstructions?: string | null,
|
|
173
|
+
/**
|
|
174
|
+
* Whether the window is too small for guidance.
|
|
175
|
+
*
|
|
176
|
+
* The markdown-shaping rules are worth about 300 tokens and they improve a large model's output.
|
|
177
|
+
* On a 4,096-token window they are 7% of everything the model will ever see, spent on how to
|
|
178
|
+
* format a table it has no room to write. Identity and the rules that keep it safe stay.
|
|
179
|
+
*/
|
|
180
|
+
lean?: boolean,
|
|
181
|
+
/**
|
|
182
|
+
* A ceiling on the whole prompt, in tokens, or undefined for no ceiling.
|
|
183
|
+
*
|
|
184
|
+
* Set only when the window cannot hold everything. Above it, nothing is dropped and this is the
|
|
185
|
+
* same prompt it always was.
|
|
186
|
+
*/
|
|
187
|
+
budgetTokens?: number,
|
|
188
|
+
/** Framework guidance detected for the project — first to go when there is no room for it. */
|
|
189
|
+
extraPrompt?: string,
|
|
190
|
+
/** User-selected presentation style; it never changes tools, approvals, or safety rules. */
|
|
191
|
+
personality?: AgentConfig['personality']): Assembled;
|
|
170
192
|
/**
|
|
171
193
|
* Which optional tools can actually do anything here.
|
|
172
194
|
*
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAc5B,OAAO,EACE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAsBtC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAMvD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.js
CHANGED
|
@@ -26,7 +26,7 @@ import { resolveSandbox, describeSandbox } from './sandbox.js';
|
|
|
26
26
|
import { loadImages, buildUserContent, imageMime, looksLikeVisionUnsupported, visionUnsupportedNotice, } from './images.js';
|
|
27
27
|
import { parseTextToolCalls, paramTypesFrom, looksLikeTextToolCall, stripTemplateTokens, splitEmittable, parseCommandStyleCalls, toolShapesFrom } from './tool-call-text.js';
|
|
28
28
|
import { isIdentityQuestion, identityAnswer } from './identity.js';
|
|
29
|
-
import { deniedCapabilities, capabilityCorrection, capabilityNotice } from './capability-claims.js';
|
|
29
|
+
import { deniedCapabilities, capabilityCorrection, capabilityNotice, deniedBecauseNoRoom } from './capability-claims.js';
|
|
30
30
|
import { leanTools, leanModeNotice, findToolsSchema, matchDeferred, deferredToolNotice, FIND_TOOLS } from './lean-mode.js';
|
|
31
31
|
import { findTailRepetition, trimTailRepetition, repetitionNotice, CHECK_EVERY } from './repetition.js';
|
|
32
32
|
import { loadMemory } from './memory.js';
|
|
@@ -659,7 +659,14 @@ export function truncateMemory(memory, limit = MAX_MEMORY_CHARS) {
|
|
|
659
659
|
const from = kept.indexOf('\n');
|
|
660
660
|
return '(earlier notes omitted)\n' + (from === -1 ? kept : kept.slice(from + 1));
|
|
661
661
|
}
|
|
662
|
-
|
|
662
|
+
/*
|
|
663
|
+
* Exported so what the model is told about its own identity can be asserted.
|
|
664
|
+
*
|
|
665
|
+
* That block is the whole reason identity.ts exists — a model told nothing about who wrote the
|
|
666
|
+
* program it is running reaches for whichever lab trained it — and it is a string in the middle of
|
|
667
|
+
* a large function, which is exactly the kind of thing that gets edited back to something wrong.
|
|
668
|
+
*/
|
|
669
|
+
export function buildSystemPrompt(ctx, memory = null, project = null, agentInstructions = null,
|
|
663
670
|
/**
|
|
664
671
|
* Whether the window is too small for guidance.
|
|
665
672
|
*
|
|
@@ -693,8 +700,10 @@ personality = 'default') {
|
|
|
693
700
|
const rules = `You are KONECK, a production-grade autonomous coding agent.
|
|
694
701
|
|
|
695
702
|
WHO YOU ARE — fact, not inference:
|
|
696
|
-
KONECK is
|
|
697
|
-
|
|
703
|
+
KONECK is an independent open-source coding agent. Who wrote it is deliberately not disclosed: you
|
|
704
|
+
do not know, and there is nothing to work out. If you are asked, say it is not disclosed. Never
|
|
705
|
+
name a person or a company as the author, and never guess — an omission is not an invitation to
|
|
706
|
+
fill the gap.
|
|
698
707
|
You are running on the model \`${ctx.model ?? 'unnamed'}\` served by \`${ctx.provider ?? 'unknown'}\`.
|
|
699
708
|
KONECK is the program; the model is a part it uses. You were NOT made by Anthropic, OpenAI,
|
|
700
709
|
Google, Alibaba or DeepSeek — the model's maker is not yours, and you must not claim to be the
|
|
@@ -877,6 +886,15 @@ export async function mapWithLimit(items, limit, fn) {
|
|
|
877
886
|
return results;
|
|
878
887
|
}
|
|
879
888
|
async function handleSpawnAgents(args, config, cwd,
|
|
889
|
+
/*
|
|
890
|
+
* The parent's stop, so sub-agents go down with it.
|
|
891
|
+
*
|
|
892
|
+
* They were started with no signal at all, so stopping a run that had fanned out to six agents
|
|
893
|
+
* stopped the parent and left six agents working — each with its own turns, its own tools and its
|
|
894
|
+
* own commands, none of which anybody could reach. That is the worst version of the stop problem
|
|
895
|
+
* rather than a corner of it: the visible run ends and the machine keeps going.
|
|
896
|
+
*/
|
|
897
|
+
abortSignal,
|
|
880
898
|
/**
|
|
881
899
|
* The parent's counters, so delegated work is counted as work.
|
|
882
900
|
*
|
|
@@ -920,6 +938,20 @@ delegated) {
|
|
|
920
938
|
// trip a per-second limit even when three concurrent is otherwise sustainable.
|
|
921
939
|
if (i > 0)
|
|
922
940
|
await new Promise(r => setTimeout(r, (i % concurrency) * AGENT_STAGGER_MS));
|
|
941
|
+
/*
|
|
942
|
+
* Nothing new is started after the stop.
|
|
943
|
+
*
|
|
944
|
+
* With a concurrency of three and nine tasks, the last six are queued behind the first three —
|
|
945
|
+
* so without this, stopping would be followed by six fresh agents starting up, each of which
|
|
946
|
+
* then has to be stopped in turn. A worktree is created here too, and one made for an agent
|
|
947
|
+
* that is not going to run is a directory somebody has to clean up.
|
|
948
|
+
*/
|
|
949
|
+
if (abortSignal?.aborted) {
|
|
950
|
+
mine.status = 'failed';
|
|
951
|
+
publish();
|
|
952
|
+
return { task, success: false,
|
|
953
|
+
output: 'NOT RUN: stopped at the user\'s request before this agent started.' };
|
|
954
|
+
}
|
|
923
955
|
let taskCwd = cwd;
|
|
924
956
|
let branch;
|
|
925
957
|
if (isGit && args.use_worktrees !== false) {
|
|
@@ -974,7 +1006,7 @@ delegated) {
|
|
|
974
1006
|
};
|
|
975
1007
|
try {
|
|
976
1008
|
const session = await createAgentSession(subConfig);
|
|
977
|
-
await session.send(task);
|
|
1009
|
+
await session.send(task, abortSignal);
|
|
978
1010
|
// The last assistant message with something in it — not merely the last, which after a
|
|
979
1011
|
// tool call is often an empty shell — and enough of it to be worth having. Three hundred
|
|
980
1012
|
// characters cut a sub-agent's conclusions mid-sentence, so the parent had to work out
|
|
@@ -1162,6 +1194,13 @@ fixedTokens, platform) {
|
|
|
1162
1194
|
}
|
|
1163
1195
|
return observed + '\nIf it keeps happening, try another model with /models.';
|
|
1164
1196
|
}
|
|
1197
|
+
/**
|
|
1198
|
+
* Sessions that have already been told their window is small.
|
|
1199
|
+
*
|
|
1200
|
+
* Weak, and keyed on the session's own message array: nothing here should keep a finished session's
|
|
1201
|
+
* transcript alive, and the array is the only object that is the same one across every send.
|
|
1202
|
+
*/
|
|
1203
|
+
const windowExplained = new WeakSet();
|
|
1165
1204
|
export async function runReActLoop(messages, client, config, effectiveCwd, stats, mcpClients, plugins,
|
|
1166
1205
|
// Reassigned when the window is too small for the full set, so it is `let` in effect.
|
|
1167
1206
|
openaiTools, turnOffset = 0, abortSignal, checkpoint,
|
|
@@ -1504,6 +1543,8 @@ detectedContext = { current: 0 }) {
|
|
|
1504
1543
|
let commandStyleNoticed = false;
|
|
1505
1544
|
/** One correction per user message: a model that repeats a false denial will not be argued out. */
|
|
1506
1545
|
let capabilityCorrected = false;
|
|
1546
|
+
/** A correction made, whose outcome has still to be reported. */
|
|
1547
|
+
let correctionAwaiting = null;
|
|
1507
1548
|
// The tool list, cut to fit when the window cannot hold it.
|
|
1508
1549
|
//
|
|
1509
1550
|
// Nine of the twenty-three tools are git subcommands, about 550 tokens between them, and every
|
|
@@ -1520,6 +1561,22 @@ detectedContext = { current: 0 }) {
|
|
|
1520
1561
|
const systemText = messages.find(m => m.role === 'system')?.content;
|
|
1521
1562
|
const systemChars = typeof systemText === 'string' ? systemText : '';
|
|
1522
1563
|
let fixed = fixedRequestTokens(systemChars, JSON.stringify(openaiTools));
|
|
1564
|
+
/*
|
|
1565
|
+
* Said once for the session, not once per message.
|
|
1566
|
+
*
|
|
1567
|
+
* The trimming has to be decided on every request — the conversation grows, and what fits
|
|
1568
|
+
* changes with it — but the explanation of it does not change at all. It was printed each time
|
|
1569
|
+
* anyway, so a small window meant several paragraphs of diagnostics in front of every single
|
|
1570
|
+
* message: reported as "I only said Hi, what's with all this now". The window has not moved
|
|
1571
|
+
* since the last message and neither has the advice.
|
|
1572
|
+
*
|
|
1573
|
+
* Keyed on the message array, which is the one thing that is the same object for the whole
|
|
1574
|
+
* session — the config is spread afresh on every send, so its identity says nothing.
|
|
1575
|
+
*/
|
|
1576
|
+
const sayOnce = !windowExplained.has(messages);
|
|
1577
|
+
/** The reduced-tool-set explanation, if there is one, to be said with the rest or on its own. */
|
|
1578
|
+
let leanSaid = '';
|
|
1579
|
+
let leanDropped = [];
|
|
1523
1580
|
// Reduced only when it genuinely does not fit — measured against the window the server
|
|
1524
1581
|
// reported, not against a threshold KONECK picked. `leanTools: false` turns it off outright.
|
|
1525
1582
|
if (config.leanTools !== false && overheadIsCrowded(fixed, effectiveLimit())) {
|
|
@@ -1533,9 +1590,13 @@ detectedContext = { current: 0 }) {
|
|
|
1533
1590
|
findToolsSchema(lean.dropped),
|
|
1534
1591
|
];
|
|
1535
1592
|
messages.push({ role: 'system', content: deferredToolNotice(lean.dropped) });
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1593
|
+
/*
|
|
1594
|
+
* Held rather than printed, because the crowded-window advice below is very likely to say
|
|
1595
|
+
* the same window figure and the same fix a moment later. Two blocks of diagnostics that
|
|
1596
|
+
* overlap read as twice as much wrong as there is.
|
|
1597
|
+
*/
|
|
1598
|
+
leanSaid = leanModeNotice(lean, effectiveLimit());
|
|
1599
|
+
leanDropped = lean.dropped;
|
|
1539
1600
|
fixed = fixedRequestTokens(systemChars, JSON.stringify(openaiTools));
|
|
1540
1601
|
}
|
|
1541
1602
|
}
|
|
@@ -1559,10 +1620,26 @@ detectedContext = { current: 0 }) {
|
|
|
1559
1620
|
// Loopback means this machine; a LAN address is somebody else's. See runsOnThisMachine.
|
|
1560
1621
|
remote: !runsOnThisMachine(resolveProvider(config.provider, config.baseURL).baseURL),
|
|
1561
1622
|
});
|
|
1562
|
-
|
|
1623
|
+
if (sayOnce) {
|
|
1624
|
+
// One block, in the order somebody reads it: what the window is and whose it is, then what
|
|
1625
|
+
// had to be set aside because of it, then how to stop it happening.
|
|
1626
|
+
const together = leanSaid ? advice + '\n\n' + leanSaid : advice;
|
|
1627
|
+
config.onCrowdedWindow?.(fixed, effectiveLimit(), together);
|
|
1628
|
+
if (!silent)
|
|
1629
|
+
tui.printWarning(together);
|
|
1630
|
+
leanSaid = '';
|
|
1631
|
+
}
|
|
1632
|
+
}
|
|
1633
|
+
// Only reached when trimming was enough to bring it back under the line, so it stands alone.
|
|
1634
|
+
if (sayOnce && leanSaid) {
|
|
1635
|
+
config.onLeanMode?.(leanDropped, effectiveLimit(), leanSaid);
|
|
1563
1636
|
if (!silent)
|
|
1564
|
-
tui.printWarning(
|
|
1637
|
+
tui.printWarning(leanSaid);
|
|
1565
1638
|
}
|
|
1639
|
+
// Marked after everything above has had its say, so a session that says nothing on the first
|
|
1640
|
+
// message can still speak up on a later one when the conversation has grown into the limit.
|
|
1641
|
+
if (sayOnce && overheadIsCrowded(fixed, effectiveLimit()))
|
|
1642
|
+
windowExplained.add(messages);
|
|
1566
1643
|
}
|
|
1567
1644
|
// Questions about KONECK itself are answered by KONECK, without a request.
|
|
1568
1645
|
//
|
|
@@ -2397,14 +2474,69 @@ detectedContext = { current: 0 }) {
|
|
|
2397
2474
|
const denied = deniedCapabilities(assistantContent, openaiTools.map(t => t.function.name));
|
|
2398
2475
|
if (denied.length > 0) {
|
|
2399
2476
|
capabilityCorrected = true;
|
|
2400
|
-
|
|
2401
|
-
|
|
2477
|
+
/*
|
|
2478
|
+
* Two different situations, and only one of them is worth arguing about.
|
|
2479
|
+
*
|
|
2480
|
+
* If the window cannot hold the tool descriptions, the model is answering about a toolset it
|
|
2481
|
+
* was never shown, and its denial is honest. A correction there is one more message on a
|
|
2482
|
+
* prompt already being cut: measured on exactly that machine, the retry came back empty and
|
|
2483
|
+
* the run finished having said nothing, under a notice claiming it had asked again.
|
|
2484
|
+
*
|
|
2485
|
+
* So when there is no room, say what the cause is and stop. When there is, correct it.
|
|
2486
|
+
*/
|
|
2487
|
+
const endpoint = resolveProvider(config.provider, config.baseURL).baseURL;
|
|
2488
|
+
const noRoom = fixedCost > 0 && overheadIsCrowded(fixedCost, effectiveLimit());
|
|
2489
|
+
if (noRoom) {
|
|
2490
|
+
const notice = deniedBecauseNoRoom(denied, config.model, fixedCost, effectiveLimit(), ollamaWindowFix({ endpoint, remote: !runsOnThisMachine(endpoint) }));
|
|
2491
|
+
config.onFalseDenial?.(denied.map(d => d.what), notice);
|
|
2492
|
+
if (!silent)
|
|
2493
|
+
tui.printWarning(notice);
|
|
2494
|
+
// The turn is not retried and the model's answer stands: it is the only answer there is,
|
|
2495
|
+
// and replacing it with nothing is what left the screen blank.
|
|
2496
|
+
}
|
|
2497
|
+
else {
|
|
2498
|
+
const notice = capabilityNotice(denied, config.model, { retrying: true });
|
|
2499
|
+
config.onFalseDenial?.(denied.map(d => d.what), notice);
|
|
2500
|
+
if (!silent)
|
|
2501
|
+
tui.printWarning(notice);
|
|
2502
|
+
messages.push({ role: 'assistant', content: assistantContent });
|
|
2503
|
+
messages.push({ role: 'system', content: capabilityCorrection(denied) });
|
|
2504
|
+
// Remembered so the second attempt's outcome can be reported. Without this, a retry that
|
|
2505
|
+
// produces nothing leaves a notice describing an intention and no result anywhere.
|
|
2506
|
+
correctionAwaiting = { denied: denied.map(d => d.what), said: assistantContent };
|
|
2507
|
+
assistantContent = '';
|
|
2508
|
+
continue;
|
|
2509
|
+
}
|
|
2510
|
+
}
|
|
2511
|
+
}
|
|
2512
|
+
/*
|
|
2513
|
+
* How the corrected attempt went.
|
|
2514
|
+
*
|
|
2515
|
+
* Reported whether it worked or not. A model that repeats the denial, or returns nothing at all,
|
|
2516
|
+
* has to be visible as such — the alternative is what was reported: a note saying the model had
|
|
2517
|
+
* been told otherwise, and no sign of anything happening afterwards.
|
|
2518
|
+
*/
|
|
2519
|
+
if (correctionAwaiting) {
|
|
2520
|
+
const attempt = correctionAwaiting;
|
|
2521
|
+
correctionAwaiting = null;
|
|
2522
|
+
const stillDenying = assistantContent
|
|
2523
|
+
&& deniedCapabilities(assistantContent, openaiTools.map(t => t.function.name)).length > 0;
|
|
2524
|
+
const gaveNothing = toolCalls.length === 0 && assistantContent.trim() === '';
|
|
2525
|
+
if (stillDenying || gaveNothing) {
|
|
2526
|
+
const outcome = gaveNothing
|
|
2527
|
+
? `${config.model} returned nothing to the correction. It will not be asked a third time. `
|
|
2528
|
+
+ `This is what a prompt being truncated looks like from the outside — check the context `
|
|
2529
|
+
+ `window with /context — and it is also what a model simply unwilling to use a tool `
|
|
2530
|
+
+ `looks like. A larger model on the same task is the quickest way to tell them apart.`
|
|
2531
|
+
: `${config.model} repeated that it cannot ${attempt.denied.join(' or ')} after being told `
|
|
2532
|
+
+ `it can. It will not be asked again. The tool is there; this model is not going to use `
|
|
2533
|
+
+ `it on this task.`;
|
|
2534
|
+
config.onFalseDenial?.(attempt.denied, outcome);
|
|
2402
2535
|
if (!silent)
|
|
2403
|
-
tui.printWarning(
|
|
2404
|
-
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
continue;
|
|
2536
|
+
tui.printWarning(outcome);
|
|
2537
|
+
// Nothing came back, so the first answer is restored rather than leaving the turn blank.
|
|
2538
|
+
if (gaveNothing)
|
|
2539
|
+
assistantContent = attempt.said;
|
|
2408
2540
|
}
|
|
2409
2541
|
}
|
|
2410
2542
|
// Only print buffered content if it wasn't already live-streamed
|
|
@@ -2639,7 +2771,36 @@ detectedContext = { current: 0 }) {
|
|
|
2639
2771
|
function: { name: tc.name, arguments: tc.arguments },
|
|
2640
2772
|
})),
|
|
2641
2773
|
});
|
|
2642
|
-
for (const tc of toolCalls) {
|
|
2774
|
+
for (const [callIndex, tc] of toolCalls.entries()) {
|
|
2775
|
+
/*
|
|
2776
|
+
* Stop means stop, including the calls already queued behind this one.
|
|
2777
|
+
*
|
|
2778
|
+
* A turn commonly arrives with several calls in it, and this loop ran every one of them
|
|
2779
|
+
* whatever the user had pressed — there was no check here at all. So stopping during a turn
|
|
2780
|
+
* that had asked for eight commands meant waiting for eight commands. Pressing it again did
|
|
2781
|
+
* nothing except abort an already-aborted signal, which is exactly the "I have to click many
|
|
2782
|
+
* times before it stops" that was reported: each press was honoured instantly and none of
|
|
2783
|
+
* them reached the thing actually taking the time.
|
|
2784
|
+
*
|
|
2785
|
+
* The ones not run still get an answer. Every tool_call in an assistant message must have a
|
|
2786
|
+
* matching tool result or the next request is rejected outright — so abandoning them silently
|
|
2787
|
+
* would trade a slow stop for a session that cannot be resumed, which is worse. Saying what
|
|
2788
|
+
* happened also keeps the transcript honest about which steps did not run.
|
|
2789
|
+
*/
|
|
2790
|
+
if (abortSignal?.aborted) {
|
|
2791
|
+
for (const skipped of toolCalls.slice(callIndex)) {
|
|
2792
|
+
messages.push({
|
|
2793
|
+
role: 'tool', tool_call_id: skipped.id,
|
|
2794
|
+
content: 'NOT RUN: stopped at the user\'s request before this call was made.',
|
|
2795
|
+
});
|
|
2796
|
+
}
|
|
2797
|
+
if (!silent) {
|
|
2798
|
+
tui.printWarning(toolCalls.length - callIndex === 1
|
|
2799
|
+
? 'Stopped. One queued call was not run.'
|
|
2800
|
+
: `Stopped. ${toolCalls.length - callIndex} queued calls were not run.`);
|
|
2801
|
+
}
|
|
2802
|
+
return false;
|
|
2803
|
+
}
|
|
2643
2804
|
const sig = tc.name + '::' + tc.arguments;
|
|
2644
2805
|
/*
|
|
2645
2806
|
* Recorded on attempt, not on execution.
|
|
@@ -2954,14 +3115,16 @@ detectedContext = { current: 0 }) {
|
|
|
2954
3115
|
}
|
|
2955
3116
|
catch { /* use empty */ }
|
|
2956
3117
|
delegated.agents += parsed.tasks?.length ?? 0;
|
|
2957
|
-
result = await handleSpawnAgents(parsed, config, effectiveCwd, stats, delegated);
|
|
3118
|
+
result = await handleSpawnAgents(parsed, config, effectiveCwd, abortSignal, stats, delegated);
|
|
2958
3119
|
}
|
|
2959
3120
|
else if (BUILTIN_NAMES.has(tc.name)) {
|
|
2960
3121
|
result = await dispatchTool(tc.name, tc.arguments, effectiveCwd,
|
|
2961
3122
|
// Ink owns approvals through `config.approve`. Sending it through the legacy TUI as
|
|
2962
3123
|
// well created a second readline prompt over Ink's frame, which looked like a hang
|
|
2963
3124
|
// and could leave two terminal interfaces fighting for stdin.
|
|
2964
|
-
!config.approve && (config.requireApproval || policyDecision.requireApproval), line => config.onToolOutput?.(tc.name, line), sandbox
|
|
3125
|
+
!config.approve && (config.requireApproval || policyDecision.requireApproval), line => config.onToolOutput?.(tc.name, line), sandbox,
|
|
3126
|
+
// So a command, a page load or a fetch already in flight is cut rather than waited out.
|
|
3127
|
+
abortSignal);
|
|
2965
3128
|
}
|
|
2966
3129
|
else if (plugins.some(pl => pl.definition.name === tc.name)) {
|
|
2967
3130
|
result = await callPlugin(tc.name, tc.arguments, effectiveCwd, plugins);
|
|
@@ -2969,7 +3132,9 @@ detectedContext = { current: 0 }) {
|
|
|
2969
3132
|
else if (aliasedTool) {
|
|
2970
3133
|
// The name is not ours but its meaning is not in doubt: `create_file` with a path and
|
|
2971
3134
|
// contents is `write_file`. Refusing it wastes the turn and, twice now, the task.
|
|
2972
|
-
result = aliasNotice(tc.name, aliasedTool) + await dispatchTool(aliasedTool, tc.arguments, effectiveCwd, !config.approve && (config.requireApproval || policyDecision.requireApproval), line => config.onToolOutput?.(tc.name, line), sandbox
|
|
3135
|
+
result = aliasNotice(tc.name, aliasedTool) + await dispatchTool(aliasedTool, tc.arguments, effectiveCwd, !config.approve && (config.requireApproval || policyDecision.requireApproval), line => config.onToolOutput?.(tc.name, line), sandbox,
|
|
3136
|
+
// So a command, a page load or a fetch already in flight is cut rather than waited out.
|
|
3137
|
+
abortSignal);
|
|
2973
3138
|
}
|
|
2974
3139
|
else {
|
|
2975
3140
|
// A name the model invented, not a plugin that failed to load. Saying which tools exist
|