veryfront 0.1.538 → 0.1.540
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/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 +1 -0
- package/esm/src/agent/hosted/project-remote-tool-source.d.ts +1 -0
- package/esm/src/agent/hosted/project-remote-tool-source.d.ts.map +1 -1
- package/esm/src/agent/hosted/project-remote-tool-source.js +32 -1
- package/esm/src/agent/hosted/runtime-state-resolver.d.ts +1 -0
- package/esm/src/agent/hosted/runtime-state-resolver.d.ts.map +1 -1
- package/esm/src/agent/hosted/runtime-state-resolver.js +3 -0
- package/esm/src/integrations/remote-tools.js +2 -2
- 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/src/deno.js +1 -1
- package/src/src/agent/hosted/chat-runtime-tool-assembly.ts +2 -0
- package/src/src/agent/hosted/project-remote-tool-source.ts +46 -1
- package/src/src/agent/hosted/runtime-state-resolver.ts +4 -0
- package/src/src/integrations/remote-tools.ts +2 -2
- package/src/src/utils/version-constant.ts +1 -1
package/esm/deno.js
CHANGED
|
@@ -11,6 +11,7 @@ export type HostedChatRuntimeToolAssemblyContext = DefaultResearchArtifactContex
|
|
|
11
11
|
model?: string;
|
|
12
12
|
clientProfile?: RuntimeClientProfile | null;
|
|
13
13
|
availableToolNames?: string[];
|
|
14
|
+
userId?: string | null;
|
|
14
15
|
};
|
|
15
16
|
export type HostedChatRuntimeAllowedToolNames = readonly string[] | ReadonlySet<string> | null;
|
|
16
17
|
export type HostedChatRuntimeToolAssemblyResult = {
|
|
@@ -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,yCAAyC,CAAC;AACjD,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;AAIzE,MAAM,MAAM,oCAAoC,GAAG,8BAA8B,GAAG;IAClF,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC5C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;
|
|
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,yCAAyC,CAAC;AACjD,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;AAIzE,MAAM,MAAM,oCAAoC,GAAG,8BAA8B,GAAG;IAClF,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC5C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,SAAS,MAAM,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;AAE/F,MAAM,MAAM,mCAAmC,GAAG;IAChD,YAAY,EAAE,OAAO,CAAC;IACtB,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IACtC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,MAAM,yCAAyC,CACnD,gBAAgB,SAAS,uBAAuB,GAAG,uBAAuB,IACxE;IACF,WAAW,EAAE,oCAAoC,CAAC;IAClD,YAAY,EAAE,MAAM,GAAG,SAAS,iBAAiB,EAAE,CAAC;IACpD,UAAU,EAAE,WAAW,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACpD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,iCAAiC,CAAC;IACrD,8BAA8B,CAAC,EAAE,8BAA8B,CAAC;IAChE,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,yBAAyB,KAAK,gBAAgB,CAAC;IACjF,eAAe,CAAC,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/C,iBAAiB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpD,sBAAsB,CAAC,EAAE,6CAA6C,CAAC;IACvE,yBAAyB,CAAC,EAAE,wCAAwC,CAAC;IACrE,kBAAkB,CAAC,EAAE,4CAA4C,CAAC;IAClE,qBAAqB,CAAC,EAAE,iDAAiD,CAAC;IAC1E,iCAAiC,CAAC,EAAE,OAAO,CAAC;CAC7C,CAAC;AAoBF,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,KAAK,EAAE,WAAW,CAAC;IACnB,gBAAgB,CAAC,EAAE,iCAAiC,CAAC;CACtD,GAAG,WAAW,CAOd;AAED,wBAAsB,oCAAoC,CACxD,gBAAgB,SAAS,uBAAuB,GAAG,uBAAuB,EAE1E,KAAK,EAAE,yCAAyC,CAAC,gBAAgB,CAAC,GACjE,OAAO,CAAC,mCAAmC,CAAC,CAyE9C"}
|
|
@@ -38,6 +38,7 @@ export async function prepareHostedChatRuntimeToolAssembly(input) {
|
|
|
38
38
|
createRemoteToolSource: input.createRemoteToolSource ?? createRemoteMCPToolSource,
|
|
39
39
|
defaultProjectId: () => activeProjectId(input.taskContext),
|
|
40
40
|
getProjectId: input.getProjectId ?? (() => activeProjectId(input.taskContext)),
|
|
41
|
+
getEndUserId: () => input.taskContext.userId ?? null,
|
|
41
42
|
getActiveBranchId: input.getActiveBranchId ?? (() => activeBranchId(input.taskContext)),
|
|
42
43
|
conversationId: input.conversationId,
|
|
43
44
|
allowedToolNames,
|
|
@@ -38,6 +38,7 @@ export type CreateHostedProjectRemoteToolSourcesInput = Omit<CreateHostedProject
|
|
|
38
38
|
mcpServers?: readonly AgentServiceMcpServerConfig[];
|
|
39
39
|
clientProfile?: RuntimeClientProfile | null;
|
|
40
40
|
getProjectId: () => string | null | undefined;
|
|
41
|
+
getEndUserId?: () => string | null | undefined;
|
|
41
42
|
conversationId?: string;
|
|
42
43
|
createRemoteToolSource?: (config: RemoteMCPToolSourceConfig) => RemoteToolSource;
|
|
43
44
|
onStudioProjectSwitch?: HostedProjectRemoteToolSourceProjectSwitchHandler;
|
|
@@ -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;AAEzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,EAGL,KAAK,6BAA6B,EAClC,KAAK,oBAAoB,EAC1B,MAAM,iCAAiC,CAAC;AAGzC,MAAM,MAAM,4CAA4C,GAAG,CACzD,QAAQ,EAAE,6BAA6B,KACpC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE1B,MAAM,MAAM,iDAAiD,GAAG,CAC9D,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE1B,MAAM,MAAM,6CAA6C,GAAG,CAAC,KAAK,EAAE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAChC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE9B,MAAM,MAAM,wCAAwC,GAAG,CAAC,KAAK,EAAE;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB,KAAK,OAAO,CAAC;AAEd,MAAM,MAAM,wCAAwC,GAAG;IACrD,MAAM,EAAE,gBAAgB,CAAC;IACzB,gBAAgB,CAAC,EAAE,uCAAuC,CAAC;IAC3D,iBAAiB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpD,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9C,8BAA8B,CAAC,EAAE,8BAA8B,CAAC;IAChE,qBAAqB,CAAC,EAAE,qCAAqC,CAAC,uBAAuB,CAAC,CAAC;IACvF,gBAAgB,CAAC,EAAE,6CAA6C,CAAC;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,wCAAwC,CAAC;IAC/D,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,eAAe,CAAC,EAAE,iDAAiD,CAAC;IACpE,kBAAkB,CAAC,EAAE,4CAA4C,CAAC;CACnE,CAAC;AAQF,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,wCAAwC,GAC9C,gBAAgB,CAmHlB;AAED,MAAM,MAAM,yCAAyC,GACjD,IAAI,CACJ,wCAAwC,EACxC,QAAQ,GAAG,iBAAiB,CAC7B,GACC;IACA,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACpD,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC5C,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,yBAAyB,KAAK,gBAAgB,CAAC;IACjF,qBAAqB,CAAC,EAAE,iDAAiD,CAAC;CAC3E,CAAC;
|
|
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;AAEzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,EAGL,KAAK,6BAA6B,EAClC,KAAK,oBAAoB,EAC1B,MAAM,iCAAiC,CAAC;AAGzC,MAAM,MAAM,4CAA4C,GAAG,CACzD,QAAQ,EAAE,6BAA6B,KACpC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE1B,MAAM,MAAM,iDAAiD,GAAG,CAC9D,SAAS,EAAE,MAAM,KACd,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAE1B,MAAM,MAAM,6CAA6C,GAAG,CAAC,KAAK,EAAE;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,oBAAoB,CAAC;CAChC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE9B,MAAM,MAAM,wCAAwC,GAAG,CAAC,KAAK,EAAE;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,KAAK,EAAE,OAAO,CAAC;CAChB,KAAK,OAAO,CAAC;AAEd,MAAM,MAAM,wCAAwC,GAAG;IACrD,MAAM,EAAE,gBAAgB,CAAC;IACzB,gBAAgB,CAAC,EAAE,uCAAuC,CAAC;IAC3D,iBAAiB,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACpD,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IAC9C,8BAA8B,CAAC,EAAE,8BAA8B,CAAC;IAChE,qBAAqB,CAAC,EAAE,qCAAqC,CAAC,uBAAuB,CAAC,CAAC;IACvF,gBAAgB,CAAC,EAAE,6CAA6C,CAAC;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,wCAAwC,CAAC;IAC/D,aAAa,CAAC,EAAE,oBAAoB,CAAC;IACrC,eAAe,CAAC,EAAE,iDAAiD,CAAC;IACpE,kBAAkB,CAAC,EAAE,4CAA4C,CAAC;CACnE,CAAC;AAQF,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,wCAAwC,GAC9C,gBAAgB,CAmHlB;AAED,MAAM,MAAM,yCAAyC,GACjD,IAAI,CACJ,wCAAwC,EACxC,QAAQ,GAAG,iBAAiB,CAC7B,GACC;IACA,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,2BAA2B,EAAE,CAAC;IACpD,aAAa,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC5C,YAAY,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,YAAY,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,yBAAyB,KAAK,gBAAgB,CAAC;IACjF,qBAAqB,CAAC,EAAE,iDAAiD,CAAC;CAC3E,CAAC;AAsFJ,wBAAgB,oCAAoC,CAClD,KAAK,EAAE,yCAAyC,GAC/C,gBAAgB,EAAE,CA8BpB"}
|
|
@@ -91,7 +91,38 @@ export function createHostedProjectRemoteToolSource(input) {
|
|
|
91
91
|
},
|
|
92
92
|
};
|
|
93
93
|
}
|
|
94
|
+
function isVeryfrontApiIntegrationTool(toolName) {
|
|
95
|
+
return /^[a-zA-Z0-9_.-]+__[a-zA-Z0-9_.-]+$/.test(toolName);
|
|
96
|
+
}
|
|
97
|
+
function prepareVeryfrontApiToolInput(input) {
|
|
98
|
+
if (input.server.kind !== "veryfront-api" && !input.prepareToolInput) {
|
|
99
|
+
return undefined;
|
|
100
|
+
}
|
|
101
|
+
return (toolInputContext) => {
|
|
102
|
+
const prepared = input.prepareToolInput?.(toolInputContext) ?? toolInputContext.toolInput;
|
|
103
|
+
if (input.server.kind !== "veryfront-api" ||
|
|
104
|
+
!isVeryfrontApiIntegrationTool(toolInputContext.toolName)) {
|
|
105
|
+
return prepared;
|
|
106
|
+
}
|
|
107
|
+
if (typeof prepared.end_user_id === "string" && prepared.end_user_id.length > 0) {
|
|
108
|
+
return prepared;
|
|
109
|
+
}
|
|
110
|
+
const endUserId = input.getEndUserId?.() ?? toolInputContext.context?.endUserId;
|
|
111
|
+
if (typeof endUserId !== "string" || endUserId.length === 0) {
|
|
112
|
+
return prepared;
|
|
113
|
+
}
|
|
114
|
+
return {
|
|
115
|
+
...prepared,
|
|
116
|
+
end_user_id: endUserId,
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
}
|
|
94
120
|
function createHostedProjectRemoteToolSourceFromConfig(input, server, source, onProjectSwitch) {
|
|
121
|
+
const prepareToolInput = prepareVeryfrontApiToolInput({
|
|
122
|
+
server,
|
|
123
|
+
getEndUserId: input.getEndUserId,
|
|
124
|
+
prepareToolInput: input.prepareToolInput,
|
|
125
|
+
});
|
|
95
126
|
return createHostedProjectRemoteToolSource({
|
|
96
127
|
source,
|
|
97
128
|
...(input.defaultProjectId !== undefined ? { defaultProjectId: input.defaultProjectId } : {}),
|
|
@@ -112,7 +143,7 @@ function createHostedProjectRemoteToolSourceFromConfig(input, server, source, on
|
|
|
112
143
|
}),
|
|
113
144
|
}
|
|
114
145
|
: {}),
|
|
115
|
-
...(
|
|
146
|
+
...(prepareToolInput !== undefined ? { prepareToolInput } : {}),
|
|
116
147
|
...(input.retryToolName !== undefined ? { retryToolName: input.retryToolName } : {}),
|
|
117
148
|
...(input.shouldRetryWithTool !== undefined
|
|
118
149
|
? { shouldRetryWithTool: input.shouldRetryWithTool }
|
|
@@ -4,6 +4,7 @@ export type HostedRuntimeStateResolverContext = DefaultResearchArtifactContext &
|
|
|
4
4
|
branchId?: string | null;
|
|
5
5
|
steeringRevision?: number;
|
|
6
6
|
slashCommandArtifactPathSeen?: boolean;
|
|
7
|
+
userId?: string | null;
|
|
7
8
|
};
|
|
8
9
|
export type HostedRuntimeStateResolverInput = {
|
|
9
10
|
context?: Record<string, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-state-resolver.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/runtime-state-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,8BAA8B,EAGpC,MAAM,yCAAyC,CAAC;AAUjD,MAAM,MAAM,iCAAiC,GAAG,8BAA8B,GAAG;IAC/E,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4BAA4B,CAAC,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-state-resolver.d.ts","sourceRoot":"","sources":["../../../../src/src/agent/hosted/runtime-state-resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,8BAA8B,EAGpC,MAAM,yCAAyC,CAAC;AAUjD,MAAM,MAAM,iCAAiC,GAAG,8BAA8B,GAAG;IAC/E,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4BAA4B,CAAC,EAAE,OAAO,CAAC;IACvC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,+BAA+B,GAAG;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IAC7B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,+BAA+B,CAAC,QAAQ,SAAS,iCAAiC,IAAI;IAChG,WAAW,EAAE,QAAQ,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,0BAA0B,CAAC,QAAQ,SAAS,iCAAiC,IAAI,CAC3F,KAAK,EAAE,+BAA+B,CAAC,QAAQ,CAAC,KAC7C,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAE9B,MAAM,MAAM,uCAAuC,CACjD,QAAQ,SAAS,iCAAiC,IAChD;IACF,WAAW,EAAE,QAAQ,CAAC;IACtB,aAAa,CAAC,EAAE,0BAA0B,CAAC,QAAQ,CAAC,CAAC;CACtD,CAAC;AAcF,wBAAgB,gCAAgC,CAC9C,QAAQ,SAAS,iCAAiC,EAElD,OAAO,EAAE,uCAAuC,CAAC,QAAQ,CAAC,GACzD,CAAC,KAAK,EAAE,+BAA+B,KAAK,OAAO,CAAC,gCAAgC,CAAC,CAsEvF"}
|
|
@@ -24,6 +24,9 @@ export function createHostedRuntimeStateResolver(options) {
|
|
|
24
24
|
currentBranchId !== lastAppliedBranchId;
|
|
25
25
|
let nextSystem = system;
|
|
26
26
|
const nextContextRecord = { ...(context ?? {}) };
|
|
27
|
+
if (typeof options.taskContext.userId === "string" && options.taskContext.userId.length > 0) {
|
|
28
|
+
nextContextRecord.endUserId = options.taskContext.userId;
|
|
29
|
+
}
|
|
27
30
|
if (steeringChanged && options.refreshSystem) {
|
|
28
31
|
nextSystem = await options.refreshSystem({
|
|
29
32
|
taskContext: options.taskContext,
|
|
@@ -83,6 +83,8 @@ async function callRemoteTool(baseUrl, token, toolName, args, endUserId) {
|
|
|
83
83
|
// If MCP CallToolResult format, extract content
|
|
84
84
|
if (result?.content && Array.isArray(result.content)) {
|
|
85
85
|
const text = joinCallToolText(result.content);
|
|
86
|
+
if (result.structuredContent)
|
|
87
|
+
return result.structuredContent;
|
|
86
88
|
if (result.isError) {
|
|
87
89
|
// Try to preserve structured error data (e.g., authentication_required with connectUrl)
|
|
88
90
|
const parsed = parseJsonText(text);
|
|
@@ -90,8 +92,6 @@ async function callRemoteTool(baseUrl, token, toolName, args, endUserId) {
|
|
|
90
92
|
return parsed;
|
|
91
93
|
return { error: "tool_error", message: text };
|
|
92
94
|
}
|
|
93
|
-
if (result.structuredContent)
|
|
94
|
-
return result.structuredContent;
|
|
95
95
|
return parseJsonText(text) ?? text;
|
|
96
96
|
}
|
|
97
97
|
return result;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.1.
|
|
1
|
+
export declare const VERSION = "0.1.540";
|
|
2
2
|
//# sourceMappingURL=version-constant.d.ts.map
|
package/package.json
CHANGED
package/src/deno.js
CHANGED
|
@@ -36,6 +36,7 @@ export type HostedChatRuntimeToolAssemblyContext = DefaultResearchArtifactContex
|
|
|
36
36
|
model?: string;
|
|
37
37
|
clientProfile?: RuntimeClientProfile | null;
|
|
38
38
|
availableToolNames?: string[];
|
|
39
|
+
userId?: string | null;
|
|
39
40
|
};
|
|
40
41
|
|
|
41
42
|
export type HostedChatRuntimeAllowedToolNames = readonly string[] | ReadonlySet<string> | null;
|
|
@@ -127,6 +128,7 @@ export async function prepareHostedChatRuntimeToolAssembly<
|
|
|
127
128
|
createRemoteToolSource: input.createRemoteToolSource ?? createRemoteMCPToolSource,
|
|
128
129
|
defaultProjectId: () => activeProjectId(input.taskContext),
|
|
129
130
|
getProjectId: input.getProjectId ?? (() => activeProjectId(input.taskContext)),
|
|
131
|
+
getEndUserId: () => input.taskContext.userId ?? null,
|
|
130
132
|
getActiveBranchId: input.getActiveBranchId ?? (() => activeBranchId(input.taskContext)),
|
|
131
133
|
conversationId: input.conversationId,
|
|
132
134
|
allowedToolNames,
|
|
@@ -199,17 +199,62 @@ export type CreateHostedProjectRemoteToolSourcesInput =
|
|
|
199
199
|
mcpServers?: readonly AgentServiceMcpServerConfig[];
|
|
200
200
|
clientProfile?: RuntimeClientProfile | null;
|
|
201
201
|
getProjectId: () => string | null | undefined;
|
|
202
|
+
getEndUserId?: () => string | null | undefined;
|
|
202
203
|
conversationId?: string;
|
|
203
204
|
createRemoteToolSource?: (config: RemoteMCPToolSourceConfig) => RemoteToolSource;
|
|
204
205
|
onStudioProjectSwitch?: HostedProjectRemoteToolSourceProjectSwitchHandler;
|
|
205
206
|
};
|
|
206
207
|
|
|
208
|
+
function isVeryfrontApiIntegrationTool(toolName: string): boolean {
|
|
209
|
+
return /^[a-zA-Z0-9_.-]+__[a-zA-Z0-9_.-]+$/.test(toolName);
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
function prepareVeryfrontApiToolInput(input: {
|
|
213
|
+
server: AgentServiceMcpServerConfig;
|
|
214
|
+
getEndUserId?: () => string | null | undefined;
|
|
215
|
+
prepareToolInput?: HostedProjectRemoteToolSourcePrepareToolInput;
|
|
216
|
+
}): HostedProjectRemoteToolSourcePrepareToolInput | undefined {
|
|
217
|
+
if (input.server.kind !== "veryfront-api" && !input.prepareToolInput) {
|
|
218
|
+
return undefined;
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
return (toolInputContext) => {
|
|
222
|
+
const prepared = input.prepareToolInput?.(toolInputContext) ?? toolInputContext.toolInput;
|
|
223
|
+
if (
|
|
224
|
+
input.server.kind !== "veryfront-api" ||
|
|
225
|
+
!isVeryfrontApiIntegrationTool(toolInputContext.toolName)
|
|
226
|
+
) {
|
|
227
|
+
return prepared;
|
|
228
|
+
}
|
|
229
|
+
|
|
230
|
+
if (typeof prepared.end_user_id === "string" && prepared.end_user_id.length > 0) {
|
|
231
|
+
return prepared;
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
const endUserId = input.getEndUserId?.() ?? toolInputContext.context?.endUserId;
|
|
235
|
+
if (typeof endUserId !== "string" || endUserId.length === 0) {
|
|
236
|
+
return prepared;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
return {
|
|
240
|
+
...prepared,
|
|
241
|
+
end_user_id: endUserId,
|
|
242
|
+
};
|
|
243
|
+
};
|
|
244
|
+
}
|
|
245
|
+
|
|
207
246
|
function createHostedProjectRemoteToolSourceFromConfig(
|
|
208
247
|
input: CreateHostedProjectRemoteToolSourcesInput,
|
|
209
248
|
server: AgentServiceMcpServerConfig,
|
|
210
249
|
source: RemoteToolSource,
|
|
211
250
|
onProjectSwitch?: HostedProjectRemoteToolSourceProjectSwitchHandler,
|
|
212
251
|
): RemoteToolSource {
|
|
252
|
+
const prepareToolInput = prepareVeryfrontApiToolInput({
|
|
253
|
+
server,
|
|
254
|
+
getEndUserId: input.getEndUserId,
|
|
255
|
+
prepareToolInput: input.prepareToolInput,
|
|
256
|
+
});
|
|
257
|
+
|
|
213
258
|
return createHostedProjectRemoteToolSource({
|
|
214
259
|
source,
|
|
215
260
|
...(input.defaultProjectId !== undefined ? { defaultProjectId: input.defaultProjectId } : {}),
|
|
@@ -231,7 +276,7 @@ function createHostedProjectRemoteToolSourceFromConfig(
|
|
|
231
276
|
}),
|
|
232
277
|
}
|
|
233
278
|
: {}),
|
|
234
|
-
...(
|
|
279
|
+
...(prepareToolInput !== undefined ? { prepareToolInput } : {}),
|
|
235
280
|
...(input.retryToolName !== undefined ? { retryToolName: input.retryToolName } : {}),
|
|
236
281
|
...(input.shouldRetryWithTool !== undefined
|
|
237
282
|
? { shouldRetryWithTool: input.shouldRetryWithTool }
|
|
@@ -17,6 +17,7 @@ export type HostedRuntimeStateResolverContext = DefaultResearchArtifactContext &
|
|
|
17
17
|
branchId?: string | null;
|
|
18
18
|
steeringRevision?: number;
|
|
19
19
|
slashCommandArtifactPathSeen?: boolean;
|
|
20
|
+
userId?: string | null;
|
|
20
21
|
};
|
|
21
22
|
|
|
22
23
|
export type HostedRuntimeStateResolverInput = {
|
|
@@ -78,6 +79,9 @@ export function createHostedRuntimeStateResolver<
|
|
|
78
79
|
|
|
79
80
|
let nextSystem = system;
|
|
80
81
|
const nextContextRecord = { ...(context ?? {}) };
|
|
82
|
+
if (typeof options.taskContext.userId === "string" && options.taskContext.userId.length > 0) {
|
|
83
|
+
nextContextRecord.endUserId = options.taskContext.userId;
|
|
84
|
+
}
|
|
81
85
|
|
|
82
86
|
if (steeringChanged && options.refreshSystem) {
|
|
83
87
|
nextSystem = await options.refreshSystem({
|
|
@@ -124,6 +124,8 @@ async function callRemoteTool(
|
|
|
124
124
|
if (result?.content && Array.isArray(result.content)) {
|
|
125
125
|
const text = joinCallToolText(result.content as CallToolTextContent[]);
|
|
126
126
|
|
|
127
|
+
if (result.structuredContent) return result.structuredContent;
|
|
128
|
+
|
|
127
129
|
if (result.isError) {
|
|
128
130
|
// Try to preserve structured error data (e.g., authentication_required with connectUrl)
|
|
129
131
|
const parsed = parseJsonText(text);
|
|
@@ -131,8 +133,6 @@ async function callRemoteTool(
|
|
|
131
133
|
return { error: "tool_error", message: text };
|
|
132
134
|
}
|
|
133
135
|
|
|
134
|
-
if (result.structuredContent) return result.structuredContent;
|
|
135
|
-
|
|
136
136
|
return parseJsonText(text) ?? text;
|
|
137
137
|
}
|
|
138
138
|
|