mindweave 3.2.7 → 3.2.8
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/cli/App.js +247 -21
- package/dist/cli/App.js.map +1 -1
- package/dist/cli/blockBoxes.js +57 -0
- package/dist/cli/blockBoxes.js.map +1 -0
- package/dist/cli/chatAnchor.js +34 -0
- package/dist/cli/chatAnchor.js.map +1 -1
- package/dist/cli/commandBackground.js +16 -0
- package/dist/cli/commandBackground.js.map +1 -0
- package/dist/cli/components/PromptInput.js +16 -3
- package/dist/cli/components/PromptInput.js.map +1 -1
- package/dist/cli/components/WorkGroup.js +70 -16
- package/dist/cli/components/WorkGroup.js.map +1 -1
- package/dist/cli/expandHits.js +18 -0
- package/dist/cli/expandHits.js.map +1 -1
- package/dist/cli/framebuffer/frameHold.js +58 -0
- package/dist/cli/framebuffer/frameHold.js.map +1 -0
- package/dist/cli/framebuffer/writer.js +18 -0
- package/dist/cli/framebuffer/writer.js.map +1 -1
- package/dist/cli/help.js +8 -1
- package/dist/cli/help.js.map +1 -1
- package/dist/cli/selectionGrow.js +244 -0
- package/dist/cli/selectionGrow.js.map +1 -0
- package/dist/cli/toolDisplay.js +21 -3
- package/dist/cli/toolDisplay.js.map +1 -1
- package/dist/cli/workLines.js +86 -4
- package/dist/cli/workLines.js.map +1 -1
- package/dist/dynamo/engine.js +13 -3
- package/dist/dynamo/engine.js.map +1 -1
- package/dist/dynamo/verify.js +21 -1
- package/dist/dynamo/verify.js.map +1 -1
- package/dist/mcp/connection.js +52 -9
- package/dist/mcp/connection.js.map +1 -1
- package/dist/mcp/manager.js +61 -42
- package/dist/mcp/manager.js.map +1 -1
- package/dist/mcp/resultView.js +116 -0
- package/dist/mcp/resultView.js.map +1 -0
- package/dist/mcp/transport/http.js +12 -4
- package/dist/mcp/transport/http.js.map +1 -1
- package/dist/mcp/transport/stdio.js +30 -5
- package/dist/mcp/transport/stdio.js.map +1 -1
- package/dist/mcp/transport/types.js +14 -0
- package/dist/mcp/transport/types.js.map +1 -1
- package/dist/memory/session.js +2 -0
- package/dist/memory/session.js.map +1 -1
- package/dist/tools/foregroundCommands.js +67 -0
- package/dist/tools/foregroundCommands.js.map +1 -0
- package/dist/tools/mcpAdd.js +124 -16
- package/dist/tools/mcpAdd.js.map +1 -1
- package/dist/tools/mindweaveStatus.js +1 -1
- package/dist/tools/mindweaveStatus.js.map +1 -1
- package/dist/tools/runCommand.js +61 -24
- package/dist/tools/runCommand.js.map +1 -1
- package/package.json +3 -3
package/dist/cli/workLines.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MCP_CALL_NAME } from "./toolDisplay.js";
|
|
1
2
|
/** Whether this call read a file (or a symbol of one), rather than ran something. */
|
|
2
3
|
export function isRead(it) {
|
|
3
4
|
return it.kind === "read";
|
|
@@ -6,13 +7,27 @@ export function isRead(it) {
|
|
|
6
7
|
export function isStep(it) {
|
|
7
8
|
return it.kind === "screenshot";
|
|
8
9
|
}
|
|
10
|
+
/** Whether this call was a tool an MCP server offers (not a change to a server's setup). */
|
|
11
|
+
export function isMcp(it) {
|
|
12
|
+
return it.kind === "mcp" && it.name === MCP_CALL_NAME;
|
|
13
|
+
}
|
|
14
|
+
/** Whether this call changed or checked an MCP server's setup (add, enable, reconnect...). */
|
|
15
|
+
export function isServerChange(it) {
|
|
16
|
+
return it.kind === "mcp" && it.name === "MCP";
|
|
17
|
+
}
|
|
18
|
+
/** The server a change was about: the arg is "enable rea", the server is "rea". */
|
|
19
|
+
export function serverOf(it) {
|
|
20
|
+
const arg = it.arg ?? "";
|
|
21
|
+
const at = arg.indexOf(" ");
|
|
22
|
+
return at < 0 ? arg : arg.slice(at + 1);
|
|
23
|
+
}
|
|
9
24
|
/** How many steps the calls in this row took: a batch is one call that carries several. */
|
|
10
25
|
export function stepCount(items) {
|
|
11
26
|
return items.filter(isStep).reduce((n, it) => n + Math.max(1, it.covers ?? 1), 0);
|
|
12
27
|
}
|
|
13
28
|
/** Which of the three kinds of work a call is. */
|
|
14
29
|
function workKind(it) {
|
|
15
|
-
return isRead(it) ? "read" : isStep(it) ? "step" : "run";
|
|
30
|
+
return isRead(it) ? "read" : isStep(it) ? "step" : isMcp(it) ? "tool" : isServerChange(it) ? "setup" : "run";
|
|
16
31
|
}
|
|
17
32
|
/** The files one read call took, by name: a list call names each, any other names one. */
|
|
18
33
|
export function filesOf(it) {
|
|
@@ -51,12 +66,16 @@ export function workHeader(items, live) {
|
|
|
51
66
|
const parts = order.map((k, i) => {
|
|
52
67
|
const mine = items.filter((it) => workKind(it) === k);
|
|
53
68
|
const going = !live ? [] : mine.filter((it) => it.status === "running");
|
|
54
|
-
|
|
69
|
+
// Server changes are counted by SERVER: enabling, removing and adding "rea" is one server
|
|
70
|
+
// being worked on, not three of them.
|
|
71
|
+
const size = (list) => k === "read" ? fileCount(list) : k === "step" ? stepCount(list) : k === "setup" ? new Set(list.map(serverOf)).size : list.length;
|
|
55
72
|
const n = size(mine);
|
|
56
73
|
const nGoing = size(going);
|
|
57
|
-
const noun = k === "read" ? (n === 1 ? "file" : "files") : k === "step" ? (n === 1 ? "step" : "steps") : n === 1 ? "command" : "commands";
|
|
74
|
+
const noun = k === "read" ? (n === 1 ? "file" : "files") : k === "step" ? (n === 1 ? "step" : "steps") : k === "tool" ? (n === 1 ? "MCP tool" : "MCP tools") : k === "setup" ? (n === 1 ? "MCP server" : "MCP servers") : n === 1 ? "command" : "commands";
|
|
58
75
|
const count = going.length > 0 && nGoing < n ? `${nGoing} of ${n}` : `${n}`;
|
|
59
|
-
const verb = going.length > 0
|
|
76
|
+
const verb = going.length > 0
|
|
77
|
+
? k === "read" ? "Reading" : k === "step" ? "Testing" : k === "tool" ? "Calling" : k === "setup" ? "Managing" : "Running"
|
|
78
|
+
: k === "read" ? "Read" : k === "step" ? "Tested" : k === "tool" ? "Called" : k === "setup" ? "Managed" : "Ran";
|
|
60
79
|
const text = `${verb} ${count} ${noun}`;
|
|
61
80
|
return i === 0 ? text : text.charAt(0).toLowerCase() + text.slice(1);
|
|
62
81
|
});
|
|
@@ -103,6 +122,69 @@ export function stepReason(it) {
|
|
|
103
122
|
const first = (it.summary ?? it.detail ?? "").split(String.fromCharCode(10)).map((l) => l.trim()).find(Boolean) ?? "";
|
|
104
123
|
return first.replace(/^Error:\s*/, "");
|
|
105
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* What an MCP call's line says at its right (pure): the mark, then how long it took when it
|
|
127
|
+
* worked. A failure is the mark alone: the reason goes under the line in red (`mcpReason`),
|
|
128
|
+
* because a verdict column too narrow for a sentence is what cut it to nothing before.
|
|
129
|
+
*/
|
|
130
|
+
export function mcpVerdict(it) {
|
|
131
|
+
if (it.status === "error")
|
|
132
|
+
return "✗";
|
|
133
|
+
const took = (it.summary ?? "").trim();
|
|
134
|
+
return took ? `✓ ${took}` : "✓";
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* A line with its indentation kept (pure). Wrapping a line to the band's width trims the
|
|
138
|
+
* spaces it starts with, which flattened a JSON result into one column; a non-breaking space
|
|
139
|
+
* is not trimmed and is drawn as a space.
|
|
140
|
+
*/
|
|
141
|
+
export function keepIndent(line) {
|
|
142
|
+
const lead = line.length - line.trimStart().length;
|
|
143
|
+
return lead > 0 ? String.fromCharCode(160).repeat(lead) + line.slice(lead) : line;
|
|
144
|
+
}
|
|
145
|
+
/** A server change that was not carried out because the user said no. */
|
|
146
|
+
export function wasDeclined(it) {
|
|
147
|
+
return isServerChange(it) && it.status !== "error" && /^declined\b/i.test((it.summary ?? "").trim());
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* What a server change's line says at its right (pure): the mark and what came of it
|
|
151
|
+
* ("connected · 170 tools"). A refusal by the user is not a success and gets no tick.
|
|
152
|
+
*/
|
|
153
|
+
export function serverVerdict(it) {
|
|
154
|
+
const said = (it.summary ?? "").trim();
|
|
155
|
+
if (wasDeclined(it))
|
|
156
|
+
return "declined";
|
|
157
|
+
if (it.status === "error")
|
|
158
|
+
return "\u2717";
|
|
159
|
+
return said ? `\u2713 ${said}` : "\u2713";
|
|
160
|
+
}
|
|
161
|
+
/** Why a server change failed, in words (pure). Empty when it did not fail. */
|
|
162
|
+
export function serverReason(it) {
|
|
163
|
+
return isServerChange(it) && it.status === "error" ? (it.summary ?? "").trim() : "";
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* One MCP line, as it is drawn (pure): a mark in front, the words after the name, and how to colour the mark.
|
|
167
|
+
*
|
|
168
|
+
* Every line of this kind has the SAME shape (mark, name, one line of words), so a list of
|
|
169
|
+
* twenty reads down the left edge: the marks say what happened and the words say why. The
|
|
170
|
+
* reason used to sit under its line in red, so a list of failures was a staircase of red
|
|
171
|
+
* sentences wrapping into one another, and the rest of the row was green and white besides.
|
|
172
|
+
* The words are dim and cut to the line; the whole of it is a click away.
|
|
173
|
+
*/
|
|
174
|
+
export function compactLine(it) {
|
|
175
|
+
if (it.status === "running")
|
|
176
|
+
return { mark: "", tone: "running", text: "" };
|
|
177
|
+
const said = (it.summary ?? "").trim();
|
|
178
|
+
if (wasDeclined(it))
|
|
179
|
+
return { mark: "\u00b7", tone: "skipped", text: "declined" };
|
|
180
|
+
if (it.status === "error")
|
|
181
|
+
return { mark: "\u2717", tone: "error", text: said };
|
|
182
|
+
return { mark: "\u2713", tone: "ok", text: said };
|
|
183
|
+
}
|
|
184
|
+
/** Why an MCP call failed, in the server's own words (pure). Empty when it did not fail. */
|
|
185
|
+
export function mcpReason(it) {
|
|
186
|
+
return it.status === "error" ? (it.summary ?? "").trim() : "";
|
|
187
|
+
}
|
|
106
188
|
/** Splits a control kind from its names on a folded line. A control character real output never holds. */
|
|
107
189
|
export const FOLD_SEP = String.fromCharCode(31);
|
|
108
190
|
/** What a command printed, made safe to draw (pure): no carriage returns (they send the cursor back to the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workLines.js","sourceRoot":"","sources":["../../src/cli/workLines.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workLines.js","sourceRoot":"","sources":["../../src/cli/workLines.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,qFAAqF;AACrF,MAAM,UAAU,MAAM,CAAC,EAAY;IACjC,OAAO,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC;AAC5B,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,MAAM,CAAC,EAAY;IACjC,OAAO,EAAE,CAAC,IAAI,KAAK,YAAY,CAAC;AAClC,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,KAAK,CAAC,EAAY;IAChC,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC,IAAI,KAAK,aAAa,CAAC;AACxD,CAAC;AAED,8FAA8F;AAC9F,MAAM,UAAU,cAAc,CAAC,EAAY;IACzC,OAAO,EAAE,CAAC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC;AAChD,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,QAAQ,CAAC,EAAY;IACnC,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC;IACzB,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC5B,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,2FAA2F;AAC3F,MAAM,UAAU,SAAS,CAAC,KAAiB;IACzC,OAAO,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,kDAAkD;AAClD,SAAS,QAAQ,CAAC,EAAY;IAC5B,OAAO,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC;AAC/G,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,OAAO,CAAC,EAAY;IAClC,IAAI,CAAC,EAAE,CAAC,GAAG;QAAE,OAAO,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;AAChF,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,SAAS,CAAC,KAAiB;IACzC,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAAE,SAAS;QAC1B,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;QAC7C,KAAK,MAAM,CAAC,IAAI,KAAK;YAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,KAAiB,EAAE,IAAyB;IACrE,MAAM,KAAK,GAAmD,EAAE,CAAC;IACjE,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACvB,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QACxE,0FAA0F;QAC1F,sCAAsC;QACtC,MAAM,IAAI,GAAG,CAAC,IAAgB,EAAE,EAAE,CAChC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;QACnI,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,IAAI,GACR,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;QAChP,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAC5E,MAAM,IAAI,GACR,KAAK,CAAC,MAAM,GAAG,CAAC;YACd,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YACzH,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QACpH,MAAM,IAAI,GAAG,GAAG,IAAI,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;QACxC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,SAAS,CAAC,EAAE,CAAC;AACpG,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,SAAS,CAAC,EAAY;IACpC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACvC,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,QAAQ,EAAE,CAAC;IACnF,IAAI,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;IAC9E,IAAI,KAAK;QAAE,OAAO,SAAS,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IACtF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC7D,IAAI,MAAM;QAAE,OAAO,SAAS,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;IAC3F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAChD,IAAI,KAAK;QAAE,OAAO,gBAAgB,KAAK,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAChF,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,YAAY,CAAC;IAChD,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,wBAAwB,CAAC;IAChE,OAAO,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,QAAQ,CAAC,EAAY;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;IAC5B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,SAAS,CAAC,EAAY;IACpC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC;AACnD,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,UAAU,CAAC,EAAY;IACrC,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;IACtH,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,EAAY;IACrC,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,GAAG,CAAC;IACtC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,OAAO,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IACnD,OAAO,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACpF,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,EAAY;IACtC,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACvG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,EAAY;IACxC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,WAAW,CAAC,EAAE,CAAC;QAAE,OAAO,UAAU,CAAC;IACvC,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,QAAQ,CAAC;IAC3C,OAAO,IAAI,CAAC,CAAC,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;AAC5C,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,YAAY,CAAC,EAAY;IACvC,OAAO,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACtF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,WAAW,CAAC,EAAY;IACtC,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IAC5E,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACvC,IAAI,WAAW,CAAC,EAAE,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;IAClF,IAAI,EAAE,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAChF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACpD,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,SAAS,CAAC,EAAY;IACpC,OAAO,EAAE,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAChE,CAAC;AAED,0GAA0G;AAC1G,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAEhD;kFACkF;AAClF,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrG,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC/H,CAAC;AAED,sEAAsE;AACtE,MAAM,OAAO,GAAG,oCAAoC,CAAC;AAErD;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAe;IAC1C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,MAAM,GAAG,GAAkC,EAAE,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACf,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QACnB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;AAChH,CAAC"}
|
package/dist/dynamo/engine.js
CHANGED
|
@@ -19,7 +19,7 @@ import { activeDriver, ensureDriver, manifestForModel } from "../drivers/registr
|
|
|
19
19
|
import { summarizeTask, taskLimitReason } from "./pricing.js";
|
|
20
20
|
import { limitGateReason, noteUsage, refreshUsageLimits, takeLimitWarnings } from "./usageLimits.js";
|
|
21
21
|
import { addTurn, emptySpend } from "./spend.js";
|
|
22
|
-
import { mutationNeedsVerification, isVerification, reScopeCheck, isBackgroundPollStep, stepFailureSignature, repeatFailureStep, repeatFailureNudge, failedActionLabel, firstErrorLine, sameFileEditCounts, overusedSingleEdits, batchEditNudge, narrationFault, narrationNudge, unknownToolError, replyFault, replyRewrite, VERIFY_NUDGE } from "./verify.js";
|
|
22
|
+
import { isServerManagementStep, mutationNeedsVerification, isVerification, reScopeCheck, isBackgroundPollStep, stepFailureSignature, repeatFailureStep, repeatFailureNudge, failedActionLabel, firstErrorLine, sameFileEditCounts, overusedSingleEdits, batchEditNudge, narrationFault, narrationNudge, unknownToolError, replyFault, replyRewrite, VERIFY_NUDGE } from "./verify.js";
|
|
23
23
|
import { guardOptions, GUARD_NO_ONE_TO_ASK, GUARD_REFUSAL, GUARD_REFUSAL_INPUT, guardRefusalWith, guardQuestion, guardDetail, interpretGuardChoice } from "./guard.js";
|
|
24
24
|
import { readFreeText } from "../tools/approval.js";
|
|
25
25
|
import { withoutInvisible } from "../tools/invisible.js";
|
|
@@ -929,6 +929,7 @@ async function respondTurn(session, options = {}) {
|
|
|
929
929
|
// it had. It also pins the exact `tools` bytes across the turn's steps, which is what
|
|
930
930
|
// keeps the provider's cached prefix intact while the tool loop runs.
|
|
931
931
|
let mcpTurn = session.toolContext.mcp?.snapshot(readOnlyTurn);
|
|
932
|
+
let mcpRevision = session.toolContext.mcp?.revision?.() ?? 0;
|
|
932
933
|
// Recomputed PER STEP, not once per turn: a large catalog is held behind
|
|
933
934
|
// `find_mcp_tools`, and a tool the model just searched for has to be callable on the
|
|
934
935
|
// very next step or the search was a lie. When nothing is deferred (the common case)
|
|
@@ -942,10 +943,15 @@ async function respondTurn(session, options = {}) {
|
|
|
942
943
|
if (session.toolContext.noTools)
|
|
943
944
|
return [];
|
|
944
945
|
const ro = (session.toolContext.planMode ?? false) || session.toolContext.readOnlyTools === true;
|
|
945
|
-
|
|
946
|
+
const mcpNow = session.toolContext.mcp?.revision?.() ?? 0;
|
|
947
|
+
if (ro !== readOnlyTurn || mcpNow !== mcpRevision) {
|
|
946
948
|
// The MCP catalog is re-snapshotted too, or approving a plan would grant the
|
|
947
949
|
// built-in editing tools while leaving every MCP action hidden until next turn.
|
|
950
|
+
// The same when a server came up, went down or changed its tools DURING the turn
|
|
951
|
+
// (the model just added one, or restarted one): the view is taken again at the
|
|
952
|
+
// start of the next step, never between advertising a tool and dispatching it.
|
|
948
953
|
readOnlyTurn = ro;
|
|
954
|
+
mcpRevision = mcpNow;
|
|
949
955
|
mcpTurn = session.toolContext.mcp?.snapshot(ro);
|
|
950
956
|
}
|
|
951
957
|
return [
|
|
@@ -1692,6 +1698,7 @@ async function respondTurn(session, options = {}) {
|
|
|
1692
1698
|
: null;
|
|
1693
1699
|
try {
|
|
1694
1700
|
result = await tool.execute(parseArgs(call.arguments), session.toolContext, {
|
|
1701
|
+
id: call.id,
|
|
1695
1702
|
progress: (text) => options.onEvent?.({ type: "tool", phase: "progress", id: call.id, text }),
|
|
1696
1703
|
});
|
|
1697
1704
|
}
|
|
@@ -2003,7 +2010,10 @@ async function respondTurn(session, options = {}) {
|
|
|
2003
2010
|
// see. Instead we inject that fact (with the shell's real cwd, the usual culprit)
|
|
2004
2011
|
// and let it diagnose. Repeat it after being told and the turn stops for real.
|
|
2005
2012
|
const failSig = stepFailureSignature(results.map((r) => ({ name: r.call.name, output: r.output, isError: !!r.isError })));
|
|
2006
|
-
if (
|
|
2013
|
+
if (isServerManagementStep(results.map((r) => r.call.name))) {
|
|
2014
|
+
// Leaves the streak exactly as it was: neither progress nor a new failure.
|
|
2015
|
+
}
|
|
2016
|
+
else if (failSig) {
|
|
2007
2017
|
if (failSig === lastFailSig) {
|
|
2008
2018
|
repeatFailStreak++;
|
|
2009
2019
|
}
|