experimental-agent 0.5.0 → 0.6.1

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.
Files changed (47) hide show
  1. package/dist/{adapter-Cl735Kp4.d.mts → adapter-txsF6hou.d.mts} +2 -0
  2. package/dist/{adapter-Cl735Kp4.d.ts → adapter-txsF6hou.d.ts} +2 -0
  3. package/dist/{chunk-AB2JYY6A.mjs → chunk-CCWLV27N.mjs} +10 -2
  4. package/dist/chunk-CS2SEUAA.mjs +405 -0
  5. package/dist/{chunk-6MS4CGEZ.mjs → chunk-D35AQN7O.mjs} +5 -5
  6. package/dist/chunk-LZOMFHX3.mjs +38 -0
  7. package/dist/chunk-PH2FXKOU.mjs +9 -0
  8. package/dist/client-B2ohNvwc.d.mts +494 -0
  9. package/dist/client-BbQZtxca.d.ts +494 -0
  10. package/dist/client.mjs +1 -1
  11. package/dist/{docker-OBUQX5ZI.mjs → docker-FCSNVBEQ.mjs} +1 -1
  12. package/dist/{entry-Bs17QEiq.d.mts → entry-BUiucCNp.d.mts} +1 -1
  13. package/dist/{entry-QNyd4S1s.d.ts → entry-ok9EBUS3.d.ts} +1 -1
  14. package/dist/index.d.mts +475 -475
  15. package/dist/index.d.ts +475 -475
  16. package/dist/index.js +16595 -245
  17. package/dist/index.mjs +16406 -117
  18. package/dist/lifecycle-workflow-steps.d.mts +2 -2
  19. package/dist/lifecycle-workflow-steps.d.ts +2 -2
  20. package/dist/lifecycle-workflow-steps.mjs +1 -1
  21. package/dist/lifecycle-workflow.d.mts +2 -2
  22. package/dist/lifecycle-workflow.d.ts +2 -2
  23. package/dist/lifecycle-workflow.mjs +1 -1
  24. package/dist/{local-4C3V4EFS.mjs → local-NXHIUJTO.mjs} +1 -1
  25. package/dist/next/loader.js +10 -2
  26. package/dist/next/loader.mjs +2 -2
  27. package/dist/next.js +10 -2
  28. package/dist/next.mjs +2 -2
  29. package/dist/{process-manager-WQHAIVRB.mjs → process-manager-26NELLRU.mjs} +1 -1
  30. package/dist/react.d.mts +56 -0
  31. package/dist/react.d.ts +56 -0
  32. package/dist/react.js +144 -0
  33. package/dist/react.mjs +117 -0
  34. package/dist/sandbox.d.mts +3 -3
  35. package/dist/sandbox.d.ts +3 -3
  36. package/dist/sandbox.js +5 -5
  37. package/dist/sandbox.mjs +2 -2
  38. package/dist/{steps-XA4wG8W3.d.ts → steps-BOKeU8X3.d.ts} +3 -2
  39. package/dist/{steps-eTytqxQb.d.mts → steps-Mi3sjYbD.d.mts} +3 -2
  40. package/dist/storage.d.mts +2 -2
  41. package/dist/storage.d.ts +2 -2
  42. package/dist/storage.js +107 -48
  43. package/dist/storage.mjs +2 -2
  44. package/dist/{vercel-6ORAC625.mjs → vercel-BOGHAFI4.mjs} +2 -2
  45. package/package.json +9 -1
  46. package/dist/chunk-BJTO5JO5.mjs +0 -11
  47. package/dist/chunk-I5DCB7RU.mjs +0 -346
