@agentuity/runtime 0.0.105 → 0.0.107
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/dist/_context.d.ts +2 -1
- package/dist/_context.d.ts.map +1 -1
- package/dist/_context.js +1 -0
- package/dist/_context.js.map +1 -1
- package/dist/_metadata.d.ts +4 -0
- package/dist/_metadata.d.ts.map +1 -1
- package/dist/_metadata.js +28 -1
- package/dist/_metadata.js.map +1 -1
- package/dist/_server.d.ts +1 -1
- package/dist/_server.d.ts.map +1 -1
- package/dist/_server.js +4 -1
- package/dist/_server.js.map +1 -1
- package/dist/_services.d.ts +2 -1
- package/dist/_services.d.ts.map +1 -1
- package/dist/_services.js +11 -2
- package/dist/_services.js.map +1 -1
- package/dist/_standalone.d.ts +2 -1
- package/dist/_standalone.d.ts.map +1 -1
- package/dist/_standalone.js +1 -0
- package/dist/_standalone.js.map +1 -1
- package/dist/_tokens.d.ts +9 -1
- package/dist/_tokens.d.ts.map +1 -1
- package/dist/_tokens.js +5 -8
- package/dist/_tokens.js.map +1 -1
- package/dist/agent.d.ts +26 -2
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +10 -0
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts +2 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js.map +1 -1
- package/dist/bun-s3-patch.d.ts +26 -0
- package/dist/bun-s3-patch.d.ts.map +1 -0
- package/dist/bun-s3-patch.js +65 -0
- package/dist/bun-s3-patch.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/middleware.d.ts +1 -1
- package/dist/middleware.d.ts.map +1 -1
- package/dist/middleware.js +8 -6
- package/dist/middleware.js.map +1 -1
- package/dist/services/sandbox/http.d.ts +13 -0
- package/dist/services/sandbox/http.d.ts.map +1 -0
- package/dist/services/sandbox/http.js +130 -0
- package/dist/services/sandbox/http.js.map +1 -0
- package/dist/services/sandbox/index.d.ts +2 -0
- package/dist/services/sandbox/index.d.ts.map +1 -0
- package/dist/services/sandbox/index.js +2 -0
- package/dist/services/sandbox/index.js.map +1 -0
- package/dist/services/session/http.d.ts +12 -1
- package/dist/services/session/http.d.ts.map +1 -1
- package/dist/services/session/http.js +31 -1
- package/dist/services/session/http.js.map +1 -1
- package/dist/services/thread/local.d.ts.map +1 -1
- package/dist/services/thread/local.js +7 -6
- package/dist/services/thread/local.js.map +1 -1
- package/dist/session.d.ts +35 -8
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +25 -24
- package/dist/session.js.map +1 -1
- package/dist/workbench.d.ts.map +1 -1
- package/dist/workbench.js +11 -8
- package/dist/workbench.js.map +1 -1
- package/package.json +5 -5
- package/src/_context.ts +2 -0
- package/src/_metadata.ts +37 -1
- package/src/_server.ts +4 -1
- package/src/_services.ts +12 -2
- package/src/_standalone.ts +7 -1
- package/src/_tokens.ts +5 -9
- package/src/agent.ts +40 -1
- package/src/app.ts +2 -0
- package/src/bun-s3-patch.ts +91 -0
- package/src/index.ts +3 -0
- package/src/middleware.ts +8 -10
- package/src/services/sandbox/http.ts +215 -0
- package/src/services/sandbox/index.ts +1 -0
- package/src/services/session/http.ts +39 -1
- package/src/services/thread/local.ts +8 -5
- package/src/session.ts +58 -32
- package/src/workbench.ts +11 -12
package/dist/workbench.js
CHANGED
|
@@ -100,17 +100,20 @@ export const createWorkbenchExecutionRoute = () => {
|
|
|
100
100
|
else {
|
|
101
101
|
ctx.var.logger?.warn('Thread not available in workbench execution route');
|
|
102
102
|
}
|
|
103
|
-
|
|
104
|
-
if (result === undefined || result === null) {
|
|
105
|
-
return ctx.json({ success: true, result: null });
|
|
106
|
-
}
|
|
107
|
-
return ctx.json(result);
|
|
103
|
+
return ctx.json({ success: true, data: result ?? null });
|
|
108
104
|
}
|
|
109
105
|
catch (error) {
|
|
106
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
107
|
+
// Return 200 with wrapped error so UI can display it properly
|
|
110
108
|
return ctx.json({
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
109
|
+
success: false,
|
|
110
|
+
error: {
|
|
111
|
+
message: err.message,
|
|
112
|
+
stack: err.stack,
|
|
113
|
+
code: 'code' in err && typeof err.code === 'string' ? err.code : 'EXECUTION_ERROR',
|
|
114
|
+
cause: err.cause,
|
|
115
|
+
},
|
|
116
|
+
});
|
|
114
117
|
}
|
|
115
118
|
};
|
|
116
119
|
};
|
package/dist/workbench.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbench.js","sourceRoot":"","sources":["../src/workbench.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workbench.js","sourceRoot":"","sources":["../src/workbench.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentuity/runtime",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.107",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"author": "Agentuity employees and contributors",
|
|
6
6
|
"type": "module",
|
|
@@ -26,9 +26,9 @@
|
|
|
26
26
|
"prepublishOnly": "bun run clean && bun run build"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@agentuity/core": "0.0.
|
|
30
|
-
"@agentuity/schema": "0.0.
|
|
31
|
-
"@agentuity/server": "0.0.
|
|
29
|
+
"@agentuity/core": "0.0.107",
|
|
30
|
+
"@agentuity/schema": "0.0.107",
|
|
31
|
+
"@agentuity/server": "0.0.107",
|
|
32
32
|
"@opentelemetry/api": "^1.9.0",
|
|
33
33
|
"@opentelemetry/api-logs": "^0.207.0",
|
|
34
34
|
"@opentelemetry/auto-instrumentations-node": "^0.66.0",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"zod": "^4.1.12"
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
|
-
"@agentuity/test-utils": "0.0.
|
|
53
|
+
"@agentuity/test-utils": "0.0.107",
|
|
54
54
|
"@types/bun": "latest",
|
|
55
55
|
"@types/react": "^19.2.2",
|
|
56
56
|
"@types/react-dom": "^19.2.2",
|
package/src/_context.ts
CHANGED
|
@@ -6,6 +6,7 @@ import {
|
|
|
6
6
|
type KeyValueStorage,
|
|
7
7
|
type StreamStorage,
|
|
8
8
|
type VectorStorage,
|
|
9
|
+
type SandboxService,
|
|
9
10
|
} from '@agentuity/core';
|
|
10
11
|
import type { AgentContext, AgentRegistry, AgentRunner, AgentRuntimeState } from './agent';
|
|
11
12
|
import { AGENT_RUNTIME, CURRENT_AGENT } from './_config';
|
|
@@ -44,6 +45,7 @@ export class RequestAgentContext<
|
|
|
44
45
|
kv!: KeyValueStorage;
|
|
45
46
|
stream!: StreamStorage;
|
|
46
47
|
vector!: VectorStorage;
|
|
48
|
+
sandbox!: SandboxService;
|
|
47
49
|
state: Map<string, unknown>;
|
|
48
50
|
session: Session;
|
|
49
51
|
thread: Thread;
|
package/src/_metadata.ts
CHANGED
|
@@ -83,9 +83,26 @@ let _metadataCache: BuildMetadata | null | undefined = null;
|
|
|
83
83
|
|
|
84
84
|
/**
|
|
85
85
|
* Get the path to agentuity.metadata.json
|
|
86
|
+
*
|
|
87
|
+
* Checks multiple locations to support both dev and production:
|
|
88
|
+
* - Production: cwd is .agentuity/, file is at cwd/agentuity.metadata.json
|
|
89
|
+
* - Dev: cwd is project root, file is at cwd/.agentuity/agentuity.metadata.json
|
|
86
90
|
*/
|
|
87
91
|
export function getMetadataPath(): string {
|
|
88
|
-
|
|
92
|
+
// Production path: running from .agentuity/ directory
|
|
93
|
+
const productionPath = join(process.cwd(), 'agentuity.metadata.json');
|
|
94
|
+
if (existsSync(productionPath)) {
|
|
95
|
+
return productionPath;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// Dev path: running from project root
|
|
99
|
+
const devPath = join(process.cwd(), '.agentuity', 'agentuity.metadata.json');
|
|
100
|
+
if (existsSync(devPath)) {
|
|
101
|
+
return devPath;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
// Default to production path (will fail gracefully in loadBuildMetadata)
|
|
105
|
+
return productionPath;
|
|
89
106
|
}
|
|
90
107
|
|
|
91
108
|
/**
|
|
@@ -158,6 +175,9 @@ let _evalsByAgentId: Map<string, Map<string, BuildMetadataEval>> | null = null;
|
|
|
158
175
|
// Track if we've already attempted a reload for empty eval map
|
|
159
176
|
let _evalReloadAttempted = false;
|
|
160
177
|
|
|
178
|
+
// Track if we've already attempted a reload for empty agent map
|
|
179
|
+
let _agentReloadAttempted = false;
|
|
180
|
+
|
|
161
181
|
/**
|
|
162
182
|
* Build agent lookup maps from metadata
|
|
163
183
|
*/
|
|
@@ -219,6 +239,22 @@ function ensureAgentMaps(): void {
|
|
|
219
239
|
*/
|
|
220
240
|
export function getAgentMetadataByName(agentName: string): BuildMetadataAgent | undefined {
|
|
221
241
|
ensureAgentMaps();
|
|
242
|
+
|
|
243
|
+
// If agent map is empty, the cache may have been built before metadata was ready
|
|
244
|
+
// Try clearing and reloading once (only attempt once to avoid repeated reloads)
|
|
245
|
+
// This mirrors the reload logic in getEvalMetadata
|
|
246
|
+
if (_agentsByName?.size === 0 && !_agentReloadAttempted) {
|
|
247
|
+
_agentReloadAttempted = true;
|
|
248
|
+
internal.info(
|
|
249
|
+
`[metadata] getAgentMetadataByName: agent map is empty, attempting cache clear and reload`
|
|
250
|
+
);
|
|
251
|
+
clearMetadataCache();
|
|
252
|
+
ensureAgentMaps();
|
|
253
|
+
internal.info(
|
|
254
|
+
`[metadata] getAgentMetadataByName: after reload, agent map size: ${_agentsByName?.size ?? 0}`
|
|
255
|
+
);
|
|
256
|
+
}
|
|
257
|
+
|
|
222
258
|
return _agentsByName?.get(agentName);
|
|
223
259
|
}
|
|
224
260
|
|
package/src/_server.ts
CHANGED
|
@@ -8,13 +8,15 @@ import type { Hono, Context as HonoContext } from 'hono';
|
|
|
8
8
|
import type { Env, PrivateVariables } from './app';
|
|
9
9
|
import type { Tracer } from '@opentelemetry/api';
|
|
10
10
|
import type { SpanProcessor } from '@opentelemetry/sdk-trace-base';
|
|
11
|
+
import { TokenSpanProcessor } from './_tokens';
|
|
11
12
|
|
|
12
13
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
13
14
|
let globalRouterInstance: Hono<Env<any>> | null = null;
|
|
14
15
|
let globalLogger: Logger | null = null;
|
|
15
16
|
let globalTracer: Tracer | null = null;
|
|
16
17
|
|
|
17
|
-
|
|
18
|
+
// Initialize with built-in span processors
|
|
19
|
+
const spanProcessors: SpanProcessor[] = [new TokenSpanProcessor()];
|
|
18
20
|
|
|
19
21
|
/**
|
|
20
22
|
* List of AgentContext properties that should trigger helpful error messages
|
|
@@ -27,6 +29,7 @@ export const AGENT_CONTEXT_PROPERTIES = [
|
|
|
27
29
|
'kv',
|
|
28
30
|
'stream',
|
|
29
31
|
'vector',
|
|
32
|
+
'sandbox',
|
|
30
33
|
'state',
|
|
31
34
|
'thread',
|
|
32
35
|
'session',
|
package/src/_services.ts
CHANGED
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
type KeyValueStorage,
|
|
8
8
|
type StreamStorage,
|
|
9
9
|
type VectorStorage,
|
|
10
|
+
type SandboxService,
|
|
10
11
|
type ListStreamsResponse,
|
|
11
12
|
type VectorUpsertResult,
|
|
12
13
|
type VectorSearchResult,
|
|
@@ -16,6 +17,7 @@ import {
|
|
|
16
17
|
StructuredError,
|
|
17
18
|
} from '@agentuity/core';
|
|
18
19
|
import { APIClient, createServerFetchAdapter, getServiceUrls } from '@agentuity/server';
|
|
20
|
+
import { HTTPSandboxService } from './services/sandbox';
|
|
19
21
|
import {
|
|
20
22
|
CompositeSessionEventProvider,
|
|
21
23
|
LocalSessionEventProvider,
|
|
@@ -166,6 +168,7 @@ const createFetchAdapter = (logger: Logger) =>
|
|
|
166
168
|
let kv: KeyValueStorage;
|
|
167
169
|
let stream: StreamStorage;
|
|
168
170
|
let vector: VectorStorage;
|
|
171
|
+
let sandbox: SandboxService;
|
|
169
172
|
let session: SessionProvider;
|
|
170
173
|
let thread: ThreadProvider;
|
|
171
174
|
let sessionEvent: SessionEventProvider;
|
|
@@ -227,9 +230,11 @@ export function createServices(logger: Logger, config?: AppConfig<any>, serverUr
|
|
|
227
230
|
|
|
228
231
|
// At this point we must be authenticated (since !authenticated would trigger local services above)
|
|
229
232
|
const catalystUrl = getCatalystBaseUrl();
|
|
233
|
+
const streamBaseUrl = getStreamBaseUrl();
|
|
230
234
|
kv = config?.services?.keyvalue || new KeyValueStorageService(getKvBaseUrl(), adapter);
|
|
231
|
-
stream = config?.services?.stream || new StreamStorageService(
|
|
235
|
+
stream = config?.services?.stream || new StreamStorageService(streamBaseUrl, adapter);
|
|
232
236
|
vector = config?.services?.vector || new VectorStorageService(getVectorBaseUrl(), adapter);
|
|
237
|
+
sandbox = new HTTPSandboxService(new APIClient(catalystUrl, logger), streamBaseUrl);
|
|
233
238
|
session = config?.services?.session || new DefaultSessionProvider();
|
|
234
239
|
thread = config?.services?.thread || new DefaultThreadProvider();
|
|
235
240
|
// FIXME: this is turned off for now for production until we have the new changes deployed
|
|
@@ -280,7 +285,7 @@ export function getEvalRunEventProvider() {
|
|
|
280
285
|
}
|
|
281
286
|
|
|
282
287
|
export function getServices() {
|
|
283
|
-
return { kv, stream, vector };
|
|
288
|
+
return { kv, stream, vector, sandbox };
|
|
284
289
|
}
|
|
285
290
|
|
|
286
291
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
@@ -300,6 +305,11 @@ export function registerServices(o: any, includeAgents = false) {
|
|
|
300
305
|
enumerable: false,
|
|
301
306
|
configurable: false,
|
|
302
307
|
});
|
|
308
|
+
Object.defineProperty(o, 'sandbox', {
|
|
309
|
+
get: () => sandbox,
|
|
310
|
+
enumerable: false,
|
|
311
|
+
configurable: false,
|
|
312
|
+
});
|
|
303
313
|
|
|
304
314
|
// Also register agent registry if requested
|
|
305
315
|
if (includeAgents) {
|
package/src/_standalone.ts
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
import { context, SpanKind, SpanStatusCode, type Context, trace } from '@opentelemetry/api';
|
|
2
2
|
import { TraceState } from '@opentelemetry/core';
|
|
3
|
-
import type {
|
|
3
|
+
import type {
|
|
4
|
+
KeyValueStorage,
|
|
5
|
+
StreamStorage,
|
|
6
|
+
VectorStorage,
|
|
7
|
+
SandboxService,
|
|
8
|
+
} from '@agentuity/core';
|
|
4
9
|
import type { AgentContext, AgentRegistry, AgentRuntimeState } from './agent';
|
|
5
10
|
import { AGENT_RUNTIME, AGENT_IDS } from './_config';
|
|
6
11
|
import type { Logger } from './logger';
|
|
@@ -97,6 +102,7 @@ export class StandaloneAgentContext<
|
|
|
97
102
|
kv!: KeyValueStorage;
|
|
98
103
|
stream!: StreamStorage;
|
|
99
104
|
vector!: VectorStorage;
|
|
105
|
+
sandbox!: SandboxService;
|
|
100
106
|
config: TConfig;
|
|
101
107
|
app: TAppState;
|
|
102
108
|
[AGENT_RUNTIME]: AgentRuntimeState;
|
package/src/_tokens.ts
CHANGED
|
@@ -3,12 +3,12 @@ import type { Span } from '@opentelemetry/sdk-trace-base';
|
|
|
3
3
|
import type { SpanProcessor } from '@opentelemetry/sdk-trace-base';
|
|
4
4
|
import { inAgentContext, inHTTPContext, getHTTPContext } from './_context';
|
|
5
5
|
import { SpanAttributes } from '@traceloop/ai-semantic-conventions';
|
|
6
|
-
import { addSpanProcessor } from './_server';
|
|
7
6
|
|
|
8
7
|
export const TOKENS_HEADER = 'x-agentuity-tokens';
|
|
9
8
|
export const DURATION_HEADER = 'x-agentuity-duration';
|
|
10
9
|
|
|
11
|
-
|
|
10
|
+
// AI SDK span names: ai.generateText, ai.streamText, ai.generateObject, ai.streamObject, ai.embed, ai.embedMany
|
|
11
|
+
const AI_SDK_SPAN_PREFIX = 'ai.';
|
|
12
12
|
const AI_SDK_MODEL_NAME = 'ai.model.id';
|
|
13
13
|
const AI_SDK_USAGE_PROMPT_TOKENS = 'ai.usage.promptTokens';
|
|
14
14
|
const AI_SDK_USAGE_COMPLETION_TOKENS = 'ai.usage.completionTokens';
|
|
@@ -50,7 +50,7 @@ const getTokenValue = (val: AttributeValue | undefined): number => {
|
|
|
50
50
|
return 0;
|
|
51
51
|
};
|
|
52
52
|
|
|
53
|
-
class TokenSpanProcessor implements SpanProcessor {
|
|
53
|
+
export class TokenSpanProcessor implements SpanProcessor {
|
|
54
54
|
onStart(_span: Span, _context: Context) {
|
|
55
55
|
return;
|
|
56
56
|
}
|
|
@@ -61,8 +61,8 @@ class TokenSpanProcessor implements SpanProcessor {
|
|
|
61
61
|
const tokenLine = ctx.res.headers.get(TOKENS_HEADER) ?? undefined;
|
|
62
62
|
const tokens = parseTokenHeader(tokenLine);
|
|
63
63
|
let mutated = false;
|
|
64
|
-
//
|
|
65
|
-
if (span.name
|
|
64
|
+
// AI SDK uses ai.* span names but doesn't use the semantic attribute names
|
|
65
|
+
if (span.name.startsWith(AI_SDK_SPAN_PREFIX) && AI_SDK_MODEL_NAME in span.attributes) {
|
|
66
66
|
const model = span.attributes[AI_SDK_MODEL_NAME]!.toString();
|
|
67
67
|
let totalTokens = tokens.get(model) ?? 0;
|
|
68
68
|
if (AI_SDK_USAGE_PROMPT_TOKENS in span.attributes) {
|
|
@@ -110,7 +110,3 @@ class TokenSpanProcessor implements SpanProcessor {
|
|
|
110
110
|
return Promise.resolve();
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
-
|
|
114
|
-
export default function register() {
|
|
115
|
-
addSpanProcessor(new TokenSpanProcessor());
|
|
116
|
-
}
|
package/src/agent.ts
CHANGED
|
@@ -5,6 +5,7 @@ import {
|
|
|
5
5
|
type StandardSchemaV1,
|
|
6
6
|
type StreamStorage,
|
|
7
7
|
type VectorStorage,
|
|
8
|
+
type SandboxService,
|
|
8
9
|
type InferInput,
|
|
9
10
|
type InferOutput,
|
|
10
11
|
toCamelCase,
|
|
@@ -204,6 +205,31 @@ export interface AgentContext<
|
|
|
204
205
|
*/
|
|
205
206
|
vector: VectorStorage;
|
|
206
207
|
|
|
208
|
+
/**
|
|
209
|
+
* Sandbox service for creating and running isolated code execution environments.
|
|
210
|
+
*
|
|
211
|
+
* @example
|
|
212
|
+
* ```typescript
|
|
213
|
+
* // One-shot execution
|
|
214
|
+
* const result = await ctx.sandbox.run({
|
|
215
|
+
* command: {
|
|
216
|
+
* exec: ['bun', 'run', 'index.ts'],
|
|
217
|
+
* files: [{ path: 'index.ts', content: Buffer.from('console.log("hello")') }]
|
|
218
|
+
* }
|
|
219
|
+
* });
|
|
220
|
+
* console.log('Exit:', result.exitCode);
|
|
221
|
+
*
|
|
222
|
+
* // Interactive sandbox
|
|
223
|
+
* const sandbox = await ctx.sandbox.create({
|
|
224
|
+
* resources: { memory: '1Gi', cpu: '1000m' }
|
|
225
|
+
* });
|
|
226
|
+
* await sandbox.execute({ command: ['bun', 'init'] });
|
|
227
|
+
* await sandbox.execute({ command: ['bun', 'add', 'zod'] });
|
|
228
|
+
* await sandbox.destroy();
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
sandbox: SandboxService;
|
|
232
|
+
|
|
207
233
|
/**
|
|
208
234
|
* In-memory state storage scoped to the current request.
|
|
209
235
|
* Use for passing data between middleware and handlers.
|
|
@@ -1288,7 +1314,7 @@ export interface CreateAgentConfigExplicit<
|
|
|
1288
1314
|
* schema: {
|
|
1289
1315
|
* input: z.object({ name: z.string() }),
|
|
1290
1316
|
* output: z.string(),
|
|
1291
|
-
* stream: false
|
|
1317
|
+
* stream: false,
|
|
1292
1318
|
* }
|
|
1293
1319
|
* ```
|
|
1294
1320
|
*/
|
|
@@ -1753,6 +1779,19 @@ export function createAgent<
|
|
|
1753
1779
|
}
|
|
1754
1780
|
}
|
|
1755
1781
|
|
|
1782
|
+
// Error if agent has no metadata IDs in production - this causes agent_ids to be empty in sessions
|
|
1783
|
+
// which affects analytics, billing attribution, and session filtering
|
|
1784
|
+
// Only enforce in production (when AGENTUITY_CLOUD_PROJECT_ID is set) to allow dev/test without metadata
|
|
1785
|
+
if (!metadata.id && !metadata.agentId && runtimeConfig.getProjectId()) {
|
|
1786
|
+
throw new Error(
|
|
1787
|
+
`Agent "${name}" has no metadata IDs (id and agentId are empty). ` +
|
|
1788
|
+
`This will result in empty agent_ids in session events. ` +
|
|
1789
|
+
`Ensure agentuity.metadata.json exists in the runtime directory ` +
|
|
1790
|
+
`(checked: ${process.cwd()}/agentuity.metadata.json and ${process.cwd()}/.agentuity/agentuity.metadata.json). ` +
|
|
1791
|
+
`Run 'agentuity build' to generate the metadata file.`
|
|
1792
|
+
);
|
|
1793
|
+
}
|
|
1794
|
+
|
|
1756
1795
|
const agent: any = {
|
|
1757
1796
|
handler,
|
|
1758
1797
|
metadata,
|
package/src/app.ts
CHANGED
|
@@ -10,6 +10,7 @@ import type {
|
|
|
10
10
|
EvalRunEventProvider,
|
|
11
11
|
StreamStorage,
|
|
12
12
|
VectorStorage,
|
|
13
|
+
SandboxService,
|
|
13
14
|
SessionStartEvent,
|
|
14
15
|
} from '@agentuity/core';
|
|
15
16
|
|
|
@@ -152,6 +153,7 @@ export interface Variables<TAppState = Record<string, never>> {
|
|
|
152
153
|
kv: KeyValueStorage;
|
|
153
154
|
stream: StreamStorage;
|
|
154
155
|
vector: VectorStorage;
|
|
156
|
+
sandbox: SandboxService;
|
|
155
157
|
app: TAppState;
|
|
156
158
|
}
|
|
157
159
|
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bun S3 monkey-patch for Agentuity storage endpoints
|
|
3
|
+
*
|
|
4
|
+
* Agentuity storage uses virtual-hosted-style URLs (e.g., ag-{id}.t3.storage.dev).
|
|
5
|
+
* Bun's default s3 export uses path-style addressing, causing bucket path mismatch.
|
|
6
|
+
*
|
|
7
|
+
* This module patches Bun.S3Client.prototype.file to automatically set
|
|
8
|
+
* virtualHostedStyle: true when S3_ENDPOINT matches *.storage.dev
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
const PATCHED_SYMBOL = Symbol.for('agentuity.s3.patched');
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Check if an endpoint is an Agentuity storage endpoint (*.storage.dev)
|
|
15
|
+
*/
|
|
16
|
+
export function isAgentuityStorageEndpoint(raw: string): boolean {
|
|
17
|
+
let host = raw.trim();
|
|
18
|
+
if (!host) return false;
|
|
19
|
+
|
|
20
|
+
try {
|
|
21
|
+
const url = new URL(host.includes('://') ? host : `https://${host}`);
|
|
22
|
+
host = url.hostname;
|
|
23
|
+
} catch {
|
|
24
|
+
// raw value wasn't a URL string; treat it as host already
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
return host === 'storage.dev' || host.endsWith('.storage.dev');
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Patch Bun's S3Client to automatically use virtualHostedStyle for storage.dev endpoints
|
|
32
|
+
*
|
|
33
|
+
* This function:
|
|
34
|
+
* 1. Checks if we're running in Bun with S3 support
|
|
35
|
+
* 2. Checks if S3_ENDPOINT (or AWS_ENDPOINT) points to *.storage.dev
|
|
36
|
+
* 3. Patches S3Client.prototype.file to inject virtualHostedStyle: true
|
|
37
|
+
*
|
|
38
|
+
* Safe to call in non-Bun environments (will no-op).
|
|
39
|
+
* Idempotent (safe to call multiple times).
|
|
40
|
+
*/
|
|
41
|
+
export function patchBunS3ForStorageDev(): void {
|
|
42
|
+
const bun = (globalThis as Record<string, unknown>).Bun as
|
|
43
|
+
| {
|
|
44
|
+
s3?: unknown;
|
|
45
|
+
S3Client?: {
|
|
46
|
+
prototype: {
|
|
47
|
+
file?: (path: string, options?: Record<string, unknown>) => unknown;
|
|
48
|
+
[PATCHED_SYMBOL]?: boolean;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
| undefined;
|
|
53
|
+
|
|
54
|
+
if (!bun?.s3 || !bun.S3Client?.prototype?.file) {
|
|
55
|
+
return;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
const endpointEnv = process.env.S3_ENDPOINT ?? process.env.AWS_ENDPOINT;
|
|
59
|
+
if (!endpointEnv) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (!isAgentuityStorageEndpoint(endpointEnv)) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
const S3ClientProto = bun.S3Client.prototype;
|
|
68
|
+
|
|
69
|
+
if (S3ClientProto[PATCHED_SYMBOL]) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const originalFile = S3ClientProto.file!;
|
|
74
|
+
|
|
75
|
+
S3ClientProto.file = function patchedFile(
|
|
76
|
+
this: unknown,
|
|
77
|
+
path: string,
|
|
78
|
+
options?: Record<string, unknown>
|
|
79
|
+
): unknown {
|
|
80
|
+
let nextOptions = options;
|
|
81
|
+
|
|
82
|
+
// Apply virtualHostedStyle to all S3Client instances when endpoint is storage.dev
|
|
83
|
+
if (!nextOptions || typeof nextOptions.virtualHostedStyle === 'undefined') {
|
|
84
|
+
nextOptions = { ...nextOptions, virtualHostedStyle: true };
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
return originalFile.call(this, path, nextOptions);
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
S3ClientProto[PATCHED_SYMBOL] = true;
|
|
91
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -216,3 +216,6 @@ export interface AppState {}
|
|
|
216
216
|
// This allows generated code to import from @agentuity/runtime instead of having
|
|
217
217
|
// a direct dependency on @agentuity/server
|
|
218
218
|
export { bootstrapRuntimeEnv, type RuntimeBootstrapOptions } from '@agentuity/server';
|
|
219
|
+
|
|
220
|
+
// bun-s3-patch.ts exports
|
|
221
|
+
export { patchBunS3ForStorageDev, isAgentuityStorageEndpoint } from './bun-s3-patch';
|
package/src/middleware.ts
CHANGED
|
@@ -38,6 +38,7 @@ export const AGENT_CONTEXT_PROPERTIES = [
|
|
|
38
38
|
'kv',
|
|
39
39
|
'stream',
|
|
40
40
|
'vector',
|
|
41
|
+
'sandbox',
|
|
41
42
|
'state',
|
|
42
43
|
'thread',
|
|
43
44
|
'session',
|
|
@@ -94,6 +95,7 @@ export function createBaseMiddleware(config: MiddlewareConfig) {
|
|
|
94
95
|
c.set('kv', services.kv);
|
|
95
96
|
c.set('stream', services.stream);
|
|
96
97
|
c.set('vector', services.vector);
|
|
98
|
+
c.set('sandbox', services.sandbox);
|
|
97
99
|
|
|
98
100
|
installContextPropertyHelpers(c);
|
|
99
101
|
|
|
@@ -278,17 +280,17 @@ export function createOtelMiddleware() {
|
|
|
278
280
|
(c as any).set('trigger', 'api');
|
|
279
281
|
|
|
280
282
|
// Send session start event (so evalruns can reference this session)
|
|
283
|
+
// The provider decides whether to send based on available data (orgId, projectId, etc.)
|
|
281
284
|
const sessionEventProvider = getSessionEventProvider();
|
|
282
|
-
|
|
283
|
-
if (shouldSendSession && sessionEventProvider) {
|
|
285
|
+
if (sessionEventProvider) {
|
|
284
286
|
try {
|
|
285
287
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
286
288
|
const routeId = (c as any).var?.routeId || '';
|
|
287
289
|
await sessionEventProvider.start({
|
|
288
290
|
id: sessionId,
|
|
289
291
|
threadId: thread.id,
|
|
290
|
-
orgId,
|
|
291
|
-
projectId,
|
|
292
|
+
orgId: orgId || '',
|
|
293
|
+
projectId: projectId || '',
|
|
292
294
|
deploymentId: deploymentId || undefined,
|
|
293
295
|
devmode: isDevMode,
|
|
294
296
|
trigger: 'api',
|
|
@@ -322,12 +324,8 @@ export function createOtelMiddleware() {
|
|
|
322
324
|
throw ex;
|
|
323
325
|
} finally {
|
|
324
326
|
// Send session complete event
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
shouldSendSession,
|
|
328
|
-
!!sessionEventProvider
|
|
329
|
-
);
|
|
330
|
-
if (shouldSendSession && sessionEventProvider) {
|
|
327
|
+
// The provider decides whether to actually send based on its requirements
|
|
328
|
+
if (sessionEventProvider) {
|
|
331
329
|
try {
|
|
332
330
|
const userData = session.serializeUserData();
|
|
333
331
|
internal.info(
|