@agentuity/runtime 0.1.14 → 0.1.16

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 (269) hide show
  1. package/dist/_config.d.ts +100 -0
  2. package/dist/_config.d.ts.map +1 -0
  3. package/dist/_config.js +147 -0
  4. package/dist/_config.js.map +1 -0
  5. package/dist/_context.d.ts +76 -0
  6. package/dist/_context.d.ts.map +1 -0
  7. package/dist/_context.js +147 -0
  8. package/dist/_context.js.map +1 -0
  9. package/dist/_events.d.ts +64 -0
  10. package/dist/_events.d.ts.map +1 -0
  11. package/dist/_events.js +92 -0
  12. package/dist/_events.js.map +1 -0
  13. package/dist/_idle.d.ts +7 -0
  14. package/dist/_idle.d.ts.map +1 -0
  15. package/dist/_idle.js +10 -0
  16. package/dist/_idle.js.map +1 -0
  17. package/dist/_metadata.d.ts +117 -0
  18. package/dist/_metadata.d.ts.map +1 -0
  19. package/dist/_metadata.js +246 -0
  20. package/dist/_metadata.js.map +1 -0
  21. package/dist/_process-protection.d.ts +25 -0
  22. package/dist/_process-protection.d.ts.map +1 -0
  23. package/dist/_process-protection.js +65 -0
  24. package/dist/_process-protection.js.map +1 -0
  25. package/dist/_server.d.ts +46 -0
  26. package/dist/_server.d.ts.map +1 -0
  27. package/dist/_server.js +85 -0
  28. package/dist/_server.js.map +1 -0
  29. package/dist/_services.d.ts +21 -0
  30. package/dist/_services.d.ts.map +1 -0
  31. package/dist/_services.js +248 -0
  32. package/dist/_services.js.map +1 -0
  33. package/dist/_standalone.d.ts +208 -0
  34. package/dist/_standalone.d.ts.map +1 -0
  35. package/dist/_standalone.js +569 -0
  36. package/dist/_standalone.js.map +1 -0
  37. package/dist/_tokens.d.ts +12 -0
  38. package/dist/_tokens.d.ts.map +1 -0
  39. package/dist/_tokens.js +96 -0
  40. package/dist/_tokens.js.map +1 -0
  41. package/dist/_util.d.ts +16 -0
  42. package/dist/_util.d.ts.map +1 -0
  43. package/dist/_util.js +54 -0
  44. package/dist/_util.js.map +1 -0
  45. package/dist/_validation.d.ts +89 -0
  46. package/dist/_validation.d.ts.map +1 -0
  47. package/dist/_validation.js +29 -0
  48. package/dist/_validation.js.map +1 -0
  49. package/dist/_waituntil.d.ts +18 -0
  50. package/dist/_waituntil.d.ts.map +1 -0
  51. package/dist/_waituntil.js +97 -0
  52. package/dist/_waituntil.js.map +1 -0
  53. package/dist/agent.d.ts +1210 -0
  54. package/dist/agent.d.ts.map +1 -0
  55. package/dist/agent.js +903 -0
  56. package/dist/agent.js.map +1 -0
  57. package/dist/app.d.ts +322 -0
  58. package/dist/app.d.ts.map +1 -0
  59. package/dist/app.js +160 -0
  60. package/dist/app.js.map +1 -0
  61. package/dist/bun-s3-patch.d.ts +37 -0
  62. package/dist/bun-s3-patch.d.ts.map +1 -0
  63. package/dist/bun-s3-patch.js +139 -0
  64. package/dist/bun-s3-patch.js.map +1 -0
  65. package/dist/cors.d.ts +42 -0
  66. package/dist/cors.d.ts.map +1 -0
  67. package/dist/cors.js +117 -0
  68. package/dist/cors.js.map +1 -0
  69. package/dist/devmode.d.ts +3 -0
  70. package/dist/devmode.d.ts.map +1 -0
  71. package/dist/devmode.js +167 -0
  72. package/dist/devmode.js.map +1 -0
  73. package/dist/eval.d.ts +91 -0
  74. package/dist/eval.d.ts.map +1 -0
  75. package/dist/eval.js +16 -0
  76. package/dist/eval.js.map +1 -0
  77. package/dist/handlers/cron.d.ts +47 -0
  78. package/dist/handlers/cron.d.ts.map +1 -0
  79. package/dist/handlers/cron.js +49 -0
  80. package/dist/handlers/cron.js.map +1 -0
  81. package/dist/handlers/index.d.ts +5 -0
  82. package/dist/handlers/index.d.ts.map +1 -0
  83. package/dist/handlers/index.js +5 -0
  84. package/dist/handlers/index.js.map +1 -0
  85. package/dist/handlers/sse.d.ts +91 -0
  86. package/dist/handlers/sse.d.ts.map +1 -0
  87. package/dist/handlers/sse.js +213 -0
  88. package/dist/handlers/sse.js.map +1 -0
  89. package/dist/handlers/stream.d.ts +52 -0
  90. package/dist/handlers/stream.d.ts.map +1 -0
  91. package/dist/handlers/stream.js +116 -0
  92. package/dist/handlers/stream.js.map +1 -0
  93. package/dist/handlers/websocket.d.ts +49 -0
  94. package/dist/handlers/websocket.d.ts.map +1 -0
  95. package/dist/handlers/websocket.js +143 -0
  96. package/dist/handlers/websocket.js.map +1 -0
  97. package/dist/index.d.ts +71 -0
  98. package/dist/index.d.ts.map +1 -0
  99. package/dist/index.js +58 -0
  100. package/dist/index.js.map +1 -0
  101. package/dist/logger/console.d.ts +70 -0
  102. package/dist/logger/console.d.ts.map +1 -0
  103. package/dist/logger/console.js +274 -0
  104. package/dist/logger/console.js.map +1 -0
  105. package/dist/logger/index.d.ts +3 -0
  106. package/dist/logger/index.d.ts.map +1 -0
  107. package/dist/logger/index.js +3 -0
  108. package/dist/logger/index.js.map +1 -0
  109. package/dist/logger/internal.d.ts +79 -0
  110. package/dist/logger/internal.d.ts.map +1 -0
  111. package/dist/logger/internal.js +133 -0
  112. package/dist/logger/internal.js.map +1 -0
  113. package/dist/logger/logger.d.ts +41 -0
  114. package/dist/logger/logger.d.ts.map +1 -0
  115. package/dist/logger/logger.js +2 -0
  116. package/dist/logger/logger.js.map +1 -0
  117. package/dist/logger/user.d.ts +8 -0
  118. package/dist/logger/user.d.ts.map +1 -0
  119. package/dist/logger/user.js +7 -0
  120. package/dist/logger/user.js.map +1 -0
  121. package/dist/logger/util.d.ts +11 -0
  122. package/dist/logger/util.d.ts.map +1 -0
  123. package/dist/logger/util.js +77 -0
  124. package/dist/logger/util.js.map +1 -0
  125. package/dist/middleware.d.ts +112 -0
  126. package/dist/middleware.d.ts.map +1 -0
  127. package/dist/middleware.js +507 -0
  128. package/dist/middleware.js.map +1 -0
  129. package/dist/otel/config.d.ts +19 -0
  130. package/dist/otel/config.d.ts.map +1 -0
  131. package/dist/otel/config.js +26 -0
  132. package/dist/otel/config.js.map +1 -0
  133. package/dist/otel/console.d.ts +33 -0
  134. package/dist/otel/console.d.ts.map +1 -0
  135. package/dist/otel/console.js +86 -0
  136. package/dist/otel/console.js.map +1 -0
  137. package/dist/otel/exporters/index.d.ts +4 -0
  138. package/dist/otel/exporters/index.d.ts.map +1 -0
  139. package/dist/otel/exporters/index.js +4 -0
  140. package/dist/otel/exporters/index.js.map +1 -0
  141. package/dist/otel/exporters/jsonl-log-exporter.d.ts +36 -0
  142. package/dist/otel/exporters/jsonl-log-exporter.d.ts.map +1 -0
  143. package/dist/otel/exporters/jsonl-log-exporter.js +103 -0
  144. package/dist/otel/exporters/jsonl-log-exporter.js.map +1 -0
  145. package/dist/otel/exporters/jsonl-metric-exporter.d.ts +40 -0
  146. package/dist/otel/exporters/jsonl-metric-exporter.d.ts.map +1 -0
  147. package/dist/otel/exporters/jsonl-metric-exporter.js +104 -0
  148. package/dist/otel/exporters/jsonl-metric-exporter.js.map +1 -0
  149. package/dist/otel/exporters/jsonl-trace-exporter.d.ts +36 -0
  150. package/dist/otel/exporters/jsonl-trace-exporter.d.ts.map +1 -0
  151. package/dist/otel/exporters/jsonl-trace-exporter.js +111 -0
  152. package/dist/otel/exporters/jsonl-trace-exporter.js.map +1 -0
  153. package/dist/otel/fetch.d.ts +12 -0
  154. package/dist/otel/fetch.d.ts.map +1 -0
  155. package/dist/otel/fetch.js +82 -0
  156. package/dist/otel/fetch.js.map +1 -0
  157. package/dist/otel/http.d.ts +16 -0
  158. package/dist/otel/http.d.ts.map +1 -0
  159. package/dist/otel/http.js +44 -0
  160. package/dist/otel/http.js.map +1 -0
  161. package/dist/otel/logger.d.ts +37 -0
  162. package/dist/otel/logger.d.ts.map +1 -0
  163. package/dist/otel/logger.js +268 -0
  164. package/dist/otel/logger.js.map +1 -0
  165. package/dist/otel/otel.d.ts +65 -0
  166. package/dist/otel/otel.d.ts.map +1 -0
  167. package/dist/otel/otel.js +261 -0
  168. package/dist/otel/otel.js.map +1 -0
  169. package/dist/router.d.ts +100 -0
  170. package/dist/router.d.ts.map +1 -0
  171. package/dist/router.js +163 -0
  172. package/dist/router.js.map +1 -0
  173. package/dist/services/evalrun/composite.d.ts +21 -0
  174. package/dist/services/evalrun/composite.d.ts.map +1 -0
  175. package/dist/services/evalrun/composite.js +26 -0
  176. package/dist/services/evalrun/composite.js.map +1 -0
  177. package/dist/services/evalrun/http.d.ts +24 -0
  178. package/dist/services/evalrun/http.d.ts.map +1 -0
  179. package/dist/services/evalrun/http.js +86 -0
  180. package/dist/services/evalrun/http.js.map +1 -0
  181. package/dist/services/evalrun/index.d.ts +5 -0
  182. package/dist/services/evalrun/index.d.ts.map +1 -0
  183. package/dist/services/evalrun/index.js +5 -0
  184. package/dist/services/evalrun/index.js.map +1 -0
  185. package/dist/services/evalrun/json.d.ts +21 -0
  186. package/dist/services/evalrun/json.d.ts.map +1 -0
  187. package/dist/services/evalrun/json.js +38 -0
  188. package/dist/services/evalrun/json.js.map +1 -0
  189. package/dist/services/evalrun/local.d.ts +19 -0
  190. package/dist/services/evalrun/local.d.ts.map +1 -0
  191. package/dist/services/evalrun/local.js +22 -0
  192. package/dist/services/evalrun/local.js.map +1 -0
  193. package/dist/services/local/_db.d.ts +4 -0
  194. package/dist/services/local/_db.d.ts.map +1 -0
  195. package/dist/services/local/_db.js +123 -0
  196. package/dist/services/local/_db.js.map +1 -0
  197. package/dist/services/local/_router.d.ts +3 -0
  198. package/dist/services/local/_router.d.ts.map +1 -0
  199. package/dist/services/local/_router.js +28 -0
  200. package/dist/services/local/_router.js.map +1 -0
  201. package/dist/services/local/_util.d.ts +18 -0
  202. package/dist/services/local/_util.d.ts.map +1 -0
  203. package/dist/services/local/_util.js +44 -0
  204. package/dist/services/local/_util.js.map +1 -0
  205. package/dist/services/local/index.d.ts +7 -0
  206. package/dist/services/local/index.d.ts.map +1 -0
  207. package/dist/services/local/index.js +7 -0
  208. package/dist/services/local/index.js.map +1 -0
  209. package/dist/services/local/keyvalue.d.ts +17 -0
  210. package/dist/services/local/keyvalue.d.ts.map +1 -0
  211. package/dist/services/local/keyvalue.js +125 -0
  212. package/dist/services/local/keyvalue.js.map +1 -0
  213. package/dist/services/local/stream.d.ts +12 -0
  214. package/dist/services/local/stream.d.ts.map +1 -0
  215. package/dist/services/local/stream.js +262 -0
  216. package/dist/services/local/stream.js.map +1 -0
  217. package/dist/services/local/vector.d.ts +17 -0
  218. package/dist/services/local/vector.d.ts.map +1 -0
  219. package/dist/services/local/vector.js +303 -0
  220. package/dist/services/local/vector.js.map +1 -0
  221. package/dist/services/sandbox/http.d.ts +13 -0
  222. package/dist/services/sandbox/http.d.ts.map +1 -0
  223. package/dist/services/sandbox/http.js +130 -0
  224. package/dist/services/sandbox/http.js.map +1 -0
  225. package/dist/services/sandbox/index.d.ts +2 -0
  226. package/dist/services/sandbox/index.d.ts.map +1 -0
  227. package/dist/services/sandbox/index.js +2 -0
  228. package/dist/services/sandbox/index.js.map +1 -0
  229. package/dist/services/session/composite.d.ts +21 -0
  230. package/dist/services/session/composite.d.ts.map +1 -0
  231. package/dist/services/session/composite.js +26 -0
  232. package/dist/services/session/composite.js.map +1 -0
  233. package/dist/services/session/http.d.ts +34 -0
  234. package/dist/services/session/http.d.ts.map +1 -0
  235. package/dist/services/session/http.js +80 -0
  236. package/dist/services/session/http.js.map +1 -0
  237. package/dist/services/session/index.d.ts +5 -0
  238. package/dist/services/session/index.d.ts.map +1 -0
  239. package/dist/services/session/index.js +5 -0
  240. package/dist/services/session/index.js.map +1 -0
  241. package/dist/services/session/json.d.ts +22 -0
  242. package/dist/services/session/json.d.ts.map +1 -0
  243. package/dist/services/session/json.js +35 -0
  244. package/dist/services/session/json.js.map +1 -0
  245. package/dist/services/session/local.d.ts +19 -0
  246. package/dist/services/session/local.d.ts.map +1 -0
  247. package/dist/services/session/local.js +23 -0
  248. package/dist/services/session/local.js.map +1 -0
  249. package/dist/services/thread/local.d.ts +20 -0
  250. package/dist/services/thread/local.d.ts.map +1 -0
  251. package/dist/services/thread/local.js +158 -0
  252. package/dist/services/thread/local.js.map +1 -0
  253. package/dist/session.d.ts +734 -0
  254. package/dist/session.d.ts.map +1 -0
  255. package/dist/session.js +1139 -0
  256. package/dist/session.js.map +1 -0
  257. package/dist/validator.d.ts +142 -0
  258. package/dist/validator.d.ts.map +1 -0
  259. package/dist/validator.js +149 -0
  260. package/dist/validator.js.map +1 -0
  261. package/dist/web.d.ts +8 -0
  262. package/dist/web.d.ts.map +1 -0
  263. package/dist/web.js +66 -0
  264. package/dist/web.js.map +1 -0
  265. package/dist/workbench.d.ts +17 -0
  266. package/dist/workbench.d.ts.map +1 -0
  267. package/dist/workbench.js +507 -0
  268. package/dist/workbench.js.map +1 -0
  269. package/package.json +8 -8