package/dist/react.js ADDED
@@ -0,0 +1,144 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/react/index.ts
21
+ var react_exports = {};
22
+ __export(react_exports, {
23
+ useAgent: () => useAgent,
24
+ useInterruptSession: () => useInterruptSession,
25
+ useSessionHistory: () => useSessionHistory
26
+ });
27
+ module.exports = __toCommonJS(react_exports);
28
+
29
+ // src/react/use-agent.ts
30
+ var import_react = require("@ai-sdk/react");
31
+ var import_ai = require("ai");
32
+ var import_react2 = require("react");
33
+
34
+ // src/rpc/base-path.ts
35
+ function basePathForAgent(agent) {
36
+ return `/api/agents/${agent}`;
37
+ }
38
+
39
+ // src/react/use-agent.ts
40
+ function useAgent(name, {
41
+ headers,
42
+ id,
43
+ ...options
44
+ } = {}) {
45
+ const basePath = options.basePath ?? basePathForAgent(name);
46
+ const [agentStatus, setAgentStatus] = (0, import_react2.useState)(null);
47
+ const onData = (0, import_react2.useRef)(options.onData);
48
+ (0, import_react2.useEffect)(() => {
49
+ onData.current = options.onData;
50
+ }, [options.onData]);
51
+ const chat = (0, import_react.useChat)({
52
+ chat: (0, import_react2.useMemo)(
53
+ () => new import_react.Chat({
54
+ id,
55
+ transport: new import_ai.DefaultChatTransport({
56
+ api: basePath,
57
+ prepareSendMessagesRequest: async ({ messages }) => {
58
+ const h = await (typeof headers === "function" ? headers() : headers);
59
+ const lastAssistant = messages.findLast(
60
+ (m) => m.role === "assistant"
61
+ );
62
+ const lastPartContent = lastAssistant?.parts.at(-1);
63
+ const lastPart = lastAssistant && lastPartContent != null ? {
64
+ index: lastAssistant.parts.length - 1,
65
+ part: lastPartContent
66
+ } : void 0;
67
+ const body = {
68
+ message: messages.at(-1),
69
+ interruptIfStreaming: lastPart ? { lastPart } : true
70
+ };
71
+ return {
72
+ body,
73
+ headers: new Headers(h),
74
+ api: `${basePath}/${id}`
75
+ };
76
+ },
77
+ prepareReconnectToStreamRequest: async (request) => {
78
+ const h = await (typeof headers === "function" ? headers() : headers);
79
+ return {
80
+ ...request,
81
+ api: `${basePath}/${id}/reconnect`,
82
+ headers: h
83
+ };
84
+ }
85
+ }),
86
+ onData: (_part) => {
87
+ const part = _part;
88
+ if (part.type === "data-status") {
89
+ setAgentStatus(part.data);
90
+ }
91
+ onData.current?.(part);
92
+ }
93
+ }),
94
+ [id, basePath, headers]
95
+ )
96
+ });
97
+ return {
98
+ chat,
99
+ agentStatus
100
+ };
101
+ }
102
+
103
+ // src/react/use-history-query.ts
104
+ var import_react_query2 = require("@tanstack/react-query");
105
+
106
+ // src/react/use-query.ts
107
+ var import_react_query = require("@tanstack/react-query");
108
+ var client = new import_react_query.QueryClient();
109
+ function useQuery(options) {
110
+ return (0, import_react_query.useQuery)(options, client);
111
+ }
112
+
113
+ // src/react/use-history-query.ts
114
+ function useSessionHistory(options) {
115
+ return useQuery({
116
+ ...options.options,
117
+ queryKey: ["history", options.sessionId],
118
+ queryFn: options.sessionId ? async () => {
119
+ const path = `${options.basePath}/${options.sessionId}`;
120
+ return await fetch(path).then((res) => res.json());
121
+ } : import_react_query2.skipToken
122
+ });
123
+ }
124
+
125
+ // src/react/use-interrupt.ts
126
+ var import_react_query3 = require("@tanstack/react-query");
127
+ function useInterruptSession(options) {
128
+ return (0, import_react_query3.useMutation)({
129
+ mutationFn: async (input) => {
130
+ const path = `${options.basePath}/${options.sessionId}/interrupt`;
131
+ return await fetch(path, {
132
+ method: "POST",
133
+ body: JSON.stringify(input)
134
+ }).then((res) => res.json());
135
+ }
136
+ });
137
+ }
138
+ // Annotate the CommonJS export names for ESM import in node:
139
+ 0 && (module.exports = {
140
+ useAgent,
141
+ useInterruptSession,
142
+ useSessionHistory
143
+ });
144
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3JlYWN0L2luZGV4LnRzIiwgIi4uL3NyYy9yZWFjdC91c2UtYWdlbnQudHMiLCAiLi4vc3JjL3JwYy9iYXNlLXBhdGgudHMiLCAiLi4vc3JjL3JlYWN0L3VzZS1oaXN0b3J5LXF1ZXJ5LnRzIiwgIi4uL3NyYy9yZWFjdC91c2UtcXVlcnkudHMiLCAiLi4vc3JjL3JlYWN0L3VzZS1pbnRlcnJ1cHQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImV4cG9ydCB7IHVzZUFnZW50IH0gZnJvbSBcIi4vdXNlLWFnZW50XCI7XG5leHBvcnQgeyB1c2VTZXNzaW9uSGlzdG9yeSB9IGZyb20gXCIuL3VzZS1oaXN0b3J5LXF1ZXJ5XCI7XG5leHBvcnQgeyB1c2VJbnRlcnJ1cHRTZXNzaW9uIH0gZnJvbSBcIi4vdXNlLWludGVycnVwdFwiO1xuIiwgImltcG9ydCB7IENoYXQsIHVzZUNoYXQgfSBmcm9tIFwiQGFpLXNkay9yZWFjdFwiO1xuaW1wb3J0IHsgRGVmYXVsdENoYXRUcmFuc3BvcnQgfSBmcm9tIFwiYWlcIjtcbmltcG9ydCB7IHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHR5cGUgeyBBZ2VudFN0YXR1cywgQW55QWdlbnQgfSBmcm9tIFwiLi4vYWdlbnQvY2xpZW50XCI7XG5pbXBvcnQgeyBiYXNlUGF0aEZvckFnZW50IH0gZnJvbSBcIi4uL3JwYy9iYXNlLXBhdGhcIjtcblxudHlwZSBEYXRhRXZlbnQgPSB7XG4gIHR5cGU6IFwiZGF0YS1zdGF0dXNcIjtcbiAgZGF0YTogQWdlbnRTdGF0dXM7XG59O1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlQWdlbnQ8QWdlbnQgZXh0ZW5kcyBBbnlBZ2VudD4oXG4gIG5hbWU6IEFnZW50W1wibmFtZVwiXSxcbiAge1xuICAgIGhlYWRlcnMsXG4gICAgaWQsXG4gICAgLi4ub3B0aW9uc1xuICB9OiB7XG4gICAgYmFzZVBhdGg/OiBzdHJpbmc7XG4gICAgaGVhZGVycz86IEhlYWRlcnNJbml0IHwgKCgpID0+IFByb21pc2U8SGVhZGVyc0luaXQ+KTtcbiAgICBpZD86IHN0cmluZztcbiAgICBvbkRhdGE/OiAoZGF0YTogRGF0YUV2ZW50KSA9PiB2b2lkO1xuICB9ID0ge31cbikge1xuICBjb25zdCBiYXNlUGF0aCA9IG9wdGlvbnMuYmFzZVBhdGggPz8gYmFzZVBhdGhGb3JBZ2VudChuYW1lKTtcbiAgY29uc3QgW2FnZW50U3RhdHVzLCBzZXRBZ2VudFN0YXR1c10gPSB1c2VTdGF0ZTxBZ2VudFN0YXR1cyB8IG51bGw+KG51bGwpO1xuICBjb25zdCBvbkRhdGEgPSB1c2VSZWYob3B0aW9ucy5vbkRhdGEpO1xuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIG9uRGF0YS5jdXJyZW50ID0gb3B0aW9ucy5vbkRhdGE7XG4gIH0sIFtvcHRpb25zLm9uRGF0YV0pO1xuICBjb25zdCBjaGF0ID0gdXNlQ2hhdDxBZ2VudFtcIiRVSU1lc3NhZ2VcIl0+KHtcbiAgICBjaGF0OiB1c2VNZW1vKFxuICAgICAgKCkgPT5cbiAgICAgICAgbmV3IENoYXQoe1xuICAgICAgICAgIGlkLFxuICAgICAgICAgIHRyYW5zcG9ydDogbmV3IERlZmF1bHRDaGF0VHJhbnNwb3J0KHtcbiAgICAgICAgICAgIGFwaTogYmFzZVBhdGgsXG4gICAgICAgICAgICBwcmVwYXJlU2VuZE1lc3NhZ2VzUmVxdWVzdDogYXN5bmMgKHsgbWVzc2FnZXMgfSkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBoID0gYXdhaXQgKHR5cGVvZiBoZWFkZXJzID09PSBcImZ1bmN0aW9uXCJcbiAgICAgICAgICAgICAgICA/IGhlYWRlcnMoKVxuICAgICAgICAgICAgICAgIDogaGVhZGVycyk7XG4gICAgICAgICAgICAgIGNvbnN0IGxhc3RBc3Npc3RhbnQgPSBtZXNzYWdlcy5maW5kTGFzdChcbiAgICAgICAgICAgICAgICAobSkgPT4gbS5yb2xlID09PSBcImFzc2lzdGFudFwiXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGNvbnN0IGxhc3RQYXJ0Q29udGVudCA9IGxhc3RBc3Npc3RhbnQ/LnBhcnRzLmF0KC0xKTtcbiAgICAgICAgICAgICAgY29uc3QgbGFzdFBhcnQgPVxuICAgICAgICAgICAgICAgIGxhc3RBc3Npc3RhbnQgJiYgbGFzdFBhcnRDb250ZW50ICE9IG51bGxcbiAgICAgICAgICAgICAgICAgID8ge1xuICAgICAgICAgICAgICAgICAgICAgIGluZGV4OiBsYXN0QXNzaXN0YW50LnBhcnRzLmxlbmd0aCAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgcGFydDogbGFzdFBhcnRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgY29uc3QgYm9keTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7XG4gICAgICAgICAgICAgICAgbWVzc2FnZTogbWVzc2FnZXMuYXQoLTEpLFxuICAgICAgICAgICAgICAgIGludGVycnVwdElmU3RyZWFtaW5nOiBsYXN0UGFydCA/IHsgbGFzdFBhcnQgfSA6IHRydWUsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgYm9keSxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiBuZXcgSGVhZGVycyhoKSxcbiAgICAgICAgICAgICAgICBhcGk6IGAke2Jhc2VQYXRofS8ke2lkfWAsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcHJlcGFyZVJlY29ubmVjdFRvU3RyZWFtUmVxdWVzdDogYXN5bmMgKHJlcXVlc3QpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgaCA9IGF3YWl0ICh0eXBlb2YgaGVhZGVycyA9PT0gXCJmdW5jdGlvblwiXG4gICAgICAgICAgICAgICAgPyBoZWFkZXJzKClcbiAgICAgICAgICAgICAgICA6IGhlYWRlcnMpO1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIC4uLnJlcXVlc3QsXG4gICAgICAgICAgICAgICAgYXBpOiBgJHtiYXNlUGF0aH0vJHtpZH0vcmVjb25uZWN0YCxcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiBoLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBvbkRhdGE6IChfcGFydCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgcGFydCA9IF9wYXJ0IGFzIHVua25vd24gYXMgRGF0YUV2ZW50O1xuICAgICAgICAgICAgaWYgKHBhcnQudHlwZSA9PT0gXCJkYXRhLXN0YXR1c1wiKSB7XG4gICAgICAgICAgICAgIHNldEFnZW50U3RhdHVzKHBhcnQuZGF0YSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBvbkRhdGEuY3VycmVudD8uKHBhcnQpO1xuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICAgW2lkLCBiYXNlUGF0aCwgaGVhZGVyc11cbiAgICApLFxuICB9KTtcblxuICByZXR1cm4ge1xuICAgIGNoYXQsXG4gICAgYWdlbnRTdGF0dXMsXG4gIH07XG59XG4iLCAiZXhwb3J0IHR5cGUgQmFzZVBhdGggPSBgL2FwaS9hZ2VudHMvW2FnZW50XWA7XG5leHBvcnQgdHlwZSBTZXNzaW9uUGF0aCA9IGAke0Jhc2VQYXRoIHwgKHN0cmluZyAmIHt9KX0vW3Nlc3Npb25JZF1gO1xuZXhwb3J0IHR5cGUgUmVjb25uZWN0UGF0aCA9IGAke1Nlc3Npb25QYXRoIHwgKHN0cmluZyAmIHt9KX0vcmVjb25uZWN0YDtcbmV4cG9ydCB0eXBlIEludGVycnVwdFBhdGggPSBgJHtTZXNzaW9uUGF0aCB8IChzdHJpbmcgJiB7fSl9L2ludGVycnVwdGA7XG5cbmV4cG9ydCB0eXBlIFBhdGggPSBTZXNzaW9uUGF0aCB8IFJlY29ubmVjdFBhdGggfCBJbnRlcnJ1cHRQYXRoO1xuXG5leHBvcnQgZnVuY3Rpb24gYmFzZVBhdGhGb3JBZ2VudChhZ2VudDogc3RyaW5nKSB7XG4gIHJldHVybiBgL2FwaS9hZ2VudHMvJHthZ2VudH1gIGFzIGNvbnN0O1xufVxuIiwgImltcG9ydCB7IHR5cGUgUXVlcnlPcHRpb25zLCBza2lwVG9rZW4gfSBmcm9tIFwiQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5XCI7XG5pbXBvcnQgdHlwZSB7IEFueUFnZW50IH0gZnJvbSBcIi4uL2FnZW50L2NsaWVudFwiO1xuaW1wb3J0IHsgdXNlUXVlcnkgfSBmcm9tIFwiLi91c2UtcXVlcnlcIjtcblxudHlwZSBSZXNwb25zZTxBZ2VudCBleHRlbmRzIEFueUFnZW50PiA9IEF3YWl0ZWQ8XG4gIFJldHVyblR5cGU8UmV0dXJuVHlwZTxBZ2VudFtcInNlc3Npb25cIl0+W1wiaGlzdG9yeVwiXT5cbj47XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VTZXNzaW9uSGlzdG9yeTxBZ2VudCBleHRlbmRzIEFueUFnZW50PihvcHRpb25zOiB7XG4gIGJhc2VQYXRoPzogc3RyaW5nO1xuICBzZXNzaW9uSWQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgb3B0aW9ucz86IE9taXQ8UXVlcnlPcHRpb25zPFJlc3BvbnNlPEFnZW50Pj4sIFwicXVlcnlLZXlcIiB8IFwicXVlcnlGblwiPjtcbn0pIHtcbiAgcmV0dXJuIHVzZVF1ZXJ5PFJlc3BvbnNlPEFnZW50Pj4oe1xuICAgIC4uLm9wdGlvbnMub3B0aW9ucyxcbiAgICBxdWVyeUtleTogW1wiaGlzdG9yeVwiLCBvcHRpb25zLnNlc3Npb25JZF0sXG4gICAgcXVlcnlGbjogb3B0aW9ucy5zZXNzaW9uSWRcbiAgICAgID8gYXN5bmMgKCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHBhdGggPSBgJHtvcHRpb25zLmJhc2VQYXRofS8ke29wdGlvbnMuc2Vzc2lvbklkfWA7XG4gICAgICAgICAgcmV0dXJuIGF3YWl0IGZldGNoKHBhdGgpLnRoZW4oKHJlcykgPT4gcmVzLmpzb24oKSk7XG4gICAgICAgIH1cbiAgICAgIDogc2tpcFRva2VuLFxuICB9KTtcbn1cbiIsICJpbXBvcnQge1xuICBRdWVyeUNsaWVudCxcbiAgdHlwZSBVc2VNdXRhdGlvbk9wdGlvbnMsXG4gIHR5cGUgVXNlUXVlcnlPcHRpb25zLFxuICB1c2VNdXRhdGlvbiBhcyB1c2VVcHN0cmVhbU11dGF0aW9uLFxuICB1c2VRdWVyeSBhcyB1c2VVcHN0cmVhbVF1ZXJ5LFxufSBmcm9tIFwiQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5XCI7XG5cbmNvbnN0IGNsaWVudCA9IG5ldyBRdWVyeUNsaWVudCgpO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlUXVlcnk8VD4ob3B0aW9uczogVXNlUXVlcnlPcHRpb25zPFQ+KSB7XG4gIHJldHVybiB1c2VVcHN0cmVhbVF1ZXJ5PFQ+KG9wdGlvbnMsIGNsaWVudCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VNdXRhdGlvbjxULCBWYXJpYWJsZXMsIEVycm9yLCBEYXRhPihcbiAgb3B0aW9uczogVXNlTXV0YXRpb25PcHRpb25zPFQsIFZhcmlhYmxlcywgRXJyb3IsIERhdGE+XG4pIHtcbiAgcmV0dXJuIHVzZVVwc3RyZWFtTXV0YXRpb248VCwgVmFyaWFibGVzLCBFcnJvciwgRGF0YT4ob3B0aW9ucywgY2xpZW50KTtcbn1cbiIsICJpbXBvcnQgeyB1c2VNdXRhdGlvbiB9IGZyb20gXCJAdGFuc3RhY2svcmVhY3QtcXVlcnlcIjtcbmltcG9ydCB0eXBlIHsgQW55QWdlbnQgfSBmcm9tIFwiLi4vYWdlbnQvY2xpZW50XCI7XG5cbnR5cGUgRm48QWdlbnQgZXh0ZW5kcyBBbnlBZ2VudD4gPSBSZXR1cm5UeXBlPEFnZW50W1wic2Vzc2lvblwiXT5bXCJpbnRlcnJ1cHRcIl07XG50eXBlIFJlc3BvbnNlPEFnZW50IGV4dGVuZHMgQW55QWdlbnQ+ID0gQXdhaXRlZDxSZXR1cm5UeXBlPEZuPEFnZW50Pj4+O1xudHlwZSBWYXJpYWJsZXM8QWdlbnQgZXh0ZW5kcyBBbnlBZ2VudD4gPSBQYXJhbWV0ZXJzPEZuPEFnZW50Pj5bMF07XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VJbnRlcnJ1cHRTZXNzaW9uPEFnZW50IGV4dGVuZHMgQW55QWdlbnQ+KG9wdGlvbnM6IHtcbiAgYmFzZVBhdGg/OiBzdHJpbmc7XG4gIHNlc3Npb25JZDogc3RyaW5nO1xufSkge1xuICByZXR1cm4gdXNlTXV0YXRpb248UmVzcG9uc2U8QWdlbnQ+LCBFcnJvciwgVmFyaWFibGVzPEFnZW50Piwgdm9pZD4oe1xuICAgIG11dGF0aW9uRm46IGFzeW5jIChpbnB1dCkgPT4ge1xuICAgICAgY29uc3QgcGF0aCA9IGAke29wdGlvbnMuYmFzZVBhdGh9LyR7b3B0aW9ucy5zZXNzaW9uSWR9L2ludGVycnVwdGA7XG4gICAgICByZXR1cm4gYXdhaXQgZmV0Y2gocGF0aCwge1xuICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShpbnB1dCksXG4gICAgICB9KS50aGVuKChyZXMpID0+IHJlcy5qc29uKCkpO1xuICAgIH0sXG4gIH0pO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7O0FDQUEsbUJBQThCO0FBQzlCLGdCQUFxQztBQUNyQyxJQUFBQSxnQkFBcUQ7OztBQ0s5QyxTQUFTLGlCQUFpQixPQUFlO0FBQzlDLFNBQU8sZUFBZSxLQUFLO0FBQzdCOzs7QURFTyxTQUFTLFNBQ2QsTUFDQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsRUFDQSxHQUFHO0FBQ0wsSUFLSSxDQUFDLEdBQ0w7QUFDQSxRQUFNLFdBQVcsUUFBUSxZQUFZLGlCQUFpQixJQUFJO0FBQzFELFFBQU0sQ0FBQyxhQUFhLGNBQWMsUUFBSSx3QkFBNkIsSUFBSTtBQUN2RSxRQUFNLGFBQVMsc0JBQU8sUUFBUSxNQUFNO0FBQ3BDLCtCQUFVLE1BQU07QUFDZCxXQUFPLFVBQVUsUUFBUTtBQUFBLEVBQzNCLEdBQUcsQ0FBQyxRQUFRLE1BQU0sQ0FBQztBQUNuQixRQUFNLFdBQU8sc0JBQTZCO0FBQUEsSUFDeEMsVUFBTTtBQUFBLE1BQ0osTUFDRSxJQUFJLGtCQUFLO0FBQUEsUUFDUDtBQUFBLFFBQ0EsV0FBVyxJQUFJLCtCQUFxQjtBQUFBLFVBQ2xDLEtBQUs7QUFBQSxVQUNMLDRCQUE0QixPQUFPLEVBQUUsU0FBUyxNQUFNO0FBQ2xELGtCQUFNLElBQUksT0FBTyxPQUFPLFlBQVksYUFDaEMsUUFBUSxJQUNSO0FBQ0osa0JBQU0sZ0JBQWdCLFNBQVM7QUFBQSxjQUM3QixDQUFDLE1BQU0sRUFBRSxTQUFTO0FBQUEsWUFDcEI7QUFDQSxrQkFBTSxrQkFBa0IsZUFBZSxNQUFNLEdBQUcsRUFBRTtBQUNsRCxrQkFBTSxXQUNKLGlCQUFpQixtQkFBbUIsT0FDaEM7QUFBQSxjQUNFLE9BQU8sY0FBYyxNQUFNLFNBQVM7QUFBQSxjQUNwQyxNQUFNO0FBQUEsWUFDUixJQUNBO0FBQ04sa0JBQU0sT0FBZ0M7QUFBQSxjQUNwQyxTQUFTLFNBQVMsR0FBRyxFQUFFO0FBQUEsY0FDdkIsc0JBQXNCLFdBQVcsRUFBRSxTQUFTLElBQUk7QUFBQSxZQUNsRDtBQUNBLG1CQUFPO0FBQUEsY0FDTDtBQUFBLGNBQ0EsU0FBUyxJQUFJLFFBQVEsQ0FBQztBQUFBLGNBQ3RCLEtBQUssR0FBRyxRQUFRLElBQUksRUFBRTtBQUFBLFlBQ3hCO0FBQUEsVUFDRjtBQUFBLFVBQ0EsaUNBQWlDLE9BQU8sWUFBWTtBQUNsRCxrQkFBTSxJQUFJLE9BQU8sT0FBTyxZQUFZLGFBQ2hDLFFBQVEsSUFDUjtBQUNKLG1CQUFPO0FBQUEsY0FDTCxHQUFHO0FBQUEsY0FDSCxLQUFLLEdBQUcsUUFBUSxJQUFJLEVBQUU7QUFBQSxjQUN0QixTQUFTO0FBQUEsWUFDWDtBQUFBLFVBQ0Y7QUFBQSxRQUNGLENBQUM7QUFBQSxRQUNELFFBQVEsQ0FBQyxVQUFVO0FBQ2pCLGdCQUFNLE9BQU87QUFDYixjQUFJLEtBQUssU0FBUyxlQUFlO0FBQy9CLDJCQUFlLEtBQUssSUFBSTtBQUFBLFVBQzFCO0FBQ0EsaUJBQU8sVUFBVSxJQUFJO0FBQUEsUUFDdkI7QUFBQSxNQUNGLENBQUM7QUFBQSxNQUNILENBQUMsSUFBSSxVQUFVLE9BQU87QUFBQSxJQUN4QjtBQUFBLEVBQ0YsQ0FBQztBQUVELFNBQU87QUFBQSxJQUNMO0FBQUEsSUFDQTtBQUFBLEVBQ0Y7QUFDRjs7O0FFekZBLElBQUFDLHNCQUE2Qzs7O0FDQTdDLHlCQU1PO0FBRVAsSUFBTSxTQUFTLElBQUksK0JBQVk7QUFFeEIsU0FBUyxTQUFZLFNBQTZCO0FBQ3ZELGFBQU8sbUJBQUFDLFVBQW9CLFNBQVMsTUFBTTtBQUM1Qzs7O0FESk8sU0FBUyxrQkFBMEMsU0FJdkQ7QUFDRCxTQUFPLFNBQTBCO0FBQUEsSUFDL0IsR0FBRyxRQUFRO0FBQUEsSUFDWCxVQUFVLENBQUMsV0FBVyxRQUFRLFNBQVM7QUFBQSxJQUN2QyxTQUFTLFFBQVEsWUFDYixZQUFZO0FBQ1YsWUFBTSxPQUFPLEdBQUcsUUFBUSxRQUFRLElBQUksUUFBUSxTQUFTO0FBQ3JELGFBQU8sTUFBTSxNQUFNLElBQUksRUFBRSxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQztBQUFBLElBQ25ELElBQ0E7QUFBQSxFQUNOLENBQUM7QUFDSDs7O0FFdkJBLElBQUFDLHNCQUE0QjtBQU9yQixTQUFTLG9CQUE0QyxTQUd6RDtBQUNELGFBQU8saUNBQTREO0FBQUEsSUFDakUsWUFBWSxPQUFPLFVBQVU7QUFDM0IsWUFBTSxPQUFPLEdBQUcsUUFBUSxRQUFRLElBQUksUUFBUSxTQUFTO0FBQ3JELGFBQU8sTUFBTSxNQUFNLE1BQU07QUFBQSxRQUN2QixRQUFRO0FBQUEsUUFDUixNQUFNLEtBQUssVUFBVSxLQUFLO0FBQUEsTUFDNUIsQ0FBQyxFQUFFLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDO0FBQUEsSUFDN0I7QUFBQSxFQUNGLENBQUM7QUFDSDsiLAogICJuYW1lcyI6IFsiaW1wb3J0X3JlYWN0IiwgImltcG9ydF9yZWFjdF9xdWVyeSIsICJ1c2VVcHN0cmVhbVF1ZXJ5IiwgImltcG9ydF9yZWFjdF9xdWVyeSJdCn0K
package/dist/react.mjs ADDED
@@ -0,0 +1,117 @@
1
+ import {
2
+ basePathForAgent
3
+ } from "./chunk-PH2FXKOU.mjs";
4
+ import "./chunk-LZOMFHX3.mjs";
5
+
6
+ // src/react/use-agent.ts
7
+ import { Chat, useChat } from "@ai-sdk/react";
8
+ import { DefaultChatTransport } from "ai";
9
+ import { useEffect, useMemo, useRef, useState } from "react";
10
+ function useAgent(name, {
11
+ headers,
12
+ id,
13
+ ...options
14
+ } = {}) {
15
+ const basePath = options.basePath ?? basePathForAgent(name);
16
+ const [agentStatus, setAgentStatus] = useState(null);
17
+ const onData = useRef(options.onData);
18
+ useEffect(() => {
19
+ onData.current = options.onData;
20
+ }, [options.onData]);
21
+ const chat = useChat({
22
+ chat: useMemo(
23
+ () => new Chat({
24
+ id,
25
+ transport: new DefaultChatTransport({
26
+ api: basePath,
27
+ prepareSendMessagesRequest: async ({ messages }) => {
28
+ const h = await (typeof headers === "function" ? headers() : headers);
29
+ const lastAssistant = messages.findLast(
30
+ (m) => m.role === "assistant"
31
+ );
32
+ const lastPartContent = lastAssistant?.parts.at(-1);
33
+ const lastPart = lastAssistant && lastPartContent != null ? {
34
+ index: lastAssistant.parts.length - 1,
35
+ part: lastPartContent
36
+ } : void 0;
37
+ const body = {
38
+ message: messages.at(-1),
39
+ interruptIfStreaming: lastPart ? { lastPart } : true
40
+ };
41
+ return {
42
+ body,
43
+ headers: new Headers(h),
44
+ api: `${basePath}/${id}`
45
+ };
46
+ },
47
+ prepareReconnectToStreamRequest: async (request) => {
48
+ const h = await (typeof headers === "function" ? headers() : headers);
49
+ return {
50
+ ...request,
51
+ api: `${basePath}/${id}/reconnect`,
52
+ headers: h
53
+ };
54
+ }
55
+ }),
56
+ onData: (_part) => {
57
+ const part = _part;
58
+ if (part.type === "data-status") {
59
+ setAgentStatus(part.data);
60
+ }
61
+ onData.current?.(part);
62
+ }
63
+ }),
64
+ [id, basePath, headers]
65
+ )
66
+ });
67
+ return {
68
+ chat,
69
+ agentStatus
70
+ };
71
+ }
72
+
73
+ // src/react/use-history-query.ts
74
+ import { skipToken } from "@tanstack/react-query";
75
+
76
+ // src/react/use-query.ts
77
+ import {
78
+ QueryClient,
79
+ useMutation as useUpstreamMutation,
80
+ useQuery as useUpstreamQuery
81
+ } from "@tanstack/react-query";
82
+ var client = new QueryClient();
83
+ function useQuery(options) {
84
+ return useUpstreamQuery(options, client);
85
+ }
86
+
87
+ // src/react/use-history-query.ts
88
+ function useSessionHistory(options) {
89
+ return useQuery({
90
+ ...options.options,
91
+ queryKey: ["history", options.sessionId],
92
+ queryFn: options.sessionId ? async () => {
93
+ const path = `${options.basePath}/${options.sessionId}`;
94
+ return await fetch(path).then((res) => res.json());
95
+ } : skipToken
96
+ });
97
+ }
98
+
99
+ // src/react/use-interrupt.ts
100
+ import { useMutation } from "@tanstack/react-query";
101
+ function useInterruptSession(options) {
102
+ return useMutation({
103
+ mutationFn: async (input) => {
104
+ const path = `${options.basePath}/${options.sessionId}/interrupt`;
105
+ return await fetch(path, {
106
+ method: "POST",
107
+ body: JSON.stringify(input)
108
+ }).then((res) => res.json());
109
+ }
110
+ });
111
+ }
112
+ export {
113
+ useAgent,
114
+ useInterruptSession,
115
+ useSessionHistory
116
+ };
117
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3JlYWN0L3VzZS1hZ2VudC50cyIsICIuLi9zcmMvcmVhY3QvdXNlLWhpc3RvcnktcXVlcnkudHMiLCAiLi4vc3JjL3JlYWN0L3VzZS1xdWVyeS50cyIsICIuLi9zcmMvcmVhY3QvdXNlLWludGVycnVwdC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHsgQ2hhdCwgdXNlQ2hhdCB9IGZyb20gXCJAYWktc2RrL3JlYWN0XCI7XG5pbXBvcnQgeyBEZWZhdWx0Q2hhdFRyYW5zcG9ydCB9IGZyb20gXCJhaVwiO1xuaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgdHlwZSB7IEFnZW50U3RhdHVzLCBBbnlBZ2VudCB9IGZyb20gXCIuLi9hZ2VudC9jbGllbnRcIjtcbmltcG9ydCB7IGJhc2VQYXRoRm9yQWdlbnQgfSBmcm9tIFwiLi4vcnBjL2Jhc2UtcGF0aFwiO1xuXG50eXBlIERhdGFFdmVudCA9IHtcbiAgdHlwZTogXCJkYXRhLXN0YXR1c1wiO1xuICBkYXRhOiBBZ2VudFN0YXR1cztcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VBZ2VudDxBZ2VudCBleHRlbmRzIEFueUFnZW50PihcbiAgbmFtZTogQWdlbnRbXCJuYW1lXCJdLFxuICB7XG4gICAgaGVhZGVycyxcbiAgICBpZCxcbiAgICAuLi5vcHRpb25zXG4gIH06IHtcbiAgICBiYXNlUGF0aD86IHN0cmluZztcbiAgICBoZWFkZXJzPzogSGVhZGVyc0luaXQgfCAoKCkgPT4gUHJvbWlzZTxIZWFkZXJzSW5pdD4pO1xuICAgIGlkPzogc3RyaW5nO1xuICAgIG9uRGF0YT86IChkYXRhOiBEYXRhRXZlbnQpID0+IHZvaWQ7XG4gIH0gPSB7fVxuKSB7XG4gIGNvbnN0IGJhc2VQYXRoID0gb3B0aW9ucy5iYXNlUGF0aCA/PyBiYXNlUGF0aEZvckFnZW50KG5hbWUpO1xuICBjb25zdCBbYWdlbnRTdGF0dXMsIHNldEFnZW50U3RhdHVzXSA9IHVzZVN0YXRlPEFnZW50U3RhdHVzIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IG9uRGF0YSA9IHVzZVJlZihvcHRpb25zLm9uRGF0YSk7XG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgb25EYXRhLmN1cnJlbnQgPSBvcHRpb25zLm9uRGF0YTtcbiAgfSwgW29wdGlvbnMub25EYXRhXSk7XG4gIGNvbnN0IGNoYXQgPSB1c2VDaGF0PEFnZW50W1wiJFVJTWVzc2FnZVwiXT4oe1xuICAgIGNoYXQ6IHVzZU1lbW8oXG4gICAgICAoKSA9PlxuICAgICAgICBuZXcgQ2hhdCh7XG4gICAgICAgICAgaWQsXG4gICAgICAgICAgdHJhbnNwb3J0OiBuZXcgRGVmYXVsdENoYXRUcmFuc3BvcnQoe1xuICAgICAgICAgICAgYXBpOiBiYXNlUGF0aCxcbiAgICAgICAgICAgIHByZXBhcmVTZW5kTWVzc2FnZXNSZXF1ZXN0OiBhc3luYyAoeyBtZXNzYWdlcyB9KSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGggPSBhd2FpdCAodHlwZW9mIGhlYWRlcnMgPT09IFwiZnVuY3Rpb25cIlxuICAgICAgICAgICAgICAgID8gaGVhZGVycygpXG4gICAgICAgICAgICAgICAgOiBoZWFkZXJzKTtcbiAgICAgICAgICAgICAgY29uc3QgbGFzdEFzc2lzdGFudCA9IG1lc3NhZ2VzLmZpbmRMYXN0KFxuICAgICAgICAgICAgICAgIChtKSA9PiBtLnJvbGUgPT09IFwiYXNzaXN0YW50XCJcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgY29uc3QgbGFzdFBhcnRDb250ZW50ID0gbGFzdEFzc2lzdGFudD8ucGFydHMuYXQoLTEpO1xuICAgICAgICAgICAgICBjb25zdCBsYXN0UGFydCA9XG4gICAgICAgICAgICAgICAgbGFzdEFzc2lzdGFudCAmJiBsYXN0UGFydENvbnRlbnQgIT0gbnVsbFxuICAgICAgICAgICAgICAgICAgPyB7XG4gICAgICAgICAgICAgICAgICAgICAgaW5kZXg6IGxhc3RBc3Npc3RhbnQucGFydHMubGVuZ3RoIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICBwYXJ0OiBsYXN0UGFydENvbnRlbnQsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIDogdW5kZWZpbmVkO1xuICAgICAgICAgICAgICBjb25zdCBib2R5OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHtcbiAgICAgICAgICAgICAgICBtZXNzYWdlOiBtZXNzYWdlcy5hdCgtMSksXG4gICAgICAgICAgICAgICAgaW50ZXJydXB0SWZTdHJlYW1pbmc6IGxhc3RQYXJ0ID8geyBsYXN0UGFydCB9IDogdHJ1ZSxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBib2R5LFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIZWFkZXJzKGgpLFxuICAgICAgICAgICAgICAgIGFwaTogYCR7YmFzZVBhdGh9LyR7aWR9YCxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwcmVwYXJlUmVjb25uZWN0VG9TdHJlYW1SZXF1ZXN0OiBhc3luYyAocmVxdWVzdCkgPT4ge1xuICAgICAgICAgICAgICBjb25zdCBoID0gYXdhaXQgKHR5cGVvZiBoZWFkZXJzID09PSBcImZ1bmN0aW9uXCJcbiAgICAgICAgICAgICAgICA/IGhlYWRlcnMoKVxuICAgICAgICAgICAgICAgIDogaGVhZGVycyk7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgLi4ucmVxdWVzdCxcbiAgICAgICAgICAgICAgICBhcGk6IGAke2Jhc2VQYXRofS8ke2lkfS9yZWNvbm5lY3RgLFxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IGgsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIG9uRGF0YTogKF9wYXJ0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwYXJ0ID0gX3BhcnQgYXMgdW5rbm93biBhcyBEYXRhRXZlbnQ7XG4gICAgICAgICAgICBpZiAocGFydC50eXBlID09PSBcImRhdGEtc3RhdHVzXCIpIHtcbiAgICAgICAgICAgICAgc2V0QWdlbnRTdGF0dXMocGFydC5kYXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG9uRGF0YS5jdXJyZW50Py4ocGFydCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgfSksXG4gICAgICBbaWQsIGJhc2VQYXRoLCBoZWFkZXJzXVxuICAgICksXG4gIH0pO1xuXG4gIHJldHVybiB7XG4gICAgY2hhdCxcbiAgICBhZ2VudFN0YXR1cyxcbiAgfTtcbn1cbiIsICJpbXBvcnQgeyB0eXBlIFF1ZXJ5T3B0aW9ucywgc2tpcFRva2VuIH0gZnJvbSBcIkB0YW5zdGFjay9yZWFjdC1xdWVyeVwiO1xuaW1wb3J0IHR5cGUgeyBBbnlBZ2VudCB9IGZyb20gXCIuLi9hZ2VudC9jbGllbnRcIjtcbmltcG9ydCB7IHVzZVF1ZXJ5IH0gZnJvbSBcIi4vdXNlLXF1ZXJ5XCI7XG5cbnR5cGUgUmVzcG9uc2U8QWdlbnQgZXh0ZW5kcyBBbnlBZ2VudD4gPSBBd2FpdGVkPFxuICBSZXR1cm5UeXBlPFJldHVyblR5cGU8QWdlbnRbXCJzZXNzaW9uXCJdPltcImhpc3RvcnlcIl0+XG4+O1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlU2Vzc2lvbkhpc3Rvcnk8QWdlbnQgZXh0ZW5kcyBBbnlBZ2VudD4ob3B0aW9uczoge1xuICBiYXNlUGF0aD86IHN0cmluZztcbiAgc2Vzc2lvbklkOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIG9wdGlvbnM/OiBPbWl0PFF1ZXJ5T3B0aW9uczxSZXNwb25zZTxBZ2VudD4+LCBcInF1ZXJ5S2V5XCIgfCBcInF1ZXJ5Rm5cIj47XG59KSB7XG4gIHJldHVybiB1c2VRdWVyeTxSZXNwb25zZTxBZ2VudD4+KHtcbiAgICAuLi5vcHRpb25zLm9wdGlvbnMsXG4gICAgcXVlcnlLZXk6IFtcImhpc3RvcnlcIiwgb3B0aW9ucy5zZXNzaW9uSWRdLFxuICAgIHF1ZXJ5Rm46IG9wdGlvbnMuc2Vzc2lvbklkXG4gICAgICA/IGFzeW5jICgpID0+IHtcbiAgICAgICAgICBjb25zdCBwYXRoID0gYCR7b3B0aW9ucy5iYXNlUGF0aH0vJHtvcHRpb25zLnNlc3Npb25JZH1gO1xuICAgICAgICAgIHJldHVybiBhd2FpdCBmZXRjaChwYXRoKS50aGVuKChyZXMpID0+IHJlcy5qc29uKCkpO1xuICAgICAgICB9XG4gICAgICA6IHNraXBUb2tlbixcbiAgfSk7XG59XG4iLCAiaW1wb3J0IHtcbiAgUXVlcnlDbGllbnQsXG4gIHR5cGUgVXNlTXV0YXRpb25PcHRpb25zLFxuICB0eXBlIFVzZVF1ZXJ5T3B0aW9ucyxcbiAgdXNlTXV0YXRpb24gYXMgdXNlVXBzdHJlYW1NdXRhdGlvbixcbiAgdXNlUXVlcnkgYXMgdXNlVXBzdHJlYW1RdWVyeSxcbn0gZnJvbSBcIkB0YW5zdGFjay9yZWFjdC1xdWVyeVwiO1xuXG5jb25zdCBjbGllbnQgPSBuZXcgUXVlcnlDbGllbnQoKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZVF1ZXJ5PFQ+KG9wdGlvbnM6IFVzZVF1ZXJ5T3B0aW9uczxUPikge1xuICByZXR1cm4gdXNlVXBzdHJlYW1RdWVyeTxUPihvcHRpb25zLCBjbGllbnQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlTXV0YXRpb248VCwgVmFyaWFibGVzLCBFcnJvciwgRGF0YT4oXG4gIG9wdGlvbnM6IFVzZU11dGF0aW9uT3B0aW9uczxULCBWYXJpYWJsZXMsIEVycm9yLCBEYXRhPlxuKSB7XG4gIHJldHVybiB1c2VVcHN0cmVhbU11dGF0aW9uPFQsIFZhcmlhYmxlcywgRXJyb3IsIERhdGE+KG9wdGlvbnMsIGNsaWVudCk7XG59XG4iLCAiaW1wb3J0IHsgdXNlTXV0YXRpb24gfSBmcm9tIFwiQHRhbnN0YWNrL3JlYWN0LXF1ZXJ5XCI7XG5pbXBvcnQgdHlwZSB7IEFueUFnZW50IH0gZnJvbSBcIi4uL2FnZW50L2NsaWVudFwiO1xuXG50eXBlIEZuPEFnZW50IGV4dGVuZHMgQW55QWdlbnQ+ID0gUmV0dXJuVHlwZTxBZ2VudFtcInNlc3Npb25cIl0+W1wiaW50ZXJydXB0XCJdO1xudHlwZSBSZXNwb25zZTxBZ2VudCBleHRlbmRzIEFueUFnZW50PiA9IEF3YWl0ZWQ8UmV0dXJuVHlwZTxGbjxBZ2VudD4+PjtcbnR5cGUgVmFyaWFibGVzPEFnZW50IGV4dGVuZHMgQW55QWdlbnQ+ID0gUGFyYW1ldGVyczxGbjxBZ2VudD4+WzBdO1xuXG5leHBvcnQgZnVuY3Rpb24gdXNlSW50ZXJydXB0U2Vzc2lvbjxBZ2VudCBleHRlbmRzIEFueUFnZW50PihvcHRpb25zOiB7XG4gIGJhc2VQYXRoPzogc3RyaW5nO1xuICBzZXNzaW9uSWQ6IHN0cmluZztcbn0pIHtcbiAgcmV0dXJuIHVzZU11dGF0aW9uPFJlc3BvbnNlPEFnZW50PiwgRXJyb3IsIFZhcmlhYmxlczxBZ2VudD4sIHZvaWQ+KHtcbiAgICBtdXRhdGlvbkZuOiBhc3luYyAoaW5wdXQpID0+IHtcbiAgICAgIGNvbnN0IHBhdGggPSBgJHtvcHRpb25zLmJhc2VQYXRofS8ke29wdGlvbnMuc2Vzc2lvbklkfS9pbnRlcnJ1cHRgO1xuICAgICAgcmV0dXJuIGF3YWl0IGZldGNoKHBhdGgsIHtcbiAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoaW5wdXQpLFxuICAgICAgfSkudGhlbigocmVzKSA9PiByZXMuanNvbigpKTtcbiAgICB9LFxuICB9KTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7OztBQUFBLFNBQVMsTUFBTSxlQUFlO0FBQzlCLFNBQVMsNEJBQTRCO0FBQ3JDLFNBQVMsV0FBVyxTQUFTLFFBQVEsZ0JBQWdCO0FBUzlDLFNBQVMsU0FDZCxNQUNBO0FBQUEsRUFDRTtBQUFBLEVBQ0E7QUFBQSxFQUNBLEdBQUc7QUFDTCxJQUtJLENBQUMsR0FDTDtBQUNBLFFBQU0sV0FBVyxRQUFRLFlBQVksaUJBQWlCLElBQUk7QUFDMUQsUUFBTSxDQUFDLGFBQWEsY0FBYyxJQUFJLFNBQTZCLElBQUk7QUFDdkUsUUFBTSxTQUFTLE9BQU8sUUFBUSxNQUFNO0FBQ3BDLFlBQVUsTUFBTTtBQUNkLFdBQU8sVUFBVSxRQUFRO0FBQUEsRUFDM0IsR0FBRyxDQUFDLFFBQVEsTUFBTSxDQUFDO0FBQ25CLFFBQU0sT0FBTyxRQUE2QjtBQUFBLElBQ3hDLE1BQU07QUFBQSxNQUNKLE1BQ0UsSUFBSSxLQUFLO0FBQUEsUUFDUDtBQUFBLFFBQ0EsV0FBVyxJQUFJLHFCQUFxQjtBQUFBLFVBQ2xDLEtBQUs7QUFBQSxVQUNMLDRCQUE0QixPQUFPLEVBQUUsU0FBUyxNQUFNO0FBQ2xELGtCQUFNLElBQUksT0FBTyxPQUFPLFlBQVksYUFDaEMsUUFBUSxJQUNSO0FBQ0osa0JBQU0sZ0JBQWdCLFNBQVM7QUFBQSxjQUM3QixDQUFDLE1BQU0sRUFBRSxTQUFTO0FBQUEsWUFDcEI7QUFDQSxrQkFBTSxrQkFBa0IsZUFBZSxNQUFNLEdBQUcsRUFBRTtBQUNsRCxrQkFBTSxXQUNKLGlCQUFpQixtQkFBbUIsT0FDaEM7QUFBQSxjQUNFLE9BQU8sY0FBYyxNQUFNLFNBQVM7QUFBQSxjQUNwQyxNQUFNO0FBQUEsWUFDUixJQUNBO0FBQ04sa0JBQU0sT0FBZ0M7QUFBQSxjQUNwQyxTQUFTLFNBQVMsR0FBRyxFQUFFO0FBQUEsY0FDdkIsc0JBQXNCLFdBQVcsRUFBRSxTQUFTLElBQUk7QUFBQSxZQUNsRDtBQUNBLG1CQUFPO0FBQUEsY0FDTDtBQUFBLGNBQ0EsU0FBUyxJQUFJLFFBQVEsQ0FBQztBQUFBLGNBQ3RCLEtBQUssR0FBRyxRQUFRLElBQUksRUFBRTtBQUFBLFlBQ3hCO0FBQUEsVUFDRjtBQUFBLFVBQ0EsaUNBQWlDLE9BQU8sWUFBWTtBQUNsRCxrQkFBTSxJQUFJLE9BQU8sT0FBTyxZQUFZLGFBQ2hDLFFBQVEsSUFDUjtBQUNKLG1CQUFPO0FBQUEsY0FDTCxHQUFHO0FBQUEsY0FDSCxLQUFLLEdBQUcsUUFBUSxJQUFJLEVBQUU7QUFBQSxjQUN0QixTQUFTO0FBQUEsWUFDWDtBQUFBLFVBQ0Y7QUFBQSxRQUNGLENBQUM7QUFBQSxRQUNELFFBQVEsQ0FBQyxVQUFVO0FBQ2pCLGdCQUFNLE9BQU87QUFDYixjQUFJLEtBQUssU0FBUyxlQUFlO0FBQy9CLDJCQUFlLEtBQUssSUFBSTtBQUFBLFVBQzFCO0FBQ0EsaUJBQU8sVUFBVSxJQUFJO0FBQUEsUUFDdkI7QUFBQSxNQUNGLENBQUM7QUFBQSxNQUNILENBQUMsSUFBSSxVQUFVLE9BQU87QUFBQSxJQUN4QjtBQUFBLEVBQ0YsQ0FBQztBQUVELFNBQU87QUFBQSxJQUNMO0FBQUEsSUFDQTtBQUFBLEVBQ0Y7QUFDRjs7O0FDekZBLFNBQTRCLGlCQUFpQjs7O0FDQTdDO0FBQUEsRUFDRTtBQUFBLEVBR0EsZUFBZTtBQUFBLEVBQ2YsWUFBWTtBQUFBLE9BQ1A7QUFFUCxJQUFNLFNBQVMsSUFBSSxZQUFZO0FBRXhCLFNBQVMsU0FBWSxTQUE2QjtBQUN2RCxTQUFPLGlCQUFvQixTQUFTLE1BQU07QUFDNUM7OztBREpPLFNBQVMsa0JBQTBDLFNBSXZEO0FBQ0QsU0FBTyxTQUEwQjtBQUFBLElBQy9CLEdBQUcsUUFBUTtBQUFBLElBQ1gsVUFBVSxDQUFDLFdBQVcsUUFBUSxTQUFTO0FBQUEsSUFDdkMsU0FBUyxRQUFRLFlBQ2IsWUFBWTtBQUNWLFlBQU0sT0FBTyxHQUFHLFFBQVEsUUFBUSxJQUFJLFFBQVEsU0FBUztBQUNyRCxhQUFPLE1BQU0sTUFBTSxJQUFJLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7QUFBQSxJQUNuRCxJQUNBO0FBQUEsRUFDTixDQUFDO0FBQ0g7OztBRXZCQSxTQUFTLG1CQUFtQjtBQU9yQixTQUFTLG9CQUE0QyxTQUd6RDtBQUNELFNBQU8sWUFBNEQ7QUFBQSxJQUNqRSxZQUFZLE9BQU8sVUFBVTtBQUMzQixZQUFNLE9BQU8sR0FBRyxRQUFRLFFBQVEsSUFBSSxRQUFRLFNBQVM7QUFDckQsYUFBTyxNQUFNLE1BQU0sTUFBTTtBQUFBLFFBQ3ZCLFFBQVE7QUFBQSxRQUNSLE1BQU0sS0FBSyxVQUFVLEtBQUs7QUFBQSxNQUM1QixDQUFDLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxLQUFLLENBQUM7QUFBQSxJQUM3QjtBQUFBLEVBQ0YsQ0FBQztBQUNIOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -1,6 +1,6 @@
1
- export { E as ExecResult, d as SandboxAgentRef, S as SandboxBinding, b as SandboxInstance, a as SandboxSetupFields, U as UploadableFile } from './steps-eTytqxQb.mjs';
2
- export { d as dockerSandbox, l as localSandbox, v as vercelSandbox } from './entry-Bs17QEiq.mjs';
1
+ export { E as ExecResult, S as SandboxAgentRef, a as SandboxBinding, b as SandboxInstance, c as SandboxSetupFields, U as UploadableFile } from './steps-Mi3sjYbD.mjs';
2
+ export { d as dockerSandbox, l as localSandbox, v as vercelSandbox } from './entry-BUiucCNp.mjs';
3
3
  import '@vercel/sandbox';
4
- import './adapter-Cl735Kp4.mjs';
4
+ import './adapter-txsF6hou.mjs';
5
5
  import '@workflow/serde';
6
6
  import 'ai';
package/dist/sandbox.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- export { E as ExecResult, d as SandboxAgentRef, S as SandboxBinding, b as SandboxInstance, a as SandboxSetupFields, U as UploadableFile } from './steps-XA4wG8W3.js';
2
- export { d as dockerSandbox, l as localSandbox, v as vercelSandbox } from './entry-QNyd4S1s.js';
1
+ export { E as ExecResult, S as SandboxAgentRef, a as SandboxBinding, b as SandboxInstance, c as SandboxSetupFields, U as UploadableFile } from './steps-BOKeU8X3.js';
2
+ export { d as dockerSandbox, l as localSandbox, v as vercelSandbox } from './entry-ok9EBUS3.js';
3
3
  import '@vercel/sandbox';
4
- import './adapter-Cl735Kp4.js';
4
+ import './adapter-txsF6hou.js';
5
5
  import '@workflow/serde';
6
6
  import 'ai';