veryfront 0.1.140 → 0.1.142
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/esm/cli/mcp/jsonrpc.d.ts +33 -1
- package/esm/cli/mcp/jsonrpc.d.ts.map +1 -1
- package/esm/cli/mcp/jsonrpc.js +63 -4
- package/esm/cli/mcp/remote-file-tools.d.ts.map +1 -1
- package/esm/cli/mcp/remote-file-tools.js +39 -0
- package/esm/cli/mcp/server.d.ts.map +1 -1
- package/esm/cli/mcp/server.js +57 -34
- package/esm/cli/mcp/standalone.d.ts.map +1 -1
- package/esm/cli/mcp/standalone.js +24 -11
- package/esm/cli/mcp/tools/catalog-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/catalog-tools.js +15 -5
- package/esm/cli/mcp/tools/cicd-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/cicd-tools.js +8 -0
- package/esm/cli/mcp/tools/dev-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/dev-tools.js +32 -10
- package/esm/cli/mcp/tools/introspection-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/introspection-tools.js +6 -2
- package/esm/cli/mcp/tools/project-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/project-tools.js +12 -4
- package/esm/cli/mcp/tools/scaffold-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/scaffold-tools.js +6 -2
- package/esm/cli/mcp/tools/skill-tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools/skill-tools.js +6 -2
- package/esm/cli/mcp/tools.d.ts.map +1 -1
- package/esm/cli/mcp/tools.js +36 -16
- package/esm/deno.js +1 -1
- package/esm/src/agent/runtime/index.js +1 -1
- package/esm/src/agent/runtime/tool-helpers.d.ts.map +1 -1
- package/esm/src/agent/runtime/tool-helpers.js +59 -30
- package/esm/src/agent/schemas/agent.schema.d.ts +4 -4
- package/esm/src/channels/invoke.d.ts +4 -4
- package/esm/src/internal-agents/run-stream.d.ts.map +1 -1
- package/esm/src/internal-agents/run-stream.js +62 -0
- package/esm/src/issues/mcp.d.ts.map +1 -1
- package/esm/src/issues/mcp.js +39 -10
- package/esm/src/mcp/index.d.ts +1 -1
- package/esm/src/mcp/index.d.ts.map +1 -1
- package/esm/src/mcp/server.d.ts.map +1 -1
- package/esm/src/mcp/server.js +85 -25
- package/esm/src/mcp/types.d.ts +22 -0
- package/esm/src/mcp/types.d.ts.map +1 -1
- package/esm/src/server/handlers/request/agent-stream.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/agent-stream.handler.js +30 -0
- package/esm/src/tool/types.d.ts +5 -0
- package/esm/src/tool/types.d.ts.map +1 -1
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/esm/src/workflow/schemas/workflow.schema.d.ts +6 -6
- package/package.json +1 -1
- package/src/cli/mcp/jsonrpc.ts +72 -4
- package/src/cli/mcp/remote-file-tools.ts +39 -0
- package/src/cli/mcp/server.ts +66 -33
- package/src/cli/mcp/standalone.ts +28 -10
- package/src/cli/mcp/tools/catalog-tools.ts +15 -5
- package/src/cli/mcp/tools/cicd-tools.ts +8 -0
- package/src/cli/mcp/tools/dev-tools.ts +34 -10
- package/src/cli/mcp/tools/introspection-tools.ts +7 -2
- package/src/cli/mcp/tools/project-tools.ts +12 -4
- package/src/cli/mcp/tools/scaffold-tools.ts +6 -2
- package/src/cli/mcp/tools/skill-tools.ts +6 -2
- package/src/cli/mcp/tools.ts +52 -16
- package/src/deno.js +1 -1
- package/src/src/agent/runtime/index.ts +1 -1
- package/src/src/agent/runtime/tool-helpers.ts +86 -36
- package/src/src/internal-agents/run-stream.ts +62 -0
- package/src/src/issues/mcp.ts +43 -10
- package/src/src/mcp/index.ts +7 -1
- package/src/src/mcp/server.ts +92 -31
- package/src/src/mcp/types.ts +24 -0
- package/src/src/server/handlers/request/agent-stream.handler.ts +30 -0
- package/src/src/tool/types.ts +7 -0
- package/src/src/utils/version-constant.ts +1 -1
|
@@ -5,7 +5,9 @@ import { toolRegistry } from "../tool/index.js";
|
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
import { createStreamTransformState, finalizeRunEvents, formatAgUiEvent, mapRuntimeEventToAgUi, parseSseJsonEvents, } from "./ag-ui-sse.js";
|
|
7
7
|
import { AgentRunCancelledError } from "./session-manager.js";
|
|
8
|
+
import { serverLogger } from "../utils/index.js";
|
|
8
9
|
const anyObjectSchema = z.record(z.string(), z.unknown());
|
|
10
|
+
const logger = serverLogger.component("internal-agent-run-stream");
|
|
9
11
|
function createInjectedStudioTool(runId, toolName, description, parameters, sessionManager) {
|
|
10
12
|
return {
|
|
11
13
|
id: toolName,
|
|
@@ -140,6 +142,14 @@ function getAllowedRemoteToolNames(forwardedProps) {
|
|
|
140
142
|
return allowedTools.every((toolName) => typeof toolName === "string") ? allowedTools : [];
|
|
141
143
|
}
|
|
142
144
|
export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
145
|
+
logger.info("Starting internal agent runtime stream", {
|
|
146
|
+
runId: input.runId,
|
|
147
|
+
threadId: input.threadId,
|
|
148
|
+
agentId: input.agentId,
|
|
149
|
+
messageCount: input.messages.length,
|
|
150
|
+
toolCount: input.tools.length,
|
|
151
|
+
contextCount: input.context.length,
|
|
152
|
+
});
|
|
143
153
|
const abortSignal = deps.sessionManager.startRun({
|
|
144
154
|
runId: input.runId,
|
|
145
155
|
threadId: input.threadId,
|
|
@@ -173,9 +183,20 @@ export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
|
173
183
|
completedResponse = response;
|
|
174
184
|
},
|
|
175
185
|
}, undefined, undefined, abortSignal);
|
|
186
|
+
logger.info("Internal agent runtime stream attached", {
|
|
187
|
+
runId: input.runId,
|
|
188
|
+
threadId: input.threadId,
|
|
189
|
+
agentId: input.agentId,
|
|
190
|
+
});
|
|
176
191
|
}
|
|
177
192
|
catch (error) {
|
|
178
193
|
deps.sessionManager.failRun(input.runId);
|
|
194
|
+
logger.error("Internal agent runtime stream setup failed", {
|
|
195
|
+
runId: input.runId,
|
|
196
|
+
threadId: input.threadId,
|
|
197
|
+
agentId: input.agentId,
|
|
198
|
+
error: error instanceof Error ? error.message : String(error),
|
|
199
|
+
});
|
|
179
200
|
throw error;
|
|
180
201
|
}
|
|
181
202
|
const response = new ReadableStream({
|
|
@@ -204,6 +225,11 @@ export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
|
204
225
|
};
|
|
205
226
|
const abortHandler = () => {
|
|
206
227
|
aborted = true;
|
|
228
|
+
logger.warn("Internal agent runtime stream aborted", {
|
|
229
|
+
runId: input.runId,
|
|
230
|
+
threadId: input.threadId,
|
|
231
|
+
agentId: input.agentId,
|
|
232
|
+
});
|
|
207
233
|
reader.cancel(new AgentRunCancelledError()).catch(() => { });
|
|
208
234
|
};
|
|
209
235
|
abortSignal.addEventListener("abort", abortHandler, { once: true });
|
|
@@ -218,6 +244,11 @@ export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
|
218
244
|
const { done, value } = await reader.read();
|
|
219
245
|
throwIfAborted();
|
|
220
246
|
if (done) {
|
|
247
|
+
logger.info("Internal agent runtime stream reader completed", {
|
|
248
|
+
runId: input.runId,
|
|
249
|
+
threadId: input.threadId,
|
|
250
|
+
agentId: input.agentId,
|
|
251
|
+
});
|
|
221
252
|
break;
|
|
222
253
|
}
|
|
223
254
|
remainder += decoder.decode(value, { stream: true });
|
|
@@ -241,10 +272,24 @@ export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
|
241
272
|
enqueueIfAttached(mappedEvent.event, mappedEvent.payload);
|
|
242
273
|
}
|
|
243
274
|
deps.sessionManager.completeRun(input.runId);
|
|
275
|
+
logger.info("Internal agent runtime stream finalized", {
|
|
276
|
+
runId: input.runId,
|
|
277
|
+
threadId: input.threadId,
|
|
278
|
+
agentId: input.agentId,
|
|
279
|
+
sawVisibleOutput: state.sawVisibleOutput,
|
|
280
|
+
sawTerminalError: state.sawTerminalError,
|
|
281
|
+
finishReason: state.metadata.finishReason,
|
|
282
|
+
});
|
|
244
283
|
}
|
|
245
284
|
catch (error) {
|
|
246
285
|
if (error instanceof AgentRunCancelledError) {
|
|
247
286
|
deps.sessionManager.cancelRun(input.runId);
|
|
287
|
+
logger.warn("Internal agent runtime stream cancelled", {
|
|
288
|
+
runId: input.runId,
|
|
289
|
+
threadId: input.threadId,
|
|
290
|
+
agentId: input.agentId,
|
|
291
|
+
error: error.message,
|
|
292
|
+
});
|
|
248
293
|
enqueueIfAttached("RunError", {
|
|
249
294
|
code: "CANCELLED",
|
|
250
295
|
message: error.message,
|
|
@@ -252,6 +297,12 @@ export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
|
252
297
|
}
|
|
253
298
|
else {
|
|
254
299
|
deps.sessionManager.failRun(input.runId);
|
|
300
|
+
logger.error("Internal agent runtime stream failed", {
|
|
301
|
+
runId: input.runId,
|
|
302
|
+
threadId: input.threadId,
|
|
303
|
+
agentId: input.agentId,
|
|
304
|
+
error: error instanceof Error ? error.message : String(error),
|
|
305
|
+
});
|
|
255
306
|
enqueueIfAttached("RunError", {
|
|
256
307
|
code: "RUNTIME_ERROR",
|
|
257
308
|
message: error instanceof Error ? error.message : String(error),
|
|
@@ -263,10 +314,21 @@ export async function createRuntimeAgentStreamResponse(input, agent, deps) {
|
|
|
263
314
|
if (clientAttached) {
|
|
264
315
|
controller.close();
|
|
265
316
|
}
|
|
317
|
+
logger.debug("Internal agent runtime stream response closed", {
|
|
318
|
+
runId: input.runId,
|
|
319
|
+
threadId: input.threadId,
|
|
320
|
+
agentId: input.agentId,
|
|
321
|
+
clientAttached,
|
|
322
|
+
});
|
|
266
323
|
}
|
|
267
324
|
},
|
|
268
325
|
cancel() {
|
|
269
326
|
clientAttached = false;
|
|
327
|
+
logger.info("Internal agent runtime client detached", {
|
|
328
|
+
runId: input.runId,
|
|
329
|
+
threadId: input.threadId,
|
|
330
|
+
agentId: input.agentId,
|
|
331
|
+
});
|
|
270
332
|
return Promise.resolve();
|
|
271
333
|
},
|
|
272
334
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/src/issues/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../../../src/src/issues/mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAqP/C;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,EAOnC,CAAC"}
|
package/esm/src/issues/mcp.js
CHANGED
|
@@ -31,8 +31,11 @@ const issuesCreateInput = createIssueSchema.extend({
|
|
|
31
31
|
}).merge(projectDirSchema);
|
|
32
32
|
const issuesCreate = {
|
|
33
33
|
name: "issues_create",
|
|
34
|
-
|
|
35
|
-
|
|
34
|
+
title: "Create Issue",
|
|
35
|
+
annotations: { readOnlyHint: false, destructiveHint: false, openWorldHint: false },
|
|
36
|
+
description: "Use this when you need to create a new issue, task, or plan as a markdown file. " +
|
|
37
|
+
"Use prefix 'TASK' for small work items, 'PLAN' for proposals/RFCs, 'ISSUE' for bugs/features. " +
|
|
38
|
+
"Returns the created issue. Do not use for updating — use issues_update instead.",
|
|
36
39
|
inputSchema: issuesCreateInput,
|
|
37
40
|
execute: async (input) => {
|
|
38
41
|
const manager = getManager(input.projectDir);
|
|
@@ -54,7 +57,9 @@ const issuesGetInput = projectDirSchema.extend({
|
|
|
54
57
|
});
|
|
55
58
|
const issuesGet = {
|
|
56
59
|
name: "issues_get",
|
|
57
|
-
|
|
60
|
+
title: "Get Issue",
|
|
61
|
+
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: false },
|
|
62
|
+
description: "Use this when you need to retrieve a specific issue by its ID. Returns the issue or null if not found. Do not use for listing — use issues_list instead.",
|
|
58
63
|
inputSchema: issuesGetInput,
|
|
59
64
|
execute: async (input) => {
|
|
60
65
|
const manager = getManager(input.projectDir);
|
|
@@ -75,8 +80,15 @@ const issuesUpdateInput = updateIssueSchema.extend({
|
|
|
75
80
|
}).merge(projectDirSchema);
|
|
76
81
|
const issuesUpdate = {
|
|
77
82
|
name: "issues_update",
|
|
78
|
-
|
|
79
|
-
|
|
83
|
+
title: "Update Issue",
|
|
84
|
+
annotations: {
|
|
85
|
+
readOnlyHint: false,
|
|
86
|
+
destructiveHint: false,
|
|
87
|
+
idempotentHint: true,
|
|
88
|
+
openWorldHint: false,
|
|
89
|
+
},
|
|
90
|
+
description: "Use this when you need to modify an existing issue. Only provided fields are updated. " +
|
|
91
|
+
"Returns the updated issue or null if not found. Do not use to close — use issues_close instead.",
|
|
80
92
|
inputSchema: issuesUpdateInput,
|
|
81
93
|
execute: async (input) => {
|
|
82
94
|
const manager = getManager(input.projectDir);
|
|
@@ -114,8 +126,10 @@ const issuesListInput = listIssuesSchema.extend({
|
|
|
114
126
|
}).merge(projectDirSchema);
|
|
115
127
|
const issuesList = {
|
|
116
128
|
name: "issues_list",
|
|
117
|
-
|
|
118
|
-
|
|
129
|
+
title: "List Issues",
|
|
130
|
+
annotations: { readOnlyHint: true, idempotentHint: true, openWorldHint: false },
|
|
131
|
+
description: "Use this when you need to find issues matching criteria. " +
|
|
132
|
+
"Returns matching issues and total count. Do not use to get a single known issue — use issues_get instead.",
|
|
119
133
|
inputSchema: issuesListInput,
|
|
120
134
|
execute: async (input) => {
|
|
121
135
|
const manager = getManager(input.projectDir);
|
|
@@ -139,7 +153,14 @@ const issuesCloseInput = projectDirSchema.extend({
|
|
|
139
153
|
});
|
|
140
154
|
const issuesClose = {
|
|
141
155
|
name: "issues_close",
|
|
142
|
-
|
|
156
|
+
title: "Close Issue",
|
|
157
|
+
annotations: {
|
|
158
|
+
readOnlyHint: false,
|
|
159
|
+
destructiveHint: false,
|
|
160
|
+
idempotentHint: true,
|
|
161
|
+
openWorldHint: false,
|
|
162
|
+
},
|
|
163
|
+
description: "Use this when you need to close an issue. Returns the updated issue or null if not found. Do not use to delete — use issues_delete instead.",
|
|
143
164
|
inputSchema: issuesCloseInput,
|
|
144
165
|
execute: async (input) => {
|
|
145
166
|
const manager = getManager(input.projectDir);
|
|
@@ -154,8 +175,16 @@ const issuesDeleteInput = projectDirSchema.extend({
|
|
|
154
175
|
});
|
|
155
176
|
const issuesDelete = {
|
|
156
177
|
name: "issues_delete",
|
|
157
|
-
|
|
158
|
-
|
|
178
|
+
title: "Delete Issue",
|
|
179
|
+
annotations: {
|
|
180
|
+
readOnlyHint: false,
|
|
181
|
+
destructiveHint: true,
|
|
182
|
+
idempotentHint: true,
|
|
183
|
+
openWorldHint: false,
|
|
184
|
+
},
|
|
185
|
+
description: "Use this when you need to permanently delete an issue. Returns {deleted: true/false}. " +
|
|
186
|
+
"WARNING: this is irreversible and cannot be undone. Prefer issues_close unless permanent deletion is explicitly requested. " +
|
|
187
|
+
"Do not use to close — use issues_close instead.",
|
|
159
188
|
inputSchema: issuesDeleteInput,
|
|
160
189
|
execute: async (input) => {
|
|
161
190
|
const manager = getManager(input.projectDir);
|
package/esm/src/mcp/index.d.ts
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
* ```
|
|
23
23
|
*/
|
|
24
24
|
import "../../_dnt.polyfills.js";
|
|
25
|
-
export type { MCPServerConfig, MCPStats, MCPTool } from "./types.js";
|
|
25
|
+
export type { MCPServerConfig, MCPStats, MCPTool, ToolAnnotations, ToolListEntry, } from "./types.js";
|
|
26
26
|
export { clearMCPRegistry, getMCPRegistry, getMCPStats, registerPrompt, registerResource, registerTool, } from "./registry.js";
|
|
27
27
|
export { createMCPServer, type IntegrationLoaderConfig, MCPServer } from "./server.js";
|
|
28
28
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,yBAAyB,CAAC;AAGjC,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/src/mcp/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,yBAAyB,CAAC;AAGjC,YAAY,EACV,eAAe,EACf,QAAQ,EACR,OAAO,EACP,eAAe,EACf,aAAa,GACd,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,cAAc,EACd,gBAAgB,EAChB,YAAY,GACb,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,eAAe,EAAE,KAAK,uBAAuB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAG/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,KAAK,EAAE,eAAe,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/src/mcp/server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAG/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAI7D,OAAO,KAAK,EAAE,eAAe,EAAiB,MAAM,YAAY,CAAC;AAMjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAWzE,KAAK,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;AA4DzD,UAAU,cAAc;IACtB,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,UAAU,eAAe;IACvB,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;KAChB,CAAC;CACH;AAED,MAAM,WAAW,uBAAuB;IACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,wBAAwB,GAAG,SAAS,CAAC,CAAC;IACnE,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAkB;IAChC,OAAO,CAAC,iBAAiB,CAAC,CAA0B;IACpD,OAAO,CAAC,kBAAkB,CAAS;gBAEvB,MAAM,EAAE,eAAe;IAQnC;;;;;;OAMG;IACH,oBAAoB,CAAC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAK3D,aAAa,CAAC,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,eAAe,CAAC;IAmBhG,OAAO,CAAC,QAAQ;IAgChB,OAAO,CAAC,UAAU;YA0BJ,SAAS;IA6BvB,OAAO,CAAC,QAAQ;IAgDhB,OAAO,CAAC,aAAa;IAgBrB,OAAO,CAAC,YAAY;IA6CpB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,SAAS;IAuCjB,iBAAiB,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;IAuD5E,OAAO,CAAC,qBAAqB;YAgBf,YAAY;IAsB1B,OAAO,CAAC,cAAc;YAqBR,0BAA0B;CAqBzC;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAElE"}
|
package/esm/src/mcp/server.js
CHANGED
|
@@ -16,6 +16,29 @@ const MAX_CONTEXT_HEADER_LENGTH = 255;
|
|
|
16
16
|
const JSON_CONTENT_TYPE = "application/json";
|
|
17
17
|
const END_USER_ID_PATTERN = /^[a-zA-Z0-9._@-]+$/;
|
|
18
18
|
const PROJECT_ID_PATTERN = /^[a-zA-Z0-9._-]+$/;
|
|
19
|
+
class JsonRpcError extends Error {
|
|
20
|
+
code;
|
|
21
|
+
constructor(code, message) {
|
|
22
|
+
super(message);
|
|
23
|
+
this.code = code;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function errorCode(error) {
|
|
27
|
+
if (typeof error === "object" && error !== null && "code" in error) {
|
|
28
|
+
const code = error.code;
|
|
29
|
+
if (typeof code === "number")
|
|
30
|
+
return code;
|
|
31
|
+
}
|
|
32
|
+
return -32603;
|
|
33
|
+
}
|
|
34
|
+
function errorMessage(error) {
|
|
35
|
+
if (error instanceof Error)
|
|
36
|
+
return error.message;
|
|
37
|
+
if (typeof error === "object" && error !== null && "message" in error) {
|
|
38
|
+
return String(error.message);
|
|
39
|
+
}
|
|
40
|
+
return String(error);
|
|
41
|
+
}
|
|
19
42
|
function toParamsRecord(params) {
|
|
20
43
|
if (!params || Array.isArray(params))
|
|
21
44
|
return {};
|
|
@@ -40,6 +63,7 @@ function readAllowedHeader(request, headerName, pattern) {
|
|
|
40
63
|
}
|
|
41
64
|
return value;
|
|
42
65
|
}
|
|
66
|
+
const MCP_SUPPORTED_VERSIONS = ["2025-11-25", "2024-11-05"];
|
|
43
67
|
export class MCPServer {
|
|
44
68
|
config;
|
|
45
69
|
integrationLoader;
|
|
@@ -71,10 +95,7 @@ export class MCPServer {
|
|
|
71
95
|
return {
|
|
72
96
|
jsonrpc: "2.0",
|
|
73
97
|
id: request.id,
|
|
74
|
-
error: {
|
|
75
|
-
code: -32603,
|
|
76
|
-
message: error instanceof Error ? error.message : String(error),
|
|
77
|
-
},
|
|
98
|
+
error: { code: errorCode(error), message: errorMessage(error) },
|
|
78
99
|
};
|
|
79
100
|
}
|
|
80
101
|
}, { "mcp.method": request.method });
|
|
@@ -95,6 +116,8 @@ export class MCPServer {
|
|
|
95
116
|
return this.getPrompt(params);
|
|
96
117
|
case "initialize":
|
|
97
118
|
return this.initialize(params);
|
|
119
|
+
case "notifications/initialized":
|
|
120
|
+
return Promise.resolve({});
|
|
98
121
|
default:
|
|
99
122
|
throw toError(createError({
|
|
100
123
|
type: "agent",
|
|
@@ -102,15 +125,26 @@ export class MCPServer {
|
|
|
102
125
|
}));
|
|
103
126
|
}
|
|
104
127
|
}
|
|
105
|
-
initialize(
|
|
128
|
+
initialize(params) {
|
|
129
|
+
const p = toParamsRecord(params);
|
|
130
|
+
const requested = typeof p.protocolVersion === "string" ? p.protocolVersion : undefined;
|
|
131
|
+
const negotiated = requested && MCP_SUPPORTED_VERSIONS.includes(requested)
|
|
132
|
+
? requested
|
|
133
|
+
: MCP_SUPPORTED_VERSIONS[0];
|
|
106
134
|
return Promise.resolve({
|
|
107
|
-
protocolVersion:
|
|
108
|
-
serverInfo: {
|
|
135
|
+
protocolVersion: negotiated,
|
|
136
|
+
serverInfo: {
|
|
137
|
+
name: "veryfront-mcp",
|
|
138
|
+
title: "Veryfront MCP Server",
|
|
139
|
+
version: VERSION,
|
|
140
|
+
description: "Veryfront development server tools for real-time errors, route preview, HMR control, and scaffolding",
|
|
141
|
+
},
|
|
109
142
|
capabilities: {
|
|
110
|
-
tools: {},
|
|
111
|
-
resources: { subscribe: true },
|
|
112
|
-
prompts: {},
|
|
143
|
+
tools: { listChanged: true },
|
|
144
|
+
resources: { subscribe: true, listChanged: true },
|
|
145
|
+
prompts: { listChanged: true },
|
|
113
146
|
},
|
|
147
|
+
instructions: "Veryfront MCP server provides development tools. Use vf_get_errors to check for code errors, vf_get_logs for server logs, vf_scaffold for code generation, and vf_get_project_context for project structure.",
|
|
114
148
|
});
|
|
115
149
|
}
|
|
116
150
|
async listTools() {
|
|
@@ -128,33 +162,54 @@ export class MCPServer {
|
|
|
128
162
|
for (const [id, tool] of registry.tools.entries()) {
|
|
129
163
|
if (tool.mcp?.enabled === false)
|
|
130
164
|
continue;
|
|
131
|
-
|
|
165
|
+
const entry = {
|
|
132
166
|
name: id,
|
|
133
167
|
description: tool.description,
|
|
134
168
|
inputSchema: tool.inputSchemaJson ?? zodToJsonSchema(tool.inputSchema),
|
|
135
|
-
}
|
|
169
|
+
};
|
|
170
|
+
if (tool.mcp?.title)
|
|
171
|
+
entry.title = tool.mcp.title;
|
|
172
|
+
if (tool.mcp?.annotations)
|
|
173
|
+
entry.annotations = tool.mcp.annotations;
|
|
174
|
+
tools.push(entry);
|
|
136
175
|
}
|
|
137
176
|
return { tools };
|
|
138
177
|
}
|
|
139
178
|
callTool(params, context) {
|
|
140
179
|
const { name, arguments: args } = toParamsRecord(params);
|
|
141
180
|
if (!name) {
|
|
142
|
-
throw toError(createError({
|
|
143
|
-
type: "agent",
|
|
144
|
-
message: "Tool name is required",
|
|
145
|
-
}));
|
|
181
|
+
throw toError(createError({ type: "agent", message: "Tool name is required" }));
|
|
146
182
|
}
|
|
147
183
|
const toolName = String(name);
|
|
184
|
+
const registry = getMCPRegistry();
|
|
185
|
+
const tool = registry.tools.get(toolName);
|
|
186
|
+
if (!tool) {
|
|
187
|
+
throw new JsonRpcError(-32602, `Unknown tool: ${toolName}`);
|
|
188
|
+
}
|
|
189
|
+
if (tool.inputSchema && typeof tool.inputSchema.parse === "function") {
|
|
190
|
+
try {
|
|
191
|
+
tool.inputSchema.parse(args ?? {});
|
|
192
|
+
}
|
|
193
|
+
catch (error) {
|
|
194
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
195
|
+
throw new JsonRpcError(-32602, `Invalid arguments for tool ${toolName}: ${message}`);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
148
198
|
return withSpan("mcp.callTool", async () => {
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
{
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
199
|
+
try {
|
|
200
|
+
const result = await executeTool(toolName, args, context);
|
|
201
|
+
return {
|
|
202
|
+
content: [{ type: "text", text: JSON.stringify(result, null, 2) }],
|
|
203
|
+
isError: false,
|
|
204
|
+
};
|
|
205
|
+
}
|
|
206
|
+
catch (error) {
|
|
207
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
208
|
+
return {
|
|
209
|
+
content: [{ type: "text", text: message }],
|
|
210
|
+
isError: true,
|
|
211
|
+
};
|
|
212
|
+
}
|
|
158
213
|
}, { "mcp.tool.name": toolName });
|
|
159
214
|
}
|
|
160
215
|
listResources() {
|
|
@@ -242,6 +297,11 @@ export class MCPServer {
|
|
|
242
297
|
if (request.method === "OPTIONS") {
|
|
243
298
|
return new dntShim.Response(null, { status: 204, headers: this.getCORSHeaders(requestOrigin) });
|
|
244
299
|
}
|
|
300
|
+
if (requestOrigin && this.config.cors?.enabled && this.config.cors.origins?.length) {
|
|
301
|
+
if (!this.config.cors.origins.includes(requestOrigin)) {
|
|
302
|
+
return createJSONRPCErrorResponse(403, -32600, "Forbidden: Origin not allowed");
|
|
303
|
+
}
|
|
304
|
+
}
|
|
245
305
|
if (this.config.auth?.type && this.config.auth.type !== "none") {
|
|
246
306
|
const authorized = await this.validateAuth(request);
|
|
247
307
|
if (!authorized)
|
package/esm/src/mcp/types.d.ts
CHANGED
|
@@ -2,6 +2,16 @@ import type { z } from "zod";
|
|
|
2
2
|
import type { Tool } from "../tool/index.js";
|
|
3
3
|
import type { Resource } from "../resource/index.js";
|
|
4
4
|
import type { Prompt } from "../prompt/index.js";
|
|
5
|
+
/**
|
|
6
|
+
* Behavioral hints for MCP clients (MCP 2025-11-25).
|
|
7
|
+
* Guides auto-approval, confirmation prompts, and caching.
|
|
8
|
+
*/
|
|
9
|
+
export interface ToolAnnotations {
|
|
10
|
+
readOnlyHint?: boolean;
|
|
11
|
+
destructiveHint?: boolean;
|
|
12
|
+
idempotentHint?: boolean;
|
|
13
|
+
openWorldHint?: boolean;
|
|
14
|
+
}
|
|
5
15
|
/**
|
|
6
16
|
* Generic MCP tool definition
|
|
7
17
|
*/
|
|
@@ -10,6 +20,18 @@ export interface MCPTool<TInput = any, TOutput = any> {
|
|
|
10
20
|
description: string;
|
|
11
21
|
inputSchema: z.ZodType<TInput, any, any>;
|
|
12
22
|
execute: (input: TInput) => Promise<TOutput>;
|
|
23
|
+
title?: string;
|
|
24
|
+
annotations?: ToolAnnotations;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Wire format for a single tool in a tools/list response.
|
|
28
|
+
*/
|
|
29
|
+
export interface ToolListEntry {
|
|
30
|
+
name: string;
|
|
31
|
+
description: string;
|
|
32
|
+
inputSchema: unknown;
|
|
33
|
+
title?: string;
|
|
34
|
+
annotations?: ToolAnnotations;
|
|
13
35
|
}
|
|
14
36
|
export interface MCPRegistry {
|
|
15
37
|
tools: Map<string, Tool>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/mcp/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;GAEG;AAEH,MAAM,WAAW,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IAEpB,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/mcp/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAEjD;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AAEH,MAAM,WAAW,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG;IAClD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IAEpB,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,eAAe,CAAC;CAC/B;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9B;AAGD,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-stream.handler.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/request/agent-stream.handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,4BAA4B,EAE7B,MAAM,2CAA2C,CAAC;AAkBnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAmB,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-stream.handler.d.ts","sourceRoot":"","sources":["../../../../../src/src/server/handlers/request/agent-stream.handler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,2BAA2B,CAAC;AAGrD,OAAO,EAAE,KAAK,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EAEL,KAAK,+BAA+B,EACrC,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,4BAA4B,EAE7B,MAAM,2CAA2C,CAAC;AAkBnD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAmB,aAAa,EAAE,MAAM,aAAa,CAAC;AAKnG,MAAM,WAAW,sBACf,SAAQ,yBAAyB,EAAE,+BAA+B;IAClE,4BAA4B,CAAC,EAAE,OAAO,4BAA4B,CAAC;CACpE;AA4ED,qBAAa,kBAAmB,SAAQ,WAAW;IAOrC,OAAO,CAAC,QAAQ,CAAC,IAAI;IANjC,QAAQ,EAAE,eAAe,CAIvB;gBAE2B,IAAI,GAAE,sBAAoC;IAIvE,OAAO,CAAC,sBAAsB;IAwBxB,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC;CA+GhF"}
|
|
@@ -9,11 +9,13 @@ import { RuntimeRunAgentInputSchema, } from "../../../internal-agents/schema.js"
|
|
|
9
9
|
import { BaseHandler } from "../response/base.js";
|
|
10
10
|
import { PRIORITY_MEDIUM_API } from "../../../utils/constants/index.js";
|
|
11
11
|
import { getHostEnv } from "../../../platform/compat/process.js";
|
|
12
|
+
import { serverLogger } from "../../../utils/index.js";
|
|
12
13
|
const defaultDeps = {
|
|
13
14
|
...defaultChannelInvokeDeps,
|
|
14
15
|
sessionManager: agentRunSessionManager,
|
|
15
16
|
resolveRuntimeOwnerInvokeUrl,
|
|
16
17
|
};
|
|
18
|
+
const logger = serverLogger.component("agent-stream-handler");
|
|
17
19
|
function buildAgentSourceRunOptions(sourceContext) {
|
|
18
20
|
switch (sourceContext.type) {
|
|
19
21
|
case "branch":
|
|
@@ -93,13 +95,36 @@ export class AgentStreamHandler extends BaseHandler {
|
|
|
93
95
|
expectedSubject: payload.runId,
|
|
94
96
|
expectedSurface: "studio",
|
|
95
97
|
});
|
|
98
|
+
logger.info("Accepted internal agent stream request", {
|
|
99
|
+
runId: payload.runId,
|
|
100
|
+
threadId: payload.threadId,
|
|
101
|
+
agentId: payload.agentId,
|
|
102
|
+
projectId: ctx.projectId,
|
|
103
|
+
projectSlug: ctx.projectSlug,
|
|
104
|
+
messageCount: payload.messages.length,
|
|
105
|
+
toolCount: payload.tools.length,
|
|
106
|
+
hasAgentSource: Boolean(payload.agentSource),
|
|
107
|
+
});
|
|
96
108
|
return await this.withAgentSourceContext(ctx, payload.agentSource, async () => {
|
|
97
109
|
await this.deps.ensureProjectDiscovery(ctx);
|
|
98
110
|
const agent = this.deps.getAgent(payload.agentId);
|
|
99
111
|
if (!agent) {
|
|
112
|
+
logger.warn("Internal agent stream request referenced unknown agent", {
|
|
113
|
+
runId: payload.runId,
|
|
114
|
+
agentId: payload.agentId,
|
|
115
|
+
projectId: ctx.projectId,
|
|
116
|
+
projectSlug: ctx.projectSlug,
|
|
117
|
+
});
|
|
100
118
|
return this.respond(builder.json({ error: "Agent not found" }, 404));
|
|
101
119
|
}
|
|
102
120
|
const response = await createRuntimeAgentStreamResponse(payload, agent, this.deps);
|
|
121
|
+
logger.info("Internal agent stream response created", {
|
|
122
|
+
runId: payload.runId,
|
|
123
|
+
threadId: payload.threadId,
|
|
124
|
+
agentId: payload.agentId,
|
|
125
|
+
projectId: ctx.projectId,
|
|
126
|
+
projectSlug: ctx.projectSlug,
|
|
127
|
+
});
|
|
103
128
|
const runtimeOwnerInvokeUrl = await this.deps.resolveRuntimeOwnerInvokeUrl?.(req) ??
|
|
104
129
|
null;
|
|
105
130
|
const responseWithOwner = runtimeOwnerInvokeUrl
|
|
@@ -129,6 +154,11 @@ export class AgentStreamHandler extends BaseHandler {
|
|
|
129
154
|
projectId: ctx.projectId,
|
|
130
155
|
projectSlug: ctx.projectSlug,
|
|
131
156
|
});
|
|
157
|
+
logger.error("Internal agent stream handler failed", {
|
|
158
|
+
projectId: ctx.projectId,
|
|
159
|
+
projectSlug: ctx.projectSlug,
|
|
160
|
+
error: error instanceof Error ? error.message : String(error),
|
|
161
|
+
});
|
|
132
162
|
return this.respond(builder.json({ error: "Internal agent stream failed" }, 500));
|
|
133
163
|
}
|
|
134
164
|
});
|
package/esm/src/tool/types.d.ts
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import type { z } from "zod";
|
|
5
5
|
import type { JsonSchema } from "./schema/json-schema.js";
|
|
6
6
|
import type { BlobStorage } from "../workflow/blob/types.js";
|
|
7
|
+
import type { ToolAnnotations } from "../mcp/types.js";
|
|
7
8
|
/**
|
|
8
9
|
* Tool configuration options
|
|
9
10
|
*/
|
|
@@ -31,6 +32,10 @@ export interface ToolConfig<TInput = any, TOutput = any> {
|
|
|
31
32
|
requiresAuth?: boolean;
|
|
32
33
|
/** Cache policy */
|
|
33
34
|
cachePolicy?: "no-cache" | "cache" | "cache-first";
|
|
35
|
+
/** Human-readable title for display */
|
|
36
|
+
title?: string;
|
|
37
|
+
/** Behavioral hints for clients (MCP 2025-11-25) */
|
|
38
|
+
annotations?: ToolAnnotations;
|
|
34
39
|
};
|
|
35
40
|
}
|
|
36
41
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/tool/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;GAEG;AAEH,MAAM,WAAW,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG;IACrD,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IAEpB,gCAAgC;IAChC,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAEvF,wBAAwB;IACxB,GAAG,CAAC,EAAE;QACJ,qBAAqB;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAElB,6BAA6B;QAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;QAEvB,mBAAmB;QACnB,WAAW,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/src/tool/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;GAEG;AAEH,MAAM,WAAW,UAAU,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG;IACrD,yDAAyD;IACzD,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;IAEpB,gCAAgC;IAChC,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAEvF,wBAAwB;IACxB,GAAG,CAAC,EAAE;QACJ,qBAAqB;QACrB,OAAO,CAAC,EAAE,OAAO,CAAC;QAElB,6BAA6B;QAC7B,YAAY,CAAC,EAAE,OAAO,CAAC;QAEvB,mBAAmB;QACnB,WAAW,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,aAAa,CAAC;QAEnD,uCAAuC;QACvC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,oDAAoD;QACpD,WAAW,CAAC,EAAE,eAAe,CAAC;KAC/B,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB;IACzB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,sDAAsD;IACtD,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED;;;;GAIG;AACH,KAAK,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;AAEvC;;GAEG;AAEH,MAAM,WAAW,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,OAAO,GAAG,GAAG;IAC/C,cAAc;IACd,EAAE,EAAE,MAAM,CAAC;IACX,2FAA2F;IAC3F,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;OAIG;IACH,IAAI,EAAE,QAAQ,CAAC;IAEf,uBAAuB;IACvB,WAAW,EAAE,MAAM,CAAC;IAEpB,yBAAyB;IACzB,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAEjC;;;OAGG;IACH,eAAe,CAAC,EAAE,UAAU,CAAC;IAE7B;;OAEG;IACH,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAE7E,wBAAwB;IACxB,GAAG,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,UAAU,CAAC;CACxB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.1.
|
|
1
|
+
export declare const VERSION = "0.1.142";
|
|
2
2
|
//# sourceMappingURL=version-constant.d.ts.map
|
|
@@ -10,8 +10,8 @@ import { z } from "zod";
|
|
|
10
10
|
export declare const WorkflowStatusSchema: z.ZodEnum<{
|
|
11
11
|
waiting: "waiting";
|
|
12
12
|
failed: "failed";
|
|
13
|
-
completed: "completed";
|
|
14
13
|
pending: "pending";
|
|
14
|
+
completed: "completed";
|
|
15
15
|
running: "running";
|
|
16
16
|
cancelled: "cancelled";
|
|
17
17
|
}>;
|
|
@@ -21,8 +21,8 @@ export declare const WorkflowStatusSchema: z.ZodEnum<{
|
|
|
21
21
|
export declare const NodeStatusSchema: z.ZodEnum<{
|
|
22
22
|
skipped: "skipped";
|
|
23
23
|
failed: "failed";
|
|
24
|
-
completed: "completed";
|
|
25
24
|
pending: "pending";
|
|
25
|
+
completed: "completed";
|
|
26
26
|
running: "running";
|
|
27
27
|
}>;
|
|
28
28
|
/**
|
|
@@ -76,8 +76,8 @@ export declare const NodeStateSchema: z.ZodObject<{
|
|
|
76
76
|
status: z.ZodEnum<{
|
|
77
77
|
skipped: "skipped";
|
|
78
78
|
failed: "failed";
|
|
79
|
-
completed: "completed";
|
|
80
79
|
pending: "pending";
|
|
80
|
+
completed: "completed";
|
|
81
81
|
running: "running";
|
|
82
82
|
}>;
|
|
83
83
|
input: z.ZodOptional<z.ZodUnknown>;
|
|
@@ -108,8 +108,8 @@ export declare const CheckpointSchema: z.ZodObject<{
|
|
|
108
108
|
status: z.ZodEnum<{
|
|
109
109
|
skipped: "skipped";
|
|
110
110
|
failed: "failed";
|
|
111
|
-
completed: "completed";
|
|
112
111
|
pending: "pending";
|
|
112
|
+
completed: "completed";
|
|
113
113
|
running: "running";
|
|
114
114
|
}>;
|
|
115
115
|
input: z.ZodOptional<z.ZodUnknown>;
|
|
@@ -184,15 +184,15 @@ export declare const RunFilterSchema: z.ZodObject<{
|
|
|
184
184
|
status: z.ZodOptional<z.ZodUnion<readonly [z.ZodEnum<{
|
|
185
185
|
waiting: "waiting";
|
|
186
186
|
failed: "failed";
|
|
187
|
-
completed: "completed";
|
|
188
187
|
pending: "pending";
|
|
188
|
+
completed: "completed";
|
|
189
189
|
running: "running";
|
|
190
190
|
cancelled: "cancelled";
|
|
191
191
|
}>, z.ZodArray<z.ZodEnum<{
|
|
192
192
|
waiting: "waiting";
|
|
193
193
|
failed: "failed";
|
|
194
|
-
completed: "completed";
|
|
195
194
|
pending: "pending";
|
|
195
|
+
completed: "completed";
|
|
196
196
|
running: "running";
|
|
197
197
|
cancelled: "cancelled";
|
|
198
198
|
}>>]>>;
|