@@ -0,0 +1,248 @@
1
+ import { context, SpanKind, SpanStatusCode, trace } from '@opentelemetry/api';
2
+ import { KeyValueStorageService, StreamStorageService, VectorStorageService, StructuredError, } from '@agentuity/core';
3
+ import { APIClient, createServerFetchAdapter, getServiceUrls } from '@agentuity/server';
4
+ import { HTTPSandboxService } from './services/sandbox';
5
+ import { CompositeSessionEventProvider, LocalSessionEventProvider, JSONSessionEventProvider, HTTPSessionEventProvider, } from './services/session';
6
+ import { CompositeEvalRunEventProvider, LocalEvalRunEventProvider, JSONEvalRunEventProvider, HTTPEvalRunEventProvider, } from './services/evalrun';
7
+ import { LocalThreadProvider } from './services/thread/local';
8
+ import { injectTraceContextToHeaders } from './otel/http';
9
+ import { getTracer } from './_server';
10
+ import { populateAgentsRegistry } from './agent.js';
11
+ import { getSDKVersion, isAuthenticated, isProduction } from './_config';
12
+ import { DefaultSessionProvider, DefaultThreadProvider, } from './session';
13
+ import { LocalKeyValueStorage, LocalStreamStorage, LocalVectorStorage, getLocalDB, normalizeProjectPath, createLocalStorageRouter, } from './services/local';
14
+ const userAgent = `Agentuity SDK/${getSDKVersion()}`;
15
+ // Lazy getters - these must be functions to read env vars AFTER bootstrapRuntimeEnv() runs
16
+ const getSdkKey = () => process.env.AGENTUITY_SDK_KEY;
17
+ const getBearerKey = () => `Bearer ${getSdkKey()}`;
18
+ const getRegion = () => process.env.AGENTUITY_REGION ?? 'usc';
19
+ const getLazyServiceUrls = () => getServiceUrls(getRegion());
20
+ const getKvBaseUrl = () => getLazyServiceUrls().keyvalue;
21
+ const getStreamBaseUrl = () => getLazyServiceUrls().stream;
22
+ const getVectorBaseUrl = () => getLazyServiceUrls().vector;
23
+ const getCatalystBaseUrl = () => getLazyServiceUrls().catalyst;
24
+ let adapter;
25
+ const createFetchAdapter = (logger) => createServerFetchAdapter({
26
+ headers: {
27
+ Authorization: getBearerKey(),
28
+ 'User-Agent': userAgent,
29
+ },
30
+ onBefore: async (url, options, callback) => {
31
+ logger.debug('before request: %s with options: %s', url, options);
32
+ if (!options.telemetry) {
33
+ return callback();
34
+ }
35
+ options.headers = { ...options.headers, ...injectTraceContextToHeaders() };
36
+ const tracer = getTracer() ?? trace.getTracer('agentuity');
37
+ const currentContext = context.active();
38
+ const span = tracer.startSpan(options.telemetry.name, { attributes: options.telemetry.attributes, kind: SpanKind.CLIENT }, currentContext);
39
+ const spanContext = trace.setSpan(currentContext, span);
40
+ try {
41
+ await context.with(spanContext, callback);
42
+ span.setStatus({ code: SpanStatusCode.OK });
43
+ }
44
+ catch (err) {
45
+ const e = err;
46
+ span.recordException(e);
47
+ span.setStatus({ code: SpanStatusCode.ERROR, message: e?.message ?? String(err) });
48
+ throw err;
49
+ }
50
+ finally {
51
+ span.end();
52
+ }
53
+ },
54
+ onAfter: async (url, options, result, err) => {
55
+ logger.debug('after request: %s (%d) => %s', url, result.response.status, err);
56
+ if (err) {
57
+ return;
58
+ }
59
+ const span = trace.getSpan(context.active());
60
+ switch (options.telemetry?.name) {
61
+ case 'agentuity.keyvalue.get': {
62
+ if (result.response.status === 404) {
63
+ span?.addEvent('miss');
64
+ }
65
+ else if (result.response.ok) {
66
+ span?.addEvent('hit');
67
+ }
68
+ break;
69
+ }
70
+ case 'agentuity.stream.create': {
71
+ if (result.response.ok) {
72
+ const res = result.data;
73
+ span?.setAttributes({
74
+ 'stream.id': res.id,
75
+ 'stream.url': `${getStreamBaseUrl()}/${res.id}`,
76
+ });
77
+ }
78
+ break;
79
+ }
80
+ case 'agentuity.stream.list': {
81
+ const response = result.data;
82
+ if (response && span) {
83
+ span.setAttributes({
84
+ 'stream.count': response.streams.length,
85
+ 'stream.total': response.total,
86
+ });
87
+ }
88
+ break;
89
+ }
90
+ case 'agentuity.vector.upsert': {
91
+ if (result.response.ok) {
92
+ const data = result.data;
93
+ span?.setAttributes({
94
+ 'vector.count': data.length,
95
+ });
96
+ }
97
+ break;
98
+ }
99
+ case 'agentuity.vector.search': {
100
+ if (result.response.ok) {
101
+ const data = result.data;
102
+ span?.setAttributes({
103
+ 'vector.results': data.length,
104
+ });
105
+ }
106
+ break;
107
+ }
108
+ case 'agentuity.vector.get': {
109
+ if (result.response.status === 404) {
110
+ span?.addEvent('miss');
111
+ }
112
+ else if (result.response.ok) {
113
+ span?.addEvent('hit');
114
+ }
115
+ break;
116
+ }
117
+ }
118
+ },
119
+ }, logger);
120
+ let kv;
121
+ let stream;
122
+ let vector;
123
+ let sandbox;
124
+ let session;
125
+ let thread;
126
+ let sessionEvent;
127
+ let evalRunEvent;
128
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
129
+ let localRouter = null;
130
+ const ServerUrlMissingError = StructuredError('ServerUrlMissingError', 'serverUrl is required when using local services');
131
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
132
+ export function createServices(logger, config, serverUrl) {
133
+ const authenticated = isAuthenticated();
134
+ const useLocal = config?.services?.useLocal ?? false;
135
+ adapter = createFetchAdapter(logger);
136
+ // Use local services if explicitly requested OR if not authenticated
137
+ const shouldUseLocal = useLocal || !authenticated || process.env.AGENTUITY_FORCE_LOCAL_SERVICES === 'true';
138
+ if (shouldUseLocal) {
139
+ const db = getLocalDB();
140
+ const projectPath = normalizeProjectPath();
141
+ if (!serverUrl) {
142
+ throw new ServerUrlMissingError();
143
+ }
144
+ logger.info('Using local services (development only)');
145
+ kv = config?.services?.keyvalue || new LocalKeyValueStorage(db, projectPath);
146
+ stream = config?.services?.stream || new LocalStreamStorage(db, projectPath, serverUrl);
147
+ vector = config?.services?.vector || new LocalVectorStorage(db, projectPath);
148
+ session = config?.services?.session || new DefaultSessionProvider();
149
+ thread = config?.services?.thread || new LocalThreadProvider();
150
+ sessionEvent = config?.services?.sessionEvent
151
+ ? new CompositeSessionEventProvider(new LocalSessionEventProvider(), config.services.sessionEvent)
152
+ : new LocalSessionEventProvider();
153
+ evalRunEvent = config?.services?.evalRunEvent
154
+ ? new CompositeEvalRunEventProvider(new LocalEvalRunEventProvider(), config.services.evalRunEvent)
155
+ : new LocalEvalRunEventProvider();
156
+ localRouter = createLocalStorageRouter(db, projectPath);
157
+ return { localRouter };
158
+ }
159
+ // Reset local router if not using local services
160
+ localRouter = null;
161
+ // At this point we must be authenticated (since !authenticated would trigger local services above)
162
+ const catalystUrl = getCatalystBaseUrl();
163
+ const streamBaseUrl = getStreamBaseUrl();
164
+ kv = config?.services?.keyvalue || new KeyValueStorageService(getKvBaseUrl(), adapter);
165
+ stream = config?.services?.stream || new StreamStorageService(streamBaseUrl, adapter);
166
+ vector = config?.services?.vector || new VectorStorageService(getVectorBaseUrl(), adapter);
167
+ sandbox = new HTTPSandboxService(new APIClient(catalystUrl, logger), streamBaseUrl);
168
+ session = config?.services?.session || new DefaultSessionProvider();
169
+ thread = config?.services?.thread || new DefaultThreadProvider();
170
+ // FIXME: this is turned off for now for production until we have the new changes deployed
171
+ sessionEvent =
172
+ isProduction() && process.env.AGENTUITY_CLOUD_EXPORT_DIR
173
+ ? new JSONSessionEventProvider(process.env.AGENTUITY_CLOUD_EXPORT_DIR)
174
+ : new HTTPSessionEventProvider(new APIClient(catalystUrl, logger), logger);
175
+ if (config?.services?.sessionEvent) {
176
+ sessionEvent = new CompositeSessionEventProvider(sessionEvent, config.services.sessionEvent);
177
+ }
178
+ // FIXME: this is turned off for now for production until we have the new changes deployed
179
+ logger.debug('[SERVICES] Initializing eval run provider - region: %s, catalystBaseUrl: %s, isProduction: %s', getRegion(), catalystUrl, isProduction());
180
+ evalRunEvent =
181
+ isProduction() && process.env.AGENTUITY_CLOUD_EXPORT_DIR
182
+ ? new JSONEvalRunEventProvider(process.env.AGENTUITY_CLOUD_EXPORT_DIR)
183
+ : new HTTPEvalRunEventProvider(new APIClient(catalystUrl, logger), logger, catalystUrl);
184
+ if (config?.services?.evalRunEvent) {
185
+ evalRunEvent = new CompositeEvalRunEventProvider(evalRunEvent, config.services.evalRunEvent);
186
+ }
187
+ return {};
188
+ }
189
+ export function getThreadProvider() {
190
+ return thread;
191
+ }
192
+ export function getSessionProvider() {
193
+ return session;
194
+ }
195
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
196
+ export function getLocalRouter() {
197
+ return localRouter;
198
+ }
199
+ export function getSessionEventProvider() {
200
+ return sessionEvent;
201
+ }
202
+ export function getEvalRunEventProvider() {
203
+ return evalRunEvent;
204
+ }
205
+ export function getServices() {
206
+ return { kv, stream, vector, sandbox };
207
+ }
208
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
209
+ export function registerServices(o, includeAgents = false) {
210
+ Object.defineProperty(o, 'kv', {
211
+ get: () => kv,
212
+ enumerable: false,
213
+ configurable: false,
214
+ });
215
+ Object.defineProperty(o, 'stream', {
216
+ get: () => stream,
217
+ enumerable: false,
218
+ configurable: false,
219
+ });
220
+ Object.defineProperty(o, 'vector', {
221
+ get: () => vector,
222
+ enumerable: false,
223
+ configurable: false,
224
+ });
225
+ Object.defineProperty(o, 'sandbox', {
226
+ get: () => sandbox,
227
+ enumerable: false,
228
+ configurable: false,
229
+ });
230
+ // Also register agent registry if requested
231
+ if (includeAgents) {
232
+ // Cache the populated registry to avoid re-creating on every access
233
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
234
+ let cachedRegistry;
235
+ Object.defineProperty(o, 'agent', {
236
+ get: () => {
237
+ if (!cachedRegistry) {
238
+ // ESM-friendly: populateAgentsRegistry is imported statically
239
+ cachedRegistry = populateAgentsRegistry(o);
240
+ }
241
+ return cachedRegistry;
242
+ },
243
+ enumerable: false,
244
+ configurable: false,
245
+ });
246
+ }
247
+ }
248
+ //# sourceMappingURL=_services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_services.js","sourceRoot":"","sources":["../src/_services.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,208 @@
1
+ import { type Context } from '@opentelemetry/api';
2
+ import type { KeyValueStorage, StreamStorage, VectorStorage, SandboxService, Logger } from '@agentuity/core';
3
+ import type { AgentContext, AgentRegistry, AgentRuntimeState, AgentMetadata, AgentRunner } from './agent';
4
+ import { AGENT_RUNTIME, AGENT_IDS } from './_config';
5
+ import type { Thread, Session } from './session';
6
+ /**
7
+ * Options for creating a standalone agent context.
8
+ *
9
+ * Use this when executing agents outside of HTTP requests (Discord bots, cron jobs, etc.)
10
+ */
11
+ export interface StandaloneContextOptions {
12
+ /**
13
+ * Session ID for this execution. If not provided, will be auto-generated from trace context.
14
+ */
15
+ sessionId?: string;
16
+ /**
17
+ * Thread for multi-turn conversations. If not provided, will be restored/created from thread provider.
18
+ */
19
+ thread?: Thread;
20
+ /**
21
+ * Session for this execution. If not provided, will be created.
22
+ */
23
+ session?: Session;
24
+ /**
25
+ * Parent OpenTelemetry context for distributed tracing.
26
+ */
27
+ parentContext?: Context;
28
+ /**
29
+ * Trigger type for this execution (used in telemetry and session events).
30
+ */
31
+ trigger?: import('@agentuity/core').SessionStartEvent['trigger'];
32
+ }
33
+ /**
34
+ * Options for invoke() method.
35
+ */
36
+ export interface InvokeOptions {
37
+ /**
38
+ * Span name for OpenTelemetry trace (default: 'agent-invocation')
39
+ */
40
+ spanName?: string;
41
+ }
42
+ /**
43
+ * Standalone agent context for executing agents outside of HTTP requests.
44
+ *
45
+ * This context provides the same infrastructure as HTTP request contexts:
46
+ * - OpenTelemetry tracing with proper span hierarchy
47
+ * - Session and thread management (save/restore)
48
+ * - Background task handling (waitUntil)
49
+ * - Session event tracking (start/complete)
50
+ * - Access to all services (kv, stream, vector)
51
+ *
52
+ * @example
53
+ * ```typescript
54
+ * import { createAgentContext } from '@agentuity/runtime';
55
+ * import myAgent from './agents/my-agent';
56
+ *
57
+ * // Simple usage:
58
+ * const ctx = createAgentContext();
59
+ * const result = await ctx.invoke(() => myAgent.run(input));
60
+ *
61
+ * // With custom session tracking:
62
+ * const ctx = createAgentContext({
63
+ * sessionId: discordMessage.id,
64
+ * trigger: 'discord'
65
+ * });
66
+ * const result = await ctx.invoke(() => myAgent.run(input));
67
+ *
68
+ * // Reuse context for multiple agents:
69
+ * const ctx = createAgentContext();
70
+ * const result1 = await ctx.invoke(() => agent1.run(input1));
71
+ * const result2 = await ctx.invoke(() => agent2.run(result1));
72
+ * ```
73
+ */
74
+ export declare class StandaloneAgentContext<TAgentMap extends AgentRegistry = AgentRegistry, TConfig = unknown, TAppState = Record<string, never>> implements AgentContext<TAgentMap, TConfig, TAppState> {
75
+ agent: TAgentMap;
76
+ logger: Logger;
77
+ tracer: import('@opentelemetry/api').Tracer;
78
+ kv: KeyValueStorage;
79
+ stream: StreamStorage;
80
+ vector: VectorStorage;
81
+ sandbox: SandboxService;
82
+ config: TConfig;
83
+ app: TAppState;
84
+ current: AgentMetadata;
85
+ [AGENT_RUNTIME]: AgentRuntimeState;
86
+ sessionId: string;
87
+ state: Map<string, unknown>;
88
+ session: Session;
89
+ thread: Thread;
90
+ auth: import('@agentuity/auth/types').AuthInterface | null;
91
+ [AGENT_IDS]?: Set<string>;
92
+ private readonly parentContext;
93
+ private readonly trigger;
94
+ private readonly initialSessionId?;
95
+ constructor(options?: StandaloneContextOptions);
96
+ waitUntil(_callback: Promise<void> | (() => void | Promise<void>)): void;
97
+ /**
98
+ * Execute a function within this agent context.
99
+ *
100
+ * This method:
101
+ * 1. Creates an OpenTelemetry span for the invocation
102
+ * 2. Restores/creates session and thread
103
+ * 3. Sends session start event
104
+ * 4. Executes the function within AsyncLocalStorage context
105
+ * 5. Waits for background tasks (waitUntil)
106
+ * 6. Saves session and thread
107
+ * 7. Sends session complete event
108
+ *
109
+ * @param fn - Function to execute (typically () => agent.run(input))
110
+ * @param options - Optional configuration for the invocation
111
+ * @returns Promise that resolves to the function's return value
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * const result = await ctx.invoke(() => myAgent.run({ userId: '123' }));
116
+ * ```
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * // Multiple agents in sequence:
121
+ * const result = await ctx.invoke(async () => {
122
+ * const step1 = await agent1.run(input);
123
+ * return agent2.run(step1);
124
+ * });
125
+ * ```
126
+ */
127
+ invoke<T>(fn: () => Promise<T>, options?: InvokeOptions): Promise<T>;
128
+ /**
129
+ * Execute an agent with the given input within this context.
130
+ *
131
+ * This is a convenience method that wraps `invoke()` for cleaner syntax
132
+ * when running a single agent.
133
+ *
134
+ * @param agent - The agent to execute (must have a `run` method)
135
+ * @param input - Input to pass to the agent (if agent requires input)
136
+ * @returns Promise that resolves to the agent's output
137
+ *
138
+ * @example
139
+ * ```typescript
140
+ * import { createAgentContext } from '@agentuity/runtime';
141
+ * import myAgent from './agents/my-agent';
142
+ *
143
+ * const ctx = createAgentContext();
144
+ * const result = await ctx.run(myAgent, { name: 'World' });
145
+ * ```
146
+ *
147
+ * @example
148
+ * ```typescript
149
+ * // Agent without input
150
+ * const result = await ctx.run(statusAgent);
151
+ * ```
152
+ *
153
+ * @example
154
+ * ```typescript
155
+ * // Multiple agents in sequence
156
+ * const ctx = createAgentContext();
157
+ * const step1 = await ctx.run(preprocessAgent, rawData);
158
+ * const step2 = await ctx.run(processAgent, step1);
159
+ * const result = await ctx.run(postprocessAgent, step2);
160
+ * ```
161
+ */
162
+ run<TOutput>(agent: AgentRunner<any, any, any>, input?: unknown): Promise<TOutput>;
163
+ }
164
+ /**
165
+ * Create a standalone agent context for executing agents outside of HTTP requests.
166
+ *
167
+ * This is useful for Discord bots, cron jobs, CLI scripts, sandboxes, or any scenario
168
+ * where you need to run agents but don't have an HTTP request context.
169
+ *
170
+ * **Auto-initialization**: When running outside of the Agentuity runtime (dev server or cloud),
171
+ * this function automatically initializes minimal runtime globals. No manual setup required.
172
+ *
173
+ * @param options - Optional configuration for the context
174
+ * @returns A StandaloneAgentContext instance
175
+ *
176
+ * @example
177
+ * ```typescript
178
+ * import { createAgentContext } from '@agentuity/runtime';
179
+ * import myAgent from './agents/my-agent';
180
+ *
181
+ * // Simple usage with ctx.run() (recommended):
182
+ * const ctx = createAgentContext();
183
+ * const result = await ctx.run(myAgent, { name: 'World' });
184
+ *
185
+ * // Discord bot example:
186
+ * client.on('messageCreate', async (message) => {
187
+ * const ctx = createAgentContext({
188
+ * sessionId: message.id,
189
+ * trigger: 'discord'
190
+ * });
191
+ * const response = await ctx.run(chatAgent, { message: message.content });
192
+ * await message.reply(response.text);
193
+ * });
194
+ *
195
+ * // Cron job example:
196
+ * cron.schedule('0 * * * *', async () => {
197
+ * const ctx = createAgentContext({ trigger: 'cron' });
198
+ * await ctx.run(cleanupAgent);
199
+ * });
200
+ *
201
+ * // Multiple agents in sequence:
202
+ * const ctx = createAgentContext();
203
+ * const step1 = await ctx.run(preprocessAgent, rawData);
204
+ * const result = await ctx.run(processAgent, step1);
205
+ * ```
206
+ */
207
+ export declare function createAgentContext<TAppState = Record<string, never>>(options?: StandaloneContextOptions): StandaloneAgentContext<AgentRegistry, unknown, TAppState>;
208
+ //# sourceMappingURL=_standalone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_standalone.d.ts","sourceRoot":"","sources":["../src/_standalone.ts"],"names":[],"mappings":"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"}