veryfront 0.1.645 → 0.1.647
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/deno.js +1 -1
- package/esm/src/agent/ag-ui/handler.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/handler.js +11 -2
- package/esm/src/agent/ag-ui/host-support.d.ts +4 -1
- package/esm/src/agent/ag-ui/host-support.d.ts.map +1 -1
- package/esm/src/agent/ag-ui/host-support.js +84 -17
- package/esm/src/agent/factory.js +7 -7
- package/esm/src/agent/hosted/chat-request.d.ts.map +1 -1
- package/esm/src/agent/hosted/chat-request.js +13 -0
- package/esm/src/agent/hosted/chat-runtime-tool-assembly.d.ts +1 -0
- package/esm/src/agent/hosted/chat-runtime-tool-assembly.d.ts.map +1 -1
- package/esm/src/agent/hosted/chat-runtime-tool-assembly.js +4 -1
- package/esm/src/agent/hosted/default-chat-runtime.d.ts.map +1 -1
- package/esm/src/agent/hosted/default-chat-runtime.js +5 -3
- package/esm/src/agent/hosted/project-remote-tool-source.d.ts.map +1 -1
- package/esm/src/agent/hosted/project-remote-tool-source.js +25 -1
- package/esm/src/agent/hosted/veryfront-cloud-agent-service.d.ts +5 -4
- package/esm/src/agent/hosted/veryfront-cloud-agent-service.d.ts.map +1 -1
- package/esm/src/agent/hosted/veryfront-cloud-agent-service.js +7 -6
- package/esm/src/agent/index.d.ts +2 -2
- package/esm/src/agent/index.d.ts.map +1 -1
- package/esm/src/agent/index.js +1 -1
- package/esm/src/agent/runtime/index.d.ts +1 -1
- package/esm/src/agent/runtime/index.d.ts.map +1 -1
- package/esm/src/agent/runtime/index.js +25 -20
- package/esm/src/agent/runtime/mcp-server-tool-sources.d.ts +9 -0
- package/esm/src/agent/runtime/mcp-server-tool-sources.d.ts.map +1 -0
- package/esm/src/agent/runtime/mcp-server-tool-sources.js +59 -0
- package/esm/src/agent/runtime/model-tool-converter.d.ts +1 -1
- package/esm/src/agent/runtime/model-tool-converter.d.ts.map +1 -1
- package/esm/src/agent/runtime/model-tool-converter.js +1 -1
- package/esm/src/agent/service/mcp-server-config.d.ts +4 -0
- package/esm/src/agent/service/mcp-server-config.d.ts.map +1 -1
- package/esm/src/agent/streaming/fork-runtime-stream.js +1 -1
- package/esm/src/agent/types.d.ts +44 -5
- package/esm/src/agent/types.d.ts.map +1 -1
- package/esm/src/discovery/transpiler.d.ts.map +1 -1
- package/esm/src/discovery/transpiler.js +3 -1
- package/esm/src/internal-agents/run-stream.d.ts.map +1 -1
- package/esm/src/internal-agents/run-stream.js +2 -2
- package/esm/src/react/components/chat/chat/components/skill-badge.d.ts +1 -1
- package/esm/src/react/components/chat/chat/components/skill-badge.js +3 -3
- package/esm/src/react/components/chat/chat/utils/message-parts.d.ts +1 -1
- package/esm/src/react/components/chat/chat/utils/message-parts.d.ts.map +1 -1
- package/esm/src/react/components/chat/chat/utils/message-parts.js +4 -4
- package/esm/src/server/handlers/dev/framework-candidates.generated.js +7 -7
- package/esm/src/server/handlers/request/agent-stream.handler.d.ts.map +1 -1
- package/esm/src/server/handlers/request/agent-stream.handler.js +35 -10
- package/esm/src/skill/prompt-augmentation.d.ts +1 -1
- package/esm/src/skill/prompt-augmentation.js +5 -5
- package/esm/src/skill/tools.d.ts +6 -6
- package/esm/src/skill/tools.js +13 -13
- package/esm/src/skill/types.d.ts +1 -1
- package/esm/src/skill/types.js +3 -3
- package/esm/src/utils/version-constant.d.ts +1 -1
- package/esm/src/utils/version-constant.js +1 -1
- package/package.json +1 -1
package/esm/deno.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/handler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,6BAA6B,CAAC;AAQrC,OAAO,EAAE,KAAK,eAAe,EAAwB,MAAM,kBAAkB,CAAC;AAE9E,OAAO,EACL,KAAK,eAAe,EACpB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,KAAK,WAAW,EAChB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/handler.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAGL,KAAK,uBAAuB,EAC7B,MAAM,qBAAqB,CAAC;AAY7B,OAAO,EACL,KAAK,gBAAgB,EAGtB,MAAM,6BAA6B,CAAC;AAQrC,OAAO,EAAE,KAAK,eAAe,EAAwB,MAAM,kBAAkB,CAAC;AAE9E,OAAO,EACL,KAAK,eAAe,EACpB,qBAAqB,EACrB,KAAK,gBAAgB,EACrB,sBAAsB,EACtB,KAAK,WAAW,EAChB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAsT3B,yCAAyC;AACzC,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EACJ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACvB,CAAC,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACvF,cAAc,CAAC,EAAE,uBAAuB,CAAC,eAAe,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED,+DAA+D;AAC/D,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IACpE,KAAK,EAAE,KAAK,CAAC;CACd;AAUD,gCAAgC;AAChC,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,kBAAkB,GAC3B,CAAC,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC;AAChD,gCAAgC;AAChC,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,0BAA0B,EAClC,OAAO,CAAC,EAAE,kBAAkB,GAC3B,CAAC,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -20,6 +20,11 @@ const AG_UI_HEADERS = {
|
|
|
20
20
|
function generateRunId() {
|
|
21
21
|
return `run_${dntShim.crypto.randomUUID().replaceAll("-", "")}`;
|
|
22
22
|
}
|
|
23
|
+
function getProviderToolNames(agent) {
|
|
24
|
+
return Array.isArray(agent.config.providerTools)
|
|
25
|
+
? agent.config.providerTools.filter((toolName) => typeof toolName === "string" && toolName.length > 0)
|
|
26
|
+
: [];
|
|
27
|
+
}
|
|
23
28
|
function createToolDataEventBridge() {
|
|
24
29
|
const pendingEvents = [];
|
|
25
30
|
let publishDataEvent = (event) => {
|
|
@@ -141,7 +146,9 @@ async function createAgUiDirectStreamResponse(agent, request, rawRequest, baseCo
|
|
|
141
146
|
const threadId = request.threadId ?? dntShim.crypto.randomUUID();
|
|
142
147
|
const runId = request.runId ?? generateRunId();
|
|
143
148
|
const context = buildStreamContext(request, baseContext, threadId, runId);
|
|
144
|
-
let messages = normalizeAgUiMessages(request.messages
|
|
149
|
+
let messages = normalizeAgUiMessages(request.messages, {
|
|
150
|
+
providerOwnedToolNames: getProviderToolNames(agent),
|
|
151
|
+
});
|
|
145
152
|
const beforeStreamResult = await beforeStream?.({
|
|
146
153
|
request: rawRequest,
|
|
147
154
|
messages,
|
|
@@ -179,7 +186,9 @@ async function createAgUiInjectedToolsStreamResponse(agent, request, rawRequest,
|
|
|
179
186
|
const threadId = request.threadId ?? dntShim.crypto.randomUUID();
|
|
180
187
|
const runId = request.runId ?? generateRunId();
|
|
181
188
|
const context = buildStreamContext(request, baseContext, threadId, runId);
|
|
182
|
-
let messages = normalizeAgUiMessages(request.messages
|
|
189
|
+
let messages = normalizeAgUiMessages(request.messages, {
|
|
190
|
+
providerOwnedToolNames: getProviderToolNames(agent),
|
|
191
|
+
});
|
|
183
192
|
const beforeStreamResult = await beforeStream?.({
|
|
184
193
|
request: rawRequest,
|
|
185
194
|
messages,
|
|
@@ -128,12 +128,15 @@ export type AgUiInjectedTool = InferSchema<ReturnType<typeof getAgUiInjectedTool
|
|
|
128
128
|
export type AgUiContextItem = InferSchema<ReturnType<typeof getAgUiContextItemSchema>>;
|
|
129
129
|
/** Request payload for AG-UI. */
|
|
130
130
|
export type AgUiRequest = InferSchema<ReturnType<typeof getAgUiRequestSchema>>;
|
|
131
|
+
export interface NormalizeAgUiMessagesOptions {
|
|
132
|
+
providerOwnedToolNames?: readonly string[];
|
|
133
|
+
}
|
|
131
134
|
/** Request payload for parse AG-UI. */
|
|
132
135
|
export declare function parseAgUiRequest(request: Request): Promise<AgUiRequest>;
|
|
133
136
|
/** Error shape for parse AG-UI request or. */
|
|
134
137
|
export declare function parseAgUiRequestOrError(request: Request): Promise<AgUiRequest | Response>;
|
|
135
138
|
/** Normalizes AG-UI messages. */
|
|
136
|
-
export declare function normalizeAgUiMessages(messages: AgUiRequest["messages"]): Message[];
|
|
139
|
+
export declare function normalizeAgUiMessages(messages: AgUiRequest["messages"], options?: NormalizeAgUiMessagesOptions): Message[];
|
|
137
140
|
/** Event emitted for create AG-UI run error. */
|
|
138
141
|
export declare function createAgUiRunErrorEvent(message: string, code?: string): AgUiSseEvent;
|
|
139
142
|
/** Response payload for create AG-UI sse error. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host-support.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/host-support.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAa3C,mCAAmC;AACnC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAgBD,eAAO,MAAM,yBAAyB;;;;GASrC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;GAuBpC,CAAC;AAuBF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiBhC,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,sBAAsB;;;;GAAwC,CAAC;AAC5E,iDAAiD;AACjD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;GAAuC,CAAC;AAC1E;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAmC,CAAC;AAElE,mDAAmD;AACnD,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC;AACzF,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;AACvF,iCAAiC;AACjC,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"host-support.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/ag-ui/host-support.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAa3C,mCAAmC;AACnC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAgBD,eAAO,MAAM,yBAAyB;;;;GASrC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;GAuBpC,CAAC;AAuBF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiBhC,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,sBAAsB;;;;GAAwC,CAAC;AAC5E,iDAAiD;AACjD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;GAAuC,CAAC;AAC1E;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAmC,CAAC;AAElE,mDAAmD;AACnD,MAAM,MAAM,gBAAgB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC;AACzF,kDAAkD;AAClD,MAAM,MAAM,eAAe,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;AACvF,iCAAiC;AACjC,MAAM,MAAM,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC;AAE/E,MAAM,WAAW,4BAA4B;IAC3C,sBAAsB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC5C;AAmND,uCAAuC;AACvC,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,CAE7E;AAED,8CAA8C;AAC9C,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,CAKjC;AAED,iCAAiC;AACjC,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,EACjC,OAAO,GAAE,4BAAiC,GACzC,OAAO,EAAE,CAmCX;AAED,gDAAgD;AAChD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY,CAQpF;AAED,mDAAmD;AACnD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,QAAQ,CAUxF;AAED,6CAA6C;AAC7C,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,CAAC,UAAU,CAAC,GAAG,QAAQ,CASlF"}
|
|
@@ -95,6 +95,37 @@ function hasToolResultPart(parts, toolCallId) {
|
|
|
95
95
|
return parts.some((part) => (part.type === "tool-result" && part.toolCallId === toolCallId) ||
|
|
96
96
|
(part.type === "tool_result" && part.tool_call_id === toolCallId));
|
|
97
97
|
}
|
|
98
|
+
function getMessagePartToolCallId(part) {
|
|
99
|
+
const record = part;
|
|
100
|
+
const value = record.toolCallId ?? record.tool_call_id ?? record.id;
|
|
101
|
+
return typeof value === "string" && value.length > 0 ? value : undefined;
|
|
102
|
+
}
|
|
103
|
+
function getMessagePartToolName(part) {
|
|
104
|
+
const record = part;
|
|
105
|
+
const explicitToolName = record.toolName ?? record.tool_name ?? record.name;
|
|
106
|
+
if (typeof explicitToolName === "string" && explicitToolName.length > 0) {
|
|
107
|
+
return explicitToolName;
|
|
108
|
+
}
|
|
109
|
+
return part.type.startsWith("tool-") && part.type !== "tool-call" && part.type !== "tool-result"
|
|
110
|
+
? part.type.replace(/^tool-/, "")
|
|
111
|
+
: undefined;
|
|
112
|
+
}
|
|
113
|
+
function shouldKeepProviderVisibleToolPart(part, providerOwnedToolNames, providerOwnedToolCallIds) {
|
|
114
|
+
if (providerOwnedToolNames.size === 0) {
|
|
115
|
+
return true;
|
|
116
|
+
}
|
|
117
|
+
const toolName = getMessagePartToolName(part);
|
|
118
|
+
const toolCallId = getMessagePartToolCallId(part);
|
|
119
|
+
const ownedByName = toolName ? providerOwnedToolNames.has(toolName) : false;
|
|
120
|
+
const ownedByCallId = toolCallId ? providerOwnedToolCallIds.has(toolCallId) : false;
|
|
121
|
+
if (!ownedByName && !ownedByCallId) {
|
|
122
|
+
return true;
|
|
123
|
+
}
|
|
124
|
+
if (toolCallId) {
|
|
125
|
+
providerOwnedToolCallIds.add(toolCallId);
|
|
126
|
+
}
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
98
129
|
function normalizeMessagePart(part) {
|
|
99
130
|
if (part.type === "text" && typeof part.text === "string" &&
|
|
100
131
|
part.text.length <= MAX_TEXT_PART_LENGTH) {
|
|
@@ -148,14 +179,40 @@ function normalizeMessagePart(part) {
|
|
|
148
179
|
}
|
|
149
180
|
return null;
|
|
150
181
|
}
|
|
151
|
-
function
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
182
|
+
function buildMessageMetadataFields(message) {
|
|
183
|
+
return {
|
|
184
|
+
...(message.createdAt ? { timestamp: Date.parse(message.createdAt) || undefined } : {}),
|
|
185
|
+
...(message.metadata ? { metadata: message.metadata } : {}),
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
function normalizeAssistantMessage(message, providerOwnedToolNames, providerOwnedToolCallIds) {
|
|
189
|
+
const messages = [];
|
|
190
|
+
const metadataFields = buildMessageMetadataFields(message);
|
|
191
|
+
let segmentParts = [];
|
|
192
|
+
let segmentIndex = 0;
|
|
193
|
+
const flushAssistantSegment = () => {
|
|
194
|
+
if (segmentParts.length === 0)
|
|
195
|
+
return;
|
|
196
|
+
messages.push({
|
|
197
|
+
id: segmentIndex === 0 ? message.id : `${message.id}-${segmentIndex}`,
|
|
198
|
+
role: "assistant",
|
|
199
|
+
parts: segmentParts,
|
|
200
|
+
...metadataFields,
|
|
201
|
+
});
|
|
202
|
+
segmentParts = [];
|
|
203
|
+
segmentIndex += 1;
|
|
204
|
+
};
|
|
205
|
+
for (const part of message.parts) {
|
|
206
|
+
const normalizedPart = normalizeMessagePart(part);
|
|
207
|
+
if (!normalizedPart)
|
|
208
|
+
continue;
|
|
209
|
+
if (!shouldKeepProviderVisibleToolPart(normalizedPart, providerOwnedToolNames, providerOwnedToolCallIds)) {
|
|
210
|
+
continue;
|
|
157
211
|
}
|
|
158
|
-
|
|
212
|
+
if (isToolPartWithOutput(part) && !hasToolResultPart(message.parts, part.toolCallId)) {
|
|
213
|
+
segmentParts.push(normalizedPart);
|
|
214
|
+
flushAssistantSegment();
|
|
215
|
+
messages.push({
|
|
159
216
|
id: `tool_${part.toolCallId}`,
|
|
160
217
|
role: "tool",
|
|
161
218
|
parts: [{
|
|
@@ -164,8 +221,13 @@ function extractAssistantToolOutputMessages(message) {
|
|
|
164
221
|
toolName: part.toolName,
|
|
165
222
|
result: part.output,
|
|
166
223
|
}],
|
|
167
|
-
}
|
|
168
|
-
|
|
224
|
+
});
|
|
225
|
+
continue;
|
|
226
|
+
}
|
|
227
|
+
segmentParts.push(normalizedPart);
|
|
228
|
+
}
|
|
229
|
+
flushAssistantSegment();
|
|
230
|
+
return messages;
|
|
169
231
|
}
|
|
170
232
|
/** Request payload for parse AG-UI. */
|
|
171
233
|
export async function parseAgUiRequest(request) {
|
|
@@ -176,21 +238,26 @@ export async function parseAgUiRequestOrError(request) {
|
|
|
176
238
|
return await parseAgUiJsonRequestOrError(() => parseAgUiRequest(request), "Invalid AG-UI request");
|
|
177
239
|
}
|
|
178
240
|
/** Normalizes AG-UI messages. */
|
|
179
|
-
export function normalizeAgUiMessages(messages) {
|
|
241
|
+
export function normalizeAgUiMessages(messages, options = {}) {
|
|
242
|
+
const providerOwnedToolNames = new Set(options.providerOwnedToolNames ?? []);
|
|
243
|
+
const providerOwnedToolCallIds = new Set();
|
|
180
244
|
return messages.flatMap((message) => {
|
|
245
|
+
if (message.role === "user" || message.role === "system") {
|
|
246
|
+
providerOwnedToolCallIds.clear();
|
|
247
|
+
}
|
|
248
|
+
if (message.role === "assistant") {
|
|
249
|
+
return normalizeAssistantMessage(message, providerOwnedToolNames, providerOwnedToolCallIds);
|
|
250
|
+
}
|
|
181
251
|
const normalizedMessage = {
|
|
182
252
|
id: message.id,
|
|
183
253
|
role: message.role,
|
|
184
254
|
parts: message.parts
|
|
185
255
|
.map((part) => normalizeMessagePart(part))
|
|
186
|
-
.filter((part) => part !== null)
|
|
187
|
-
|
|
188
|
-
...(message
|
|
256
|
+
.filter((part) => part !== null)
|
|
257
|
+
.filter((part) => shouldKeepProviderVisibleToolPart(part, providerOwnedToolNames, providerOwnedToolCallIds)),
|
|
258
|
+
...buildMessageMetadataFields(message),
|
|
189
259
|
};
|
|
190
|
-
return [
|
|
191
|
-
normalizedMessage,
|
|
192
|
-
...extractAssistantToolOutputMessages(message),
|
|
193
|
-
];
|
|
260
|
+
return normalizedMessage.parts.length > 0 ? [normalizedMessage] : [];
|
|
194
261
|
});
|
|
195
262
|
}
|
|
196
263
|
/** Event emitted for create AG-UI run error. */
|
package/esm/src/agent/factory.js
CHANGED
|
@@ -19,9 +19,9 @@ const STREAMING_HEADERS = {
|
|
|
19
19
|
"x-vercel-ai-ui-message-stream": "v1",
|
|
20
20
|
};
|
|
21
21
|
const SKILL_TOOL_REGISTRATIONS = [
|
|
22
|
-
{ id: "
|
|
23
|
-
{ id: "
|
|
24
|
-
{ id: "
|
|
22
|
+
{ id: "load_skill", create: createLoadSkillTool },
|
|
23
|
+
{ id: "load_skill_reference", create: createLoadSkillReferenceTool },
|
|
24
|
+
{ id: "execute_skill_script", create: createExecuteSkillScriptTool },
|
|
25
25
|
];
|
|
26
26
|
function createAgentStreamResult(stream) {
|
|
27
27
|
return {
|
|
@@ -59,7 +59,7 @@ export function agent(config) {
|
|
|
59
59
|
// Skill tool registration (immutable config merge)
|
|
60
60
|
let mergedToolsConfig = config.tools;
|
|
61
61
|
if (config.skills) {
|
|
62
|
-
// Skill tools (
|
|
62
|
+
// Skill tools (load_skill, load_skill_reference, execute_skill_script) are
|
|
63
63
|
// framework infrastructure — shared across all projects. Project tools and
|
|
64
64
|
// skills themselves remain project-scoped. Using registerShared avoids
|
|
65
65
|
// scope mismatch between module-load time and request-handling time.
|
|
@@ -72,9 +72,9 @@ export function agent(config) {
|
|
|
72
72
|
if (config.tools !== true) {
|
|
73
73
|
mergedToolsConfig = {
|
|
74
74
|
...(config.tools ?? {}),
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"
|
|
75
|
+
"load_skill": true,
|
|
76
|
+
"load_skill_reference": true,
|
|
77
|
+
"execute_skill_script": true,
|
|
78
78
|
};
|
|
79
79
|
}
|
|
80
80
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-request.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAA2B,MAAM,qBAAqB,CAAC;AAE3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAMzF,eAAO,MAAM,uCAAuC;;;;;;;;GAUnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oCAAoC;;;;;;;;GAEhD,CAAC;AAEF,eAAO,MAAM,mCAAmC;;;;GAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;GAAkD,CAAC;AAEhG,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAUtC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAyC,CAAC;AAE9E,uCAAuC;AACvC,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC,CAAC;AAC3F,6CAA6C;AAC7C,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,cAAc,CAAC,EAAE,wBAAwB,CAAC;CAC3C,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-request.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-request.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,EAAE,2BAA2B,EAA2B,MAAM,qBAAqB,CAAC;AAE3F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AAMzF,eAAO,MAAM,uCAAuC;;;;;;;;GAUnD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,oCAAoC;;;;;;;;GAEhD,CAAC;AAEF,eAAO,MAAM,mCAAmC;;;;GAM/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gCAAgC;;;;GAAkD,CAAC;AAEhG,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAUtC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAAyC,CAAC;AAE9E,uCAAuC;AACvC,MAAM,MAAM,iBAAiB,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,0BAA0B,CAAC,CAAC,CAAC;AAC3F,6CAA6C;AAC7C,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAChD,OAAO,EAAE,WAAW,CAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAAC;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,cAAc,CAAC,EAAE,wBAAwB,CAAC;CAC3C,CAAC;AAmBF,gFAAgF;AAChF,wBAAgB,8DAA8D,CAC5E,KAAK,EAAE,yBAAyB,GAC/B,iBAAiB,CAAC,gBAAgB,CAAC,CAcrC;AAED,sEAAsE;AACtE,wBAAgB,qDAAqD,CACnE,KAAK,EAAE,yBAAyB,GAC/B,sBAAsB,CAoBxB;AAED,gEAAgE;AAChE,wBAAgB,gDAAgD,CAC9D,KAAK,EAAE,yBAAyB,GAC/B,iBAAiB,CAInB"}
|
|
@@ -39,6 +39,17 @@ export const hostedChatRequestSchema = lazySchema(getHostedChatRequestSchema);
|
|
|
39
39
|
function isRecord(value) {
|
|
40
40
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
41
41
|
}
|
|
42
|
+
function getStudioRuntimeEnvironmentContext(input) {
|
|
43
|
+
for (const item of input.context) {
|
|
44
|
+
if (item.type !== "json" || item.title !== "studio_context")
|
|
45
|
+
continue;
|
|
46
|
+
const environmentContext = item.data.environmentContext;
|
|
47
|
+
if (typeof environmentContext === "string" && environmentContext.trim().length > 0) {
|
|
48
|
+
return environmentContext;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
42
53
|
/** Builds hosted chat request forwarded props from runtime agent invocation. */
|
|
43
54
|
export function buildHostedChatRequestForwardedPropsFromRuntimeAgentInvocation(input) {
|
|
44
55
|
const forwardedProps = isRecord(input.forwardedProps)
|
|
@@ -54,12 +65,14 @@ export function buildHostedChatRequestForwardedPropsFromRuntimeAgentInvocation(i
|
|
|
54
65
|
}
|
|
55
66
|
/** Builds hosted chat request input from runtime agent invocation. */
|
|
56
67
|
export function buildHostedChatRequestInputFromRuntimeAgentInvocation(input) {
|
|
68
|
+
const environmentContext = getStudioRuntimeEnvironmentContext(input);
|
|
57
69
|
return {
|
|
58
70
|
messages: input.messages,
|
|
59
71
|
context: {
|
|
60
72
|
conversationId: input.run.conversationId,
|
|
61
73
|
projectId: input.run.project.projectId,
|
|
62
74
|
branchId: input.run.project.runtimeTargetBranchId ?? null,
|
|
75
|
+
...(environmentContext ? { environmentContext } : {}),
|
|
63
76
|
},
|
|
64
77
|
forwardedProps: buildHostedChatRequestForwardedPropsFromRuntimeAgentInvocation(input),
|
|
65
78
|
durableRootRun: {
|
|
@@ -22,6 +22,7 @@ export type HostedChatRuntimeToolAssemblyResult = {
|
|
|
22
22
|
remoteToolSources: RemoteToolSource[];
|
|
23
23
|
localToolNames: string[];
|
|
24
24
|
remoteToolNames: string[];
|
|
25
|
+
providerToolNames: string[];
|
|
25
26
|
availableToolNames: string[];
|
|
26
27
|
compatibleRemoteToolNames: string[];
|
|
27
28
|
systemInstructions: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-runtime-tool-assembly.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-runtime-tool-assembly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,uBAAuB,EAE5B,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,OAAO,EAEZ,KAAK,qBAAqB,EAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,8BAA8B,EAGpC,MAAM,mDAAmD,CAAC;AAC3D,OAAO,EAAE,KAAK,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAEL,KAAK,4CAA4C,EACjD,KAAK,6CAA6C,EAClD,KAAK,iDAAiD,EACtD,KAAK,wCAAwC,EAC9C,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-runtime-tool-assembly.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/chat-runtime-tool-assembly.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { createRemoteMCPToolSource, createToolsFromHostDefinitions, listProjectS
|
|
|
2
2
|
import { fetchLatestConversationUserText, updateDefaultResearchArtifacts, } from "../artifacts/default-research-artifact-support.js";
|
|
3
3
|
import { createHostedProjectRemoteToolSources, } from "./project-remote-tool-source.js";
|
|
4
4
|
import { selectProviderCompatibleToolNames } from "../runtime/provider-tool-compat.js";
|
|
5
|
+
import { getProviderNativeToolNames } from "../runtime/provider-native-tool-inventory.js";
|
|
5
6
|
import { flattenSystemInstructions, withRuntimeToolInventory } from "../runtime/tool-inventory.js";
|
|
6
7
|
function normalizeAllowedToolNames(toolNames) {
|
|
7
8
|
if (!toolNames) {
|
|
@@ -53,8 +54,9 @@ export async function prepareHostedChatRuntimeToolAssembly(input) {
|
|
|
53
54
|
projectId: activeProjectId(input.taskContext),
|
|
54
55
|
projectScopedRemoteToolOptions: input.projectScopedRemoteToolOptions,
|
|
55
56
|
});
|
|
57
|
+
const providerToolNames = getProviderNativeToolNames({ model: input.taskContext.model }).filter((toolName) => allowedToolNames ? allowedToolNames.has(toolName) : false);
|
|
56
58
|
const localToolNames = Object.keys(localHostTools);
|
|
57
|
-
const availableToolNames = selectProviderCompatibleToolNames([...new Set([...localToolNames, ...remoteToolNames])].sort(), {
|
|
59
|
+
const availableToolNames = selectProviderCompatibleToolNames([...new Set([...localToolNames, ...remoteToolNames, ...providerToolNames])].sort(), {
|
|
58
60
|
model: input.taskContext.model,
|
|
59
61
|
requiredToolNames: localToolNames,
|
|
60
62
|
});
|
|
@@ -79,6 +81,7 @@ export async function prepareHostedChatRuntimeToolAssembly(input) {
|
|
|
79
81
|
remoteToolSources,
|
|
80
82
|
localToolNames,
|
|
81
83
|
remoteToolNames,
|
|
84
|
+
providerToolNames,
|
|
82
85
|
availableToolNames,
|
|
83
86
|
compatibleRemoteToolNames,
|
|
84
87
|
systemInstructions,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-chat-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/default-chat-runtime.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAkB7B,OAAO,KAAK,EACV,gCAAgC,EAChC,+BAA+B,EAChC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,KAAK,mCAAmC,EAExC,KAAK,yCAAyC,EAC/C,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AACnF,OAAO,EAEL,KAAK,iCAAiC,EACvC,MAAM,6BAA6B,CAAC;AACrC,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,KAAK,EACV,8BAA8B,EAC9B,0BAA0B,EAC3B,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"default-chat-runtime.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/default-chat-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,13 +74,14 @@ function createRuntimeAgentConfig(input) {
|
|
|
74
74
|
toolAssembly: input.toolAssembly,
|
|
75
75
|
})
|
|
76
76
|
: undefined;
|
|
77
|
-
|
|
77
|
+
const runtimeConfig = {
|
|
78
78
|
id: "veryfront-hosted-runtime",
|
|
79
79
|
model: input.modelId,
|
|
80
80
|
system: input.toolAssembly.systemInstructions,
|
|
81
81
|
tools: input.toolAssembly.runtimeTools,
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
providerTools: input.toolAssembly.providerToolNames,
|
|
83
|
+
__vfRemoteToolSources: input.toolAssembly.remoteToolSources,
|
|
84
|
+
__vfAllowedRemoteTools: input.toolAssembly.compatibleRemoteToolNames,
|
|
84
85
|
maxSteps: input.options.maxSteps ?? 50,
|
|
85
86
|
resolveModelTransport: ({ resolvedModel }) => {
|
|
86
87
|
const providerOptions = resolveVeryfrontCloudThinkingProviderOptions(resolvedModel, input.options.thinking);
|
|
@@ -95,6 +96,7 @@ function createRuntimeAgentConfig(input) {
|
|
|
95
96
|
remoteToolSource: input.toolAssembly.remoteToolSources[0],
|
|
96
97
|
}),
|
|
97
98
|
};
|
|
99
|
+
return runtimeConfig;
|
|
98
100
|
}
|
|
99
101
|
function createCloudContext(input) {
|
|
100
102
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-remote-tool-source.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/project-remote-tool-source.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,qCAAqC,EAC1C,KAAK,uCAAuC,EAC5C,KAAK,8BAA8B,EACnC,KAAK,yBAAyB,EAC9B,KAAK,gBAAgB,EACrB,KAAK,oBAAoB,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,KAAK,2BAA2B,EAGjC,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"project-remote-tool-source.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/project-remote-tool-source.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,8 +93,9 @@ export function createHostedProjectRemoteToolSource(input) {
|
|
|
93
93
|
};
|
|
94
94
|
}
|
|
95
95
|
function createHostedProjectRemoteToolSourceFromConfig(input, server, source, onProjectSwitch) {
|
|
96
|
+
const policySource = createHostedMcpToolPolicySource(source, server.toolPolicy);
|
|
96
97
|
return createHostedProjectRemoteToolSource({
|
|
97
|
-
source,
|
|
98
|
+
source: policySource,
|
|
98
99
|
...(input.defaultProjectId !== undefined ? { defaultProjectId: input.defaultProjectId } : {}),
|
|
99
100
|
...(input.getActiveBranchId !== undefined
|
|
100
101
|
? { getActiveBranchId: input.getActiveBranchId }
|
|
@@ -125,6 +126,29 @@ function createHostedProjectRemoteToolSourceFromConfig(input, server, source, on
|
|
|
125
126
|
...(onProjectSwitch !== undefined ? { onProjectSwitch } : {}),
|
|
126
127
|
});
|
|
127
128
|
}
|
|
129
|
+
function isHostedMcpToolAllowed(toolName, policy) {
|
|
130
|
+
if (policy?.deny?.includes(toolName)) {
|
|
131
|
+
return false;
|
|
132
|
+
}
|
|
133
|
+
return policy?.allow ? policy.allow.includes(toolName) : true;
|
|
134
|
+
}
|
|
135
|
+
function createHostedMcpToolPolicySource(source, policy) {
|
|
136
|
+
if (!policy?.allow && !policy?.deny) {
|
|
137
|
+
return source;
|
|
138
|
+
}
|
|
139
|
+
return {
|
|
140
|
+
id: source.id,
|
|
141
|
+
async listTools(context) {
|
|
142
|
+
return (await source.listTools(context)).filter((toolDefinition) => isHostedMcpToolAllowed(toolDefinition.name, policy));
|
|
143
|
+
},
|
|
144
|
+
executeTool(toolName, args, context) {
|
|
145
|
+
if (!isHostedMcpToolAllowed(toolName, policy)) {
|
|
146
|
+
throw new Error(`Tool "${toolName}" is not allowed for this MCP server`);
|
|
147
|
+
}
|
|
148
|
+
return source.executeTool(toolName, args, context);
|
|
149
|
+
},
|
|
150
|
+
};
|
|
151
|
+
}
|
|
128
152
|
/** Create hosted project remote tool sources. */
|
|
129
153
|
export function createHostedProjectRemoteToolSources(input) {
|
|
130
154
|
const createRemoteToolSource = input.createRemoteToolSource ?? createRemoteMCPToolSource;
|
|
@@ -4,6 +4,7 @@ import { type HostedChatRuntimeCreationResult } from "./chat-runtime-contract.js
|
|
|
4
4
|
import type { HostedConversationRootRunContext } from "../conversation/root-run-lifecycle.js";
|
|
5
5
|
import { type AgentRuntimeMessage } from "../runtime/message-adapter.js";
|
|
6
6
|
import type { AgentServiceMcpServerConfig } from "../service/mcp-server-config.js";
|
|
7
|
+
import type { AgentVeryfrontMcpServerConfig } from "../types.js";
|
|
7
8
|
import { type ProjectAgentRuntimeAgentSource } from "../project/agent-runtime.js";
|
|
8
9
|
import { type CreateNodeAgentServiceRuntimeInfrastructureOptions } from "../service/node-runtime-infrastructure.js";
|
|
9
10
|
import { type AgentServiceRuntimeBundle, type AgentServiceRuntimeConfig, type StartNodeAgentServiceResult } from "../service/runtime.js";
|
|
@@ -14,12 +15,12 @@ export type NodeVeryfrontCloudAgentServiceProcessTarget = NonNullable<RunAgentSe
|
|
|
14
15
|
exit?: (code: number) => never | void;
|
|
15
16
|
};
|
|
16
17
|
export type NodeVeryfrontCloudAgentServiceAgentSource = ProjectAgentRuntimeAgentSource;
|
|
17
|
-
/** Public API contract for veryfront MCP server kind. */
|
|
18
|
-
export type VeryfrontMcpServerKind = "api" | "studio";
|
|
19
18
|
/** Public API contract for node Veryfront Cloud agent service MCP server. */
|
|
20
19
|
export type NodeVeryfrontCloudAgentServiceMcpServer = AgentServiceMcpServerConfig;
|
|
21
|
-
/** Veryfront MCP server helper. */
|
|
22
|
-
export declare function
|
|
20
|
+
/** Veryfront API MCP server helper. */
|
|
21
|
+
export declare function veryfrontApiMcpServer(): AgentServiceMcpServerConfig & AgentVeryfrontMcpServerConfig;
|
|
22
|
+
/** Veryfront Studio MCP server helper. */
|
|
23
|
+
export declare function veryfrontStudioMcpServer(): AgentServiceMcpServerConfig & AgentVeryfrontMcpServerConfig;
|
|
23
24
|
type AgentServicePathOption = string | URL;
|
|
24
25
|
/** Options accepted by node Veryfront Cloud agent service. */
|
|
25
26
|
export type NodeVeryfrontCloudAgentServiceOptions = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"veryfront-cloud-agent-service.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/veryfront-cloud-agent-service.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAuC9E,OAAO,EAGL,KAAK,0BAA0B,EAChC,MAAM,yBAAyB,CAAC;AAOjC,OAAO,EAAE,KAAK,+BAA+B,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,uCAAuC,CAAC;AAC9F,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAkBzE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"veryfront-cloud-agent-service.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/veryfront-cloud-agent-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,13 +35,14 @@ import { createVeryfrontCloudPreparedHostedChatExecutionRuntimeOptions, } from "
|
|
|
35
35
|
import { prepareVeryfrontCloudHostedChatExecution } from "./cloud-chat-execution-preparation.js";
|
|
36
36
|
import { applyAgentProjectContextChange } from "../project/context.js";
|
|
37
37
|
import { getAgent } from "../composition/index.js";
|
|
38
|
-
/** Veryfront MCP server helper. */
|
|
39
|
-
export function
|
|
40
|
-
if (kind === "studio") {
|
|
41
|
-
return { kind: "veryfront-studio" };
|
|
42
|
-
}
|
|
38
|
+
/** Veryfront API MCP server helper. */
|
|
39
|
+
export function veryfrontApiMcpServer() {
|
|
43
40
|
return { kind: "veryfront-api" };
|
|
44
41
|
}
|
|
42
|
+
/** Veryfront Studio MCP server helper. */
|
|
43
|
+
export function veryfrontStudioMcpServer() {
|
|
44
|
+
return { kind: "veryfront-studio" };
|
|
45
|
+
}
|
|
45
46
|
const DEFAULT_FORWARDED_CONFIG_NAMESPACE = "veryfront";
|
|
46
47
|
const DEFAULT_DRAIN_TIMEOUT_MS = 15_000;
|
|
47
48
|
const DEFAULT_HARD_SHUTDOWN_TIMEOUT_MS = 20_000;
|
|
@@ -141,7 +142,7 @@ function resolveDefaultProcessTarget() {
|
|
|
141
142
|
return process;
|
|
142
143
|
}
|
|
143
144
|
function resolveMcpServers(options) {
|
|
144
|
-
return options.mcpServers ?? [
|
|
145
|
+
return options.mcpServers ?? [veryfrontApiMcpServer()];
|
|
145
146
|
}
|
|
146
147
|
async function loadDefaultCreateBashTool() {
|
|
147
148
|
const provider = tryResolve(SandboxShellToolsProviderName);
|
package/esm/src/agent/index.d.ts
CHANGED
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
* ```
|
|
103
103
|
*/
|
|
104
104
|
import "../../_dnt.polyfills.js";
|
|
105
|
-
export type { Agent, AgentConfig, AgentContext, AgentMiddleware, AgentResponse, AgentStatus, AgentStreamResult, EdgeConfig, MemoryConfig, Message as AgentMessage, MessagePart, ModelProvider, ModelString, ModelTransportRequest, ModelTransportResolver, ResolvedAgentConfig, ResolvedModelTransport, ResolvedRuntimeState, RuntimeStateRequest, RuntimeStateResolver, StreamToolCall, Suggestion, Suggestions, ToolCall, ToolCallPart, ToolCallPartWithArgs, ToolCallPartWithInput, ToolResultPart, } from "./types.js";
|
|
105
|
+
export type { Agent, AgentConfig, AgentContext, AgentMcpHttpTransport, AgentMcpServerAuth, AgentMcpServerConfig, AgentMcpToolPolicy, AgentMiddleware, AgentResponse, AgentStatus, AgentStreamResult, EdgeConfig, MemoryConfig, Message as AgentMessage, MessagePart, ModelProvider, ModelString, ModelTransportRequest, ModelTransportResolver, ResolvedAgentConfig, ResolvedModelTransport, ResolvedRuntimeState, RuntimeStateRequest, RuntimeStateResolver, StreamToolCall, Suggestion, Suggestions, ToolCall, ToolCallPart, ToolCallPartWithArgs, ToolCallPartWithInput, ToolResultPart, } from "./types.js";
|
|
106
106
|
export { type HostedChildProjectSwitchHandler, type HostedChildSteeringMutationHandler, wrapHostedChildProjectSwitchTool, type WrapHostedChildProjectSwitchToolInput, wrapHostedChildSteeringMutationTool, type WrapHostedChildSteeringMutationToolInput, } from "./hosted/child-steering-tools.js";
|
|
107
107
|
export { filterHostedChatRuntimeLocalTools, type HostedChatRuntimeAllowedToolNames, type HostedChatRuntimeToolAssemblyContext, type HostedChatRuntimeToolAssemblyResult, type HostedChatRuntimeToolAssemblyResult as AgentServiceChatRuntimeToolAssemblyResult, prepareHostedChatRuntimeToolAssembly, type PrepareHostedChatRuntimeToolAssemblyInput, } from "./hosted/chat-runtime-tool-assembly.js";
|
|
108
108
|
export { createHostedProjectRemoteToolSource, type CreateHostedProjectRemoteToolSourceInput, createHostedProjectRemoteToolSources, type CreateHostedProjectRemoteToolSourcesInput, type HostedProjectRemoteToolSourceMutationHandler, type HostedProjectRemoteToolSourcePrepareToolInput, type HostedProjectRemoteToolSourceProjectSwitchHandler, type HostedProjectRemoteToolSourceRetryPolicy, } from "./hosted/project-remote-tool-source.js";
|
|
@@ -126,7 +126,7 @@ export { type AgentServiceServer, type AgentServiceServerLifecycle, createAgentS
|
|
|
126
126
|
export { createDefaultHostedChatRuntime, createDefaultHostedChatRuntime as createDefaultAgentServiceChatRuntime, type CreateDefaultHostedChatRuntimeContextInput, type CreateDefaultHostedChatRuntimeContextInput as CreateDefaultAgentServiceChatRuntimeContextInput, type CreateDefaultHostedChatRuntimeOptions, type CreateDefaultHostedChatRuntimeOptions as CreateDefaultAgentServiceChatRuntimeOptions, type DefaultHostedChatRuntimeConfig, type DefaultHostedChatRuntimeConfig as DefaultAgentServiceChatRuntimeConfig, type DefaultHostedChatRuntimeCreationOptions, type DefaultHostedChatRuntimeCreationOptions as DefaultAgentServiceChatRuntimeCreationOptions, type DefaultHostedChatRuntimeLogger, type DefaultHostedChatRuntimeLogger as DefaultAgentServiceChatRuntimeLogger, type DefaultHostedChatRuntimeProjectSwitchInput, type DefaultHostedChatRuntimeProjectSwitchInput as DefaultAgentServiceChatRuntimeProjectSwitchInput, type DefaultHostedChatRuntimeSteeringMutationInput, type DefaultHostedChatRuntimeSteeringMutationInput as DefaultAgentServiceChatRuntimeSteeringMutationInput, type DefaultHostedChatRuntimeSystemRefreshInput, type DefaultHostedChatRuntimeSystemRefreshInput as DefaultAgentServiceChatRuntimeSystemRefreshInput, type DefaultHostedChatRuntimeTaskContext, type DefaultHostedChatRuntimeTaskContext as DefaultAgentServiceChatRuntimeTaskContext, } from "./hosted/default-chat-runtime.js";
|
|
127
127
|
export { createDefaultHostedProjectSteeringRefresh, createDefaultHostedProjectSteeringRefresh as createDefaultAgentServiceProjectSteeringRefresh, type CreateDefaultHostedProjectSteeringRefreshOptions, type CreateDefaultHostedProjectSteeringRefreshOptions as CreateDefaultAgentServiceProjectSteeringRefreshOptions, type DefaultHostedProjectSteeringFetchers, type DefaultHostedProjectSteeringFetchers as DefaultAgentServiceProjectSteeringFetchers, type DefaultHostedProjectSteeringRefreshLogger, type DefaultHostedProjectSteeringRefreshLogger as DefaultAgentServiceProjectSteeringRefreshLogger, type DefaultHostedProjectSteeringRefreshLookup, type DefaultHostedProjectSteeringRefreshLookup as DefaultAgentServiceProjectSteeringRefreshLookup, fetchDefaultHostedProjectSteering, fetchDefaultHostedProjectSteering as fetchDefaultAgentServiceProjectSteering, type FetchDefaultHostedProjectSteeringInput, type FetchDefaultHostedProjectSteeringInput as FetchDefaultAgentServiceProjectSteeringInput, } from "./hosted/default-project-steering-refresh.js";
|
|
128
128
|
export { type AgentServiceRuntimeBundle, type AgentServiceRuntimeConfig, type AgentServiceRuntimeLogger, type AgentServiceRuntimeTrace, createAgentServiceRuntime, type CreateAgentServiceRuntimeOptions, createHostedAgentServiceRuntime, type CreateHostedAgentServiceRuntimeOptions, type HostedAgentServiceRuntimeBundle, type HostedAgentServiceRuntimeConfig, type HostedAgentServiceRuntimeLogger, type HostedAgentServiceRuntimeTrace, startAgentServiceRuntime, type StartAgentServiceRuntimeOptions, type StartAgentServiceRuntimeResult, startNodeAgentService, type StartNodeAgentServiceOptions, type StartNodeAgentServiceResult, startNodeHostedAgentService, type StartNodeHostedAgentServiceOptions, type StartNodeHostedAgentServiceResult, } from "./service/runtime.js";
|
|
129
|
-
export { type AgentServiceOptions, type AgentServicePreparedExecution, type AgentServiceProcessTarget, createNodeVeryfrontCloudAgentServiceRuntime, type NodeVeryfrontCloudAgentServiceMcpServer, type NodeVeryfrontCloudAgentServiceOptions, type NodeVeryfrontCloudAgentServicePreparedExecution, type NodeVeryfrontCloudAgentServiceProcessTarget, startAgentService, startNodeVeryfrontCloudAgentService, type VeryfrontCloudAgentServiceOptions,
|
|
129
|
+
export { type AgentServiceOptions, type AgentServicePreparedExecution, type AgentServiceProcessTarget, createNodeVeryfrontCloudAgentServiceRuntime, type NodeVeryfrontCloudAgentServiceMcpServer, type NodeVeryfrontCloudAgentServiceOptions, type NodeVeryfrontCloudAgentServicePreparedExecution, type NodeVeryfrontCloudAgentServiceProcessTarget, startAgentService, startNodeVeryfrontCloudAgentService, veryfrontApiMcpServer, type VeryfrontCloudAgentServiceOptions, veryfrontStudioMcpServer, } from "./hosted/veryfront-cloud-agent-service.js";
|
|
130
130
|
export { type AgentPushRuntimeServiceRest, type AgentServiceRegistrationConfig, agentServiceRegistrationConfigSchema, type AgentServiceRegistrationLifecycle, type AgentServiceRegistrationLogger, type AgentServiceRegistrationMode, createAgentServiceRegistrationLifecycle, type CreateAgentServiceRegistrationLifecycleOptions, type RegisterAgentPushRuntimeServiceRequest, resolveAgentServiceRegistrationInput, type ResolveAgentServiceRegistrationInputOptions, type ResolvedAgentServiceRegistrationInput, resolvedAgentServiceRegistrationInputSchema, } from "./service/registration.js";
|
|
131
131
|
export { type AgentServiceConfig, type AgentServiceConfigInput, agentServiceConfigSchema, type HostedAgentServiceConfig, type HostedAgentServiceConfigInput, hostedAgentServiceConfigSchema, parseAgentServiceConfig, parseHostedAgentServiceConfig, } from "./service/config.js";
|
|
132
132
|
export { type AgentServiceEnvFileLoadOptions, type AgentServiceEnvFileLoadResult, type HostedAgentServiceEnvFileLoadOptions, type HostedAgentServiceEnvFileLoadResult, loadAgentServiceEnvFiles, loadHostedAgentServiceEnvFiles, } from "./service/env-files.js";
|