@agentuity/runtime 2.0.11 → 3.0.0-alpha.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.
- package/dist/index.d.ts +37 -65
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +59 -61
- package/dist/index.js.map +1 -1
- package/package.json +9 -38
- package/src/index.ts +58 -259
- package/AGENTS.md +0 -116
- package/dist/_config.d.ts +0 -100
- package/dist/_config.d.ts.map +0 -1
- package/dist/_config.js +0 -147
- package/dist/_config.js.map +0 -1
- package/dist/_context.d.ts +0 -80
- package/dist/_context.d.ts.map +0 -1
- package/dist/_context.js +0 -160
- package/dist/_context.js.map +0 -1
- package/dist/_events.d.ts +0 -64
- package/dist/_events.d.ts.map +0 -1
- package/dist/_events.js +0 -92
- package/dist/_events.js.map +0 -1
- package/dist/_globals.d.ts +0 -58
- package/dist/_globals.d.ts.map +0 -1
- package/dist/_globals.js +0 -71
- package/dist/_globals.js.map +0 -1
- package/dist/_idle.d.ts +0 -7
- package/dist/_idle.d.ts.map +0 -1
- package/dist/_idle.js +0 -10
- package/dist/_idle.js.map +0 -1
- package/dist/_metadata.d.ts +0 -117
- package/dist/_metadata.d.ts.map +0 -1
- package/dist/_metadata.js +0 -268
- package/dist/_metadata.js.map +0 -1
- package/dist/_process-protection.d.ts +0 -27
- package/dist/_process-protection.d.ts.map +0 -1
- package/dist/_process-protection.js +0 -56
- package/dist/_process-protection.js.map +0 -1
- package/dist/_server.d.ts +0 -50
- package/dist/_server.d.ts.map +0 -1
- package/dist/_server.js +0 -89
- package/dist/_server.js.map +0 -1
- package/dist/_services.d.ts +0 -25
- package/dist/_services.d.ts.map +0 -1
- package/dist/_services.js +0 -286
- package/dist/_services.js.map +0 -1
- package/dist/_standalone.d.ts +0 -212
- package/dist/_standalone.d.ts.map +0 -1
- package/dist/_standalone.js +0 -556
- package/dist/_standalone.js.map +0 -1
- package/dist/_tokens.d.ts +0 -12
- package/dist/_tokens.d.ts.map +0 -1
- package/dist/_tokens.js +0 -97
- package/dist/_tokens.js.map +0 -1
- package/dist/_util.d.ts +0 -16
- package/dist/_util.d.ts.map +0 -1
- package/dist/_util.js +0 -54
- package/dist/_util.js.map +0 -1
- package/dist/_validation.d.ts +0 -89
- package/dist/_validation.d.ts.map +0 -1
- package/dist/_validation.js +0 -29
- package/dist/_validation.js.map +0 -1
- package/dist/_waituntil.d.ts +0 -32
- package/dist/_waituntil.d.ts.map +0 -1
- package/dist/_waituntil.js +0 -156
- package/dist/_waituntil.js.map +0 -1
- package/dist/agent.d.ts +0 -1262
- package/dist/agent.d.ts.map +0 -1
- package/dist/agent.js +0 -981
- package/dist/agent.js.map +0 -1
- package/dist/app.d.ts +0 -514
- package/dist/app.d.ts.map +0 -1
- package/dist/app.js +0 -228
- package/dist/app.js.map +0 -1
- package/dist/bootstrap.d.ts +0 -44
- package/dist/bootstrap.d.ts.map +0 -1
- package/dist/bootstrap.js +0 -259
- package/dist/bootstrap.js.map +0 -1
- package/dist/bun-s3-patch.d.ts +0 -37
- package/dist/bun-s3-patch.d.ts.map +0 -1
- package/dist/bun-s3-patch.js +0 -142
- package/dist/bun-s3-patch.js.map +0 -1
- package/dist/cors.d.ts +0 -42
- package/dist/cors.d.ts.map +0 -1
- package/dist/cors.js +0 -117
- package/dist/cors.js.map +0 -1
- package/dist/dev-patches/aisdk.d.ts +0 -17
- package/dist/dev-patches/aisdk.d.ts.map +0 -1
- package/dist/dev-patches/aisdk.js +0 -160
- package/dist/dev-patches/aisdk.js.map +0 -1
- package/dist/dev-patches/gateway.d.ts +0 -16
- package/dist/dev-patches/gateway.d.ts.map +0 -1
- package/dist/dev-patches/gateway.js +0 -54
- package/dist/dev-patches/gateway.js.map +0 -1
- package/dist/dev-patches/index.d.ts +0 -21
- package/dist/dev-patches/index.d.ts.map +0 -1
- package/dist/dev-patches/index.js +0 -33
- package/dist/dev-patches/index.js.map +0 -1
- package/dist/dev-patches/otel-llm.d.ts +0 -12
- package/dist/dev-patches/otel-llm.d.ts.map +0 -1
- package/dist/dev-patches/otel-llm.js +0 -352
- package/dist/dev-patches/otel-llm.js.map +0 -1
- package/dist/devmode.d.ts +0 -3
- package/dist/devmode.d.ts.map +0 -1
- package/dist/devmode.js +0 -167
- package/dist/devmode.js.map +0 -1
- package/dist/eval.d.ts +0 -91
- package/dist/eval.d.ts.map +0 -1
- package/dist/eval.js +0 -16
- package/dist/eval.js.map +0 -1
- package/dist/handlers/_route-meta.d.ts +0 -22
- package/dist/handlers/_route-meta.d.ts.map +0 -1
- package/dist/handlers/_route-meta.js +0 -25
- package/dist/handlers/_route-meta.js.map +0 -1
- package/dist/handlers/cron.d.ts +0 -73
- package/dist/handlers/cron.d.ts.map +0 -1
- package/dist/handlers/cron.js +0 -43
- package/dist/handlers/cron.js.map +0 -1
- package/dist/handlers/index.d.ts +0 -6
- package/dist/handlers/index.d.ts.map +0 -1
- package/dist/handlers/index.js +0 -6
- package/dist/handlers/index.js.map +0 -1
- package/dist/handlers/sse.d.ts +0 -163
- package/dist/handlers/sse.d.ts.map +0 -1
- package/dist/handlers/sse.js +0 -175
- package/dist/handlers/sse.js.map +0 -1
- package/dist/handlers/stream.d.ts +0 -52
- package/dist/handlers/stream.d.ts.map +0 -1
- package/dist/handlers/stream.js +0 -108
- package/dist/handlers/stream.js.map +0 -1
- package/dist/handlers/webrtc.d.ts +0 -49
- package/dist/handlers/webrtc.d.ts.map +0 -1
- package/dist/handlers/webrtc.js +0 -109
- package/dist/handlers/webrtc.js.map +0 -1
- package/dist/handlers/websocket.d.ts +0 -88
- package/dist/handlers/websocket.d.ts.map +0 -1
- package/dist/handlers/websocket.js +0 -161
- package/dist/handlers/websocket.js.map +0 -1
- package/dist/logger/console.d.ts +0 -70
- package/dist/logger/console.d.ts.map +0 -1
- package/dist/logger/console.js +0 -278
- package/dist/logger/console.js.map +0 -1
- package/dist/logger/index.d.ts +0 -3
- package/dist/logger/index.d.ts.map +0 -1
- package/dist/logger/index.js +0 -3
- package/dist/logger/index.js.map +0 -1
- package/dist/logger/internal.d.ts +0 -79
- package/dist/logger/internal.d.ts.map +0 -1
- package/dist/logger/internal.js +0 -133
- package/dist/logger/internal.js.map +0 -1
- package/dist/logger/logger.d.ts +0 -41
- package/dist/logger/logger.d.ts.map +0 -1
- package/dist/logger/logger.js +0 -2
- package/dist/logger/logger.js.map +0 -1
- package/dist/logger/user.d.ts +0 -8
- package/dist/logger/user.d.ts.map +0 -1
- package/dist/logger/user.js +0 -7
- package/dist/logger/user.js.map +0 -1
- package/dist/logger/util.d.ts +0 -11
- package/dist/logger/util.d.ts.map +0 -1
- package/dist/logger/util.js +0 -77
- package/dist/logger/util.js.map +0 -1
- package/dist/middleware.d.ts +0 -105
- package/dist/middleware.d.ts.map +0 -1
- package/dist/middleware.js +0 -763
- package/dist/middleware.js.map +0 -1
- package/dist/otel/config.d.ts +0 -19
- package/dist/otel/config.d.ts.map +0 -1
- package/dist/otel/config.js +0 -26
- package/dist/otel/config.js.map +0 -1
- package/dist/otel/console.d.ts +0 -33
- package/dist/otel/console.d.ts.map +0 -1
- package/dist/otel/console.js +0 -86
- package/dist/otel/console.js.map +0 -1
- package/dist/otel/exporters/index.d.ts +0 -4
- package/dist/otel/exporters/index.d.ts.map +0 -1
- package/dist/otel/exporters/index.js +0 -4
- package/dist/otel/exporters/index.js.map +0 -1
- package/dist/otel/exporters/jsonl-log-exporter.d.ts +0 -36
- package/dist/otel/exporters/jsonl-log-exporter.d.ts.map +0 -1
- package/dist/otel/exporters/jsonl-log-exporter.js +0 -103
- package/dist/otel/exporters/jsonl-log-exporter.js.map +0 -1
- package/dist/otel/exporters/jsonl-metric-exporter.d.ts +0 -40
- package/dist/otel/exporters/jsonl-metric-exporter.d.ts.map +0 -1
- package/dist/otel/exporters/jsonl-metric-exporter.js +0 -104
- package/dist/otel/exporters/jsonl-metric-exporter.js.map +0 -1
- package/dist/otel/exporters/jsonl-trace-exporter.d.ts +0 -36
- package/dist/otel/exporters/jsonl-trace-exporter.d.ts.map +0 -1
- package/dist/otel/exporters/jsonl-trace-exporter.js +0 -111
- package/dist/otel/exporters/jsonl-trace-exporter.js.map +0 -1
- package/dist/otel/fetch.d.ts +0 -12
- package/dist/otel/fetch.d.ts.map +0 -1
- package/dist/otel/fetch.js +0 -82
- package/dist/otel/fetch.js.map +0 -1
- package/dist/otel/http.d.ts +0 -16
- package/dist/otel/http.d.ts.map +0 -1
- package/dist/otel/http.js +0 -44
- package/dist/otel/http.js.map +0 -1
- package/dist/otel/logger.d.ts +0 -37
- package/dist/otel/logger.d.ts.map +0 -1
- package/dist/otel/logger.js +0 -265
- package/dist/otel/logger.js.map +0 -1
- package/dist/otel/otel.d.ts +0 -68
- package/dist/otel/otel.d.ts.map +0 -1
- package/dist/otel/otel.js +0 -245
- package/dist/otel/otel.js.map +0 -1
- package/dist/otel/tracestate.d.ts +0 -44
- package/dist/otel/tracestate.d.ts.map +0 -1
- package/dist/otel/tracestate.js +0 -84
- package/dist/otel/tracestate.js.map +0 -1
- package/dist/router.d.ts +0 -66
- package/dist/router.d.ts.map +0 -1
- package/dist/router.js +0 -44
- package/dist/router.js.map +0 -1
- package/dist/services/evalrun/composite.d.ts +0 -21
- package/dist/services/evalrun/composite.d.ts.map +0 -1
- package/dist/services/evalrun/composite.js +0 -26
- package/dist/services/evalrun/composite.js.map +0 -1
- package/dist/services/evalrun/http.d.ts +0 -24
- package/dist/services/evalrun/http.d.ts.map +0 -1
- package/dist/services/evalrun/http.js +0 -115
- package/dist/services/evalrun/http.js.map +0 -1
- package/dist/services/evalrun/index.d.ts +0 -5
- package/dist/services/evalrun/index.d.ts.map +0 -1
- package/dist/services/evalrun/index.js +0 -5
- package/dist/services/evalrun/index.js.map +0 -1
- package/dist/services/evalrun/json.d.ts +0 -21
- package/dist/services/evalrun/json.d.ts.map +0 -1
- package/dist/services/evalrun/json.js +0 -38
- package/dist/services/evalrun/json.js.map +0 -1
- package/dist/services/evalrun/local.d.ts +0 -19
- package/dist/services/evalrun/local.d.ts.map +0 -1
- package/dist/services/evalrun/local.js +0 -22
- package/dist/services/evalrun/local.js.map +0 -1
- package/dist/services/local/_db.d.ts +0 -4
- package/dist/services/local/_db.d.ts.map +0 -1
- package/dist/services/local/_db.js +0 -281
- package/dist/services/local/_db.js.map +0 -1
- package/dist/services/local/_router.d.ts +0 -3
- package/dist/services/local/_router.d.ts.map +0 -1
- package/dist/services/local/_router.js +0 -28
- package/dist/services/local/_router.js.map +0 -1
- package/dist/services/local/_util.d.ts +0 -18
- package/dist/services/local/_util.d.ts.map +0 -1
- package/dist/services/local/_util.js +0 -44
- package/dist/services/local/_util.js.map +0 -1
- package/dist/services/local/email.d.ts +0 -24
- package/dist/services/local/email.d.ts.map +0 -1
- package/dist/services/local/email.js +0 -58
- package/dist/services/local/email.js.map +0 -1
- package/dist/services/local/index.d.ts +0 -10
- package/dist/services/local/index.d.ts.map +0 -1
- package/dist/services/local/index.js +0 -10
- package/dist/services/local/index.js.map +0 -1
- package/dist/services/local/keyvalue.d.ts +0 -17
- package/dist/services/local/keyvalue.d.ts.map +0 -1
- package/dist/services/local/keyvalue.js +0 -133
- package/dist/services/local/keyvalue.js.map +0 -1
- package/dist/services/local/queue.d.ts +0 -10
- package/dist/services/local/queue.d.ts.map +0 -1
- package/dist/services/local/queue.js +0 -96
- package/dist/services/local/queue.js.map +0 -1
- package/dist/services/local/stream.d.ts +0 -12
- package/dist/services/local/stream.d.ts.map +0 -1
- package/dist/services/local/stream.js +0 -266
- package/dist/services/local/stream.js.map +0 -1
- package/dist/services/local/task.d.ts +0 -55
- package/dist/services/local/task.d.ts.map +0 -1
- package/dist/services/local/task.js +0 -1248
- package/dist/services/local/task.js.map +0 -1
- package/dist/services/local/vector.d.ts +0 -17
- package/dist/services/local/vector.d.ts.map +0 -1
- package/dist/services/local/vector.js +0 -303
- package/dist/services/local/vector.js.map +0 -1
- package/dist/services/sandbox/http.d.ts +0 -23
- package/dist/services/sandbox/http.d.ts.map +0 -1
- package/dist/services/sandbox/http.js +0 -327
- package/dist/services/sandbox/http.js.map +0 -1
- package/dist/services/sandbox/index.d.ts +0 -2
- package/dist/services/sandbox/index.d.ts.map +0 -1
- package/dist/services/sandbox/index.js +0 -2
- package/dist/services/sandbox/index.js.map +0 -1
- package/dist/services/session/composite.d.ts +0 -21
- package/dist/services/session/composite.d.ts.map +0 -1
- package/dist/services/session/composite.js +0 -26
- package/dist/services/session/composite.js.map +0 -1
- package/dist/services/session/http.d.ts +0 -34
- package/dist/services/session/http.d.ts.map +0 -1
- package/dist/services/session/http.js +0 -124
- package/dist/services/session/http.js.map +0 -1
- package/dist/services/session/index.d.ts +0 -5
- package/dist/services/session/index.d.ts.map +0 -1
- package/dist/services/session/index.js +0 -5
- package/dist/services/session/index.js.map +0 -1
- package/dist/services/session/json.d.ts +0 -22
- package/dist/services/session/json.d.ts.map +0 -1
- package/dist/services/session/json.js +0 -35
- package/dist/services/session/json.js.map +0 -1
- package/dist/services/session/local.d.ts +0 -19
- package/dist/services/session/local.d.ts.map +0 -1
- package/dist/services/session/local.js +0 -23
- package/dist/services/session/local.js.map +0 -1
- package/dist/services/thread/local.d.ts +0 -20
- package/dist/services/thread/local.d.ts.map +0 -1
- package/dist/services/thread/local.js +0 -158
- package/dist/services/thread/local.js.map +0 -1
- package/dist/session.d.ts +0 -734
- package/dist/session.d.ts.map +0 -1
- package/dist/session.js +0 -1140
- package/dist/session.js.map +0 -1
- package/dist/signature.d.ts +0 -22
- package/dist/signature.d.ts.map +0 -1
- package/dist/signature.js +0 -63
- package/dist/signature.js.map +0 -1
- package/dist/validator.d.ts +0 -142
- package/dist/validator.d.ts.map +0 -1
- package/dist/validator.js +0 -149
- package/dist/validator.js.map +0 -1
- package/dist/version-check.d.ts +0 -20
- package/dist/version-check.d.ts.map +0 -1
- package/dist/version-check.js +0 -157
- package/dist/version-check.js.map +0 -1
- package/dist/web.d.ts +0 -8
- package/dist/web.d.ts.map +0 -1
- package/dist/web.js +0 -67
- package/dist/web.js.map +0 -1
- package/dist/webrtc-signaling.d.ts +0 -80
- package/dist/webrtc-signaling.d.ts.map +0 -1
- package/dist/webrtc-signaling.js +0 -237
- package/dist/webrtc-signaling.js.map +0 -1
- package/dist/workbench.d.ts +0 -17
- package/dist/workbench.d.ts.map +0 -1
- package/dist/workbench.js +0 -605
- package/dist/workbench.js.map +0 -1
- package/src/_config.ts +0 -163
- package/src/_context.ts +0 -240
- package/src/_events.ts +0 -142
- package/src/_globals.ts +0 -92
- package/src/_idle.ts +0 -10
- package/src/_metadata.ts +0 -407
- package/src/_process-protection.ts +0 -71
- package/src/_server.ts +0 -109
- package/src/_services.ts +0 -379
- package/src/_standalone.ts +0 -710
- package/src/_tokens.ts +0 -114
- package/src/_util.ts +0 -62
- package/src/_validation.ts +0 -119
- package/src/_waituntil.ts +0 -188
- package/src/agent.ts +0 -2739
- package/src/app.ts +0 -769
- package/src/bootstrap.ts +0 -321
- package/src/bun-s3-patch.ts +0 -224
- package/src/cors.ts +0 -137
- package/src/dev-patches/aisdk.ts +0 -169
- package/src/dev-patches/gateway.ts +0 -68
- package/src/dev-patches/index.ts +0 -37
- package/src/dev-patches/otel-llm.ts +0 -405
- package/src/devmode.ts +0 -171
- package/src/eval.ts +0 -109
- package/src/globals.d.ts +0 -28
- package/src/handlers/_route-meta.ts +0 -33
- package/src/handlers/cron.ts +0 -141
- package/src/handlers/index.ts +0 -18
- package/src/handlers/sse.ts +0 -358
- package/src/handlers/stream.ts +0 -121
- package/src/handlers/webrtc.ts +0 -125
- package/src/handlers/websocket.ts +0 -203
- package/src/logger/console.ts +0 -323
- package/src/logger/index.ts +0 -2
- package/src/logger/internal.ts +0 -165
- package/src/logger/logger.ts +0 -44
- package/src/logger/user.ts +0 -15
- package/src/logger/util.ts +0 -80
- package/src/middleware.ts +0 -1095
- package/src/otel/config.ts +0 -47
- package/src/otel/console.ts +0 -91
- package/src/otel/exporters/README.md +0 -217
- package/src/otel/exporters/index.ts +0 -3
- package/src/otel/exporters/jsonl-log-exporter.ts +0 -113
- package/src/otel/exporters/jsonl-metric-exporter.ts +0 -120
- package/src/otel/exporters/jsonl-trace-exporter.ts +0 -121
- package/src/otel/fetch.ts +0 -105
- package/src/otel/http.ts +0 -53
- package/src/otel/logger.ts +0 -293
- package/src/otel/otel.ts +0 -354
- package/src/otel/tracestate.ts +0 -108
- package/src/router.ts +0 -75
- package/src/services/evalrun/composite.ts +0 -34
- package/src/services/evalrun/http.ts +0 -167
- package/src/services/evalrun/index.ts +0 -4
- package/src/services/evalrun/json.ts +0 -46
- package/src/services/evalrun/local.ts +0 -28
- package/src/services/local/README.md +0 -1576
- package/src/services/local/_db.ts +0 -353
- package/src/services/local/_router.ts +0 -40
- package/src/services/local/_util.ts +0 -55
- package/src/services/local/email.ts +0 -91
- package/src/services/local/index.ts +0 -9
- package/src/services/local/keyvalue.ts +0 -174
- package/src/services/local/queue.ts +0 -145
- package/src/services/local/stream.ts +0 -358
- package/src/services/local/task.ts +0 -1711
- package/src/services/local/vector.ts +0 -438
- package/src/services/sandbox/http.ts +0 -522
- package/src/services/sandbox/index.ts +0 -1
- package/src/services/session/composite.ts +0 -33
- package/src/services/session/http.ts +0 -167
- package/src/services/session/index.ts +0 -4
- package/src/services/session/json.ts +0 -42
- package/src/services/session/local.ts +0 -33
- package/src/services/thread/local.ts +0 -199
- package/src/session.ts +0 -1960
- package/src/signature.ts +0 -82
- package/src/validator.ts +0 -283
- package/src/version-check.ts +0 -184
- package/src/web.ts +0 -76
- package/src/webrtc-signaling.ts +0 -288
- package/src/workbench.ts +0 -725
package/src/otel/otel.ts
DELETED
|
@@ -1,354 +0,0 @@
|
|
|
1
|
-
import type { SpanProcessor } from '@opentelemetry/sdk-trace-base';
|
|
2
|
-
import { BatchSpanProcessor, SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base';
|
|
3
|
-
import opentelemetry, { type Meter, metrics, propagation, type Tracer } from '@opentelemetry/api';
|
|
4
|
-
import * as LogsAPI from '@opentelemetry/api-logs';
|
|
5
|
-
import { getNodeAutoInstrumentations } from '@opentelemetry/auto-instrumentations-node';
|
|
6
|
-
import {
|
|
7
|
-
CompositePropagator,
|
|
8
|
-
W3CBaggagePropagator,
|
|
9
|
-
W3CTraceContextPropagator,
|
|
10
|
-
} from '@opentelemetry/core';
|
|
11
|
-
import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-http';
|
|
12
|
-
import { OTLPMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';
|
|
13
|
-
import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
|
|
14
|
-
import { HostMetrics } from '@opentelemetry/host-metrics';
|
|
15
|
-
import { CompressionAlgorithm } from '@opentelemetry/otlp-exporter-base';
|
|
16
|
-
import { resourceFromAttributes } from '@opentelemetry/resources';
|
|
17
|
-
import type { Resource } from '@opentelemetry/resources';
|
|
18
|
-
import {
|
|
19
|
-
BatchLogRecordProcessor,
|
|
20
|
-
LoggerProvider,
|
|
21
|
-
type LogRecordProcessor,
|
|
22
|
-
SimpleLogRecordProcessor,
|
|
23
|
-
} from '@opentelemetry/sdk-logs';
|
|
24
|
-
import { MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';
|
|
25
|
-
import { NodeSDK } from '@opentelemetry/sdk-node';
|
|
26
|
-
import { ATTR_SERVICE_NAME, ATTR_SERVICE_VERSION } from '@opentelemetry/semantic-conventions';
|
|
27
|
-
import type { Logger } from '../logger';
|
|
28
|
-
import { ConsoleLogRecordExporter, DebugSpanExporter } from './console';
|
|
29
|
-
import { instrumentFetch } from './fetch';
|
|
30
|
-
import { createLogger, patchConsole } from './logger';
|
|
31
|
-
import { getSDKVersion, isAuthenticated } from '../_config';
|
|
32
|
-
import type { LogLevel } from '@agentuity/core';
|
|
33
|
-
import { JSONLLogExporter, JSONLTraceExporter, JSONLMetricExporter } from './exporters';
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Configuration for OpenTelemetry initialization
|
|
37
|
-
*/
|
|
38
|
-
export interface OtelConfig {
|
|
39
|
-
url?: string;
|
|
40
|
-
name: string;
|
|
41
|
-
version: string;
|
|
42
|
-
bearerToken?: string;
|
|
43
|
-
orgId?: string;
|
|
44
|
-
projectId?: string;
|
|
45
|
-
deploymentId?: string;
|
|
46
|
-
environment?: string;
|
|
47
|
-
cliVersion?: string;
|
|
48
|
-
devmode?: boolean;
|
|
49
|
-
spanProcessors?: Array<SpanProcessor>;
|
|
50
|
-
logLevel?: LogLevel;
|
|
51
|
-
jsonlBasePath?: string;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
/**
|
|
55
|
-
* Response from OpenTelemetry initialization
|
|
56
|
-
*/
|
|
57
|
-
export interface OtelResponse {
|
|
58
|
-
tracer: Tracer;
|
|
59
|
-
meter: Meter;
|
|
60
|
-
logger: Logger;
|
|
61
|
-
shutdown: () => Promise<void>;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
const devmodeExportInterval = 1_000; // 1 second
|
|
65
|
-
const productionExportInterval = 10_000; // 10 seconds
|
|
66
|
-
|
|
67
|
-
export const createResource = (config: OtelConfig): Resource => {
|
|
68
|
-
const { name, version, orgId, projectId, deploymentId, environment, devmode, cliVersion } =
|
|
69
|
-
config;
|
|
70
|
-
|
|
71
|
-
const sdkVersion = getSDKVersion();
|
|
72
|
-
|
|
73
|
-
return resourceFromAttributes({
|
|
74
|
-
[ATTR_SERVICE_NAME]: name,
|
|
75
|
-
[ATTR_SERVICE_VERSION]: version,
|
|
76
|
-
'@agentuity/orgId': orgId ?? 'unknown',
|
|
77
|
-
'@agentuity/projectId': projectId ?? 'unknown',
|
|
78
|
-
'@agentuity/deploymentId': deploymentId ?? 'unknown',
|
|
79
|
-
'@agentuity/env': environment,
|
|
80
|
-
'@agentuity/devmode': devmode,
|
|
81
|
-
'@agentuity/sdkVersion': sdkVersion ?? 'unknown',
|
|
82
|
-
'@agentuity/cliVersion': cliVersion ?? 'unknown',
|
|
83
|
-
});
|
|
84
|
-
};
|
|
85
|
-
|
|
86
|
-
export const createAgentuityLoggerProvider = ({
|
|
87
|
-
url,
|
|
88
|
-
headers,
|
|
89
|
-
resource,
|
|
90
|
-
jsonlBasePath,
|
|
91
|
-
useConsoleExporters,
|
|
92
|
-
}: {
|
|
93
|
-
url?: string;
|
|
94
|
-
headers?: Record<string, string>;
|
|
95
|
-
resource: Resource;
|
|
96
|
-
logLevel: LogLevel;
|
|
97
|
-
jsonlBasePath?: string;
|
|
98
|
-
useConsoleExporters: boolean;
|
|
99
|
-
}) => {
|
|
100
|
-
let processor: LogRecordProcessor;
|
|
101
|
-
let exporter: OTLPLogExporter | JSONLLogExporter | undefined;
|
|
102
|
-
|
|
103
|
-
if (useConsoleExporters) {
|
|
104
|
-
processor = new SimpleLogRecordProcessor(new ConsoleLogRecordExporter(true));
|
|
105
|
-
} else if (jsonlBasePath) {
|
|
106
|
-
exporter = new JSONLLogExporter(jsonlBasePath);
|
|
107
|
-
processor = new BatchLogRecordProcessor(exporter);
|
|
108
|
-
} else if (url) {
|
|
109
|
-
// Original OTLP export behavior
|
|
110
|
-
const otlpExporter = new OTLPLogExporter({
|
|
111
|
-
url: `${url}/v1/logs`,
|
|
112
|
-
headers,
|
|
113
|
-
compression: CompressionAlgorithm.GZIP,
|
|
114
|
-
timeoutMillis: 10_000,
|
|
115
|
-
});
|
|
116
|
-
exporter = otlpExporter;
|
|
117
|
-
processor = new BatchLogRecordProcessor(otlpExporter);
|
|
118
|
-
} else {
|
|
119
|
-
processor = new SimpleLogRecordProcessor(new ConsoleLogRecordExporter(false));
|
|
120
|
-
}
|
|
121
|
-
const provider = new LoggerProvider({
|
|
122
|
-
resource,
|
|
123
|
-
processors: [processor],
|
|
124
|
-
});
|
|
125
|
-
LogsAPI.logs.setGlobalLoggerProvider(provider);
|
|
126
|
-
|
|
127
|
-
return {
|
|
128
|
-
processor,
|
|
129
|
-
provider,
|
|
130
|
-
exporter,
|
|
131
|
-
};
|
|
132
|
-
};
|
|
133
|
-
|
|
134
|
-
export const createUserLoggerProvider = ({
|
|
135
|
-
url,
|
|
136
|
-
headers,
|
|
137
|
-
resource,
|
|
138
|
-
}: {
|
|
139
|
-
url: string;
|
|
140
|
-
headers?: Record<string, string>;
|
|
141
|
-
resource: Resource;
|
|
142
|
-
}) => {
|
|
143
|
-
const exporter = new OTLPLogExporter({
|
|
144
|
-
url: `${url}/v1/logs`,
|
|
145
|
-
headers,
|
|
146
|
-
compression: CompressionAlgorithm.GZIP,
|
|
147
|
-
timeoutMillis: 10_000,
|
|
148
|
-
});
|
|
149
|
-
const processor = new BatchLogRecordProcessor(exporter);
|
|
150
|
-
const provider = new LoggerProvider({
|
|
151
|
-
resource,
|
|
152
|
-
processors: [processor],
|
|
153
|
-
});
|
|
154
|
-
return {
|
|
155
|
-
provider,
|
|
156
|
-
exporter,
|
|
157
|
-
processor,
|
|
158
|
-
};
|
|
159
|
-
};
|
|
160
|
-
|
|
161
|
-
import { otel as otelGlobal } from '../_globals';
|
|
162
|
-
|
|
163
|
-
/**
|
|
164
|
-
* Registers and initializes OpenTelemetry with the specified configuration.
|
|
165
|
-
*
|
|
166
|
-
* Idempotent: if called again (e.g. during bun --hot reload), the previous
|
|
167
|
-
* instance is shut down before creating a new one.
|
|
168
|
-
*
|
|
169
|
-
* @param config - The configuration for OpenTelemetry
|
|
170
|
-
* @returns An object containing the tracer, logger, and shutdown function
|
|
171
|
-
*/
|
|
172
|
-
export function registerOtel(config: OtelConfig): OtelResponse {
|
|
173
|
-
// Shut down previous instance if this is a hot reload
|
|
174
|
-
const previous = otelGlobal.get();
|
|
175
|
-
if (previous) {
|
|
176
|
-
previous.shutdown().catch(() => {});
|
|
177
|
-
}
|
|
178
|
-
const {
|
|
179
|
-
url,
|
|
180
|
-
name,
|
|
181
|
-
version,
|
|
182
|
-
bearerToken,
|
|
183
|
-
environment = 'development',
|
|
184
|
-
orgId,
|
|
185
|
-
projectId,
|
|
186
|
-
deploymentId,
|
|
187
|
-
devmode = false,
|
|
188
|
-
logLevel = 'warn',
|
|
189
|
-
jsonlBasePath = undefined,
|
|
190
|
-
} = config;
|
|
191
|
-
|
|
192
|
-
let headers: Record<string, string> | undefined;
|
|
193
|
-
|
|
194
|
-
if (bearerToken) {
|
|
195
|
-
headers = {};
|
|
196
|
-
headers.Authorization = `Bearer ${bearerToken}`;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
// use console debug exporters for local debugging
|
|
200
|
-
const useConsoleExporters = process.env.AGENTUITY_DEBUG_OTEL_CONSOLE === 'true';
|
|
201
|
-
|
|
202
|
-
const resource = createResource(config);
|
|
203
|
-
const loggerProvider = createAgentuityLoggerProvider({
|
|
204
|
-
url,
|
|
205
|
-
headers,
|
|
206
|
-
resource,
|
|
207
|
-
logLevel,
|
|
208
|
-
jsonlBasePath,
|
|
209
|
-
useConsoleExporters,
|
|
210
|
-
});
|
|
211
|
-
const attrs = {
|
|
212
|
-
'@agentuity/orgId': orgId ?? 'unknown',
|
|
213
|
-
'@agentuity/projectId': projectId ?? 'unknown',
|
|
214
|
-
'@agentuity/deploymentId': deploymentId ?? 'unknown',
|
|
215
|
-
'@agentuity/env': environment,
|
|
216
|
-
'@agentuity/devmode': devmode,
|
|
217
|
-
'@agentuity/language': 'javascript',
|
|
218
|
-
};
|
|
219
|
-
const logger = createLogger(!!url, attrs, logLevel);
|
|
220
|
-
|
|
221
|
-
// must do this after we have created the logger
|
|
222
|
-
// don't patch console if we're using console exporters (to avoid double logging)
|
|
223
|
-
if (!useConsoleExporters) {
|
|
224
|
-
patchConsole(!!url, attrs, logLevel);
|
|
225
|
-
}
|
|
226
|
-
|
|
227
|
-
// Build trace exporter (OTLP or JSONL)
|
|
228
|
-
const traceExporter = jsonlBasePath
|
|
229
|
-
? new JSONLTraceExporter(jsonlBasePath)
|
|
230
|
-
: url
|
|
231
|
-
? new OTLPTraceExporter({
|
|
232
|
-
url: `${url}/v1/traces`,
|
|
233
|
-
headers,
|
|
234
|
-
keepAlive: true,
|
|
235
|
-
compression: CompressionAlgorithm.GZIP,
|
|
236
|
-
})
|
|
237
|
-
: undefined;
|
|
238
|
-
|
|
239
|
-
// Build metric exporter (OTLP or JSONL)
|
|
240
|
-
const metricExporter = jsonlBasePath
|
|
241
|
-
? new JSONLMetricExporter(jsonlBasePath)
|
|
242
|
-
: url
|
|
243
|
-
? new OTLPMetricExporter({
|
|
244
|
-
url: `${url}/v1/metrics`,
|
|
245
|
-
headers,
|
|
246
|
-
keepAlive: true,
|
|
247
|
-
compression: CompressionAlgorithm.GZIP,
|
|
248
|
-
})
|
|
249
|
-
: undefined;
|
|
250
|
-
|
|
251
|
-
// Create span processors
|
|
252
|
-
const spanProcessors: SpanProcessor[] = [];
|
|
253
|
-
|
|
254
|
-
// Add OTLP/JSONL span processor if we have an exporter
|
|
255
|
-
if (traceExporter) {
|
|
256
|
-
spanProcessors.push(new BatchSpanProcessor(traceExporter));
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
// Add debug span processor if console debugging is enabled
|
|
260
|
-
if (useConsoleExporters) {
|
|
261
|
-
spanProcessors.push(new SimpleSpanProcessor(new DebugSpanExporter()));
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
// Create a separate metric reader for the NodeSDK
|
|
265
|
-
const sdkMetricReader = metricExporter
|
|
266
|
-
? new PeriodicExportingMetricReader({
|
|
267
|
-
exporter: metricExporter,
|
|
268
|
-
exportTimeoutMillis: devmode ? devmodeExportInterval : productionExportInterval,
|
|
269
|
-
exportIntervalMillis: devmode ? devmodeExportInterval : productionExportInterval,
|
|
270
|
-
})
|
|
271
|
-
: undefined;
|
|
272
|
-
|
|
273
|
-
// Create a separate metric reader for the MeterProvider
|
|
274
|
-
const hostMetricReader = metricExporter
|
|
275
|
-
? new PeriodicExportingMetricReader({
|
|
276
|
-
exporter: metricExporter,
|
|
277
|
-
exportTimeoutMillis: devmode ? devmodeExportInterval : productionExportInterval,
|
|
278
|
-
exportIntervalMillis: devmode ? devmodeExportInterval : productionExportInterval,
|
|
279
|
-
})
|
|
280
|
-
: undefined;
|
|
281
|
-
|
|
282
|
-
const meterProvider = hostMetricReader
|
|
283
|
-
? new MeterProvider({
|
|
284
|
-
resource,
|
|
285
|
-
readers: [hostMetricReader],
|
|
286
|
-
})
|
|
287
|
-
: undefined;
|
|
288
|
-
|
|
289
|
-
if (meterProvider) {
|
|
290
|
-
metrics.setGlobalMeterProvider(meterProvider);
|
|
291
|
-
}
|
|
292
|
-
|
|
293
|
-
const hostMetrics = meterProvider ? new HostMetrics({ meterProvider }) : undefined;
|
|
294
|
-
|
|
295
|
-
let running = false;
|
|
296
|
-
let instrumentationSDK: NodeSDK | undefined;
|
|
297
|
-
|
|
298
|
-
if (url || useConsoleExporters) {
|
|
299
|
-
const propagator = new CompositePropagator({
|
|
300
|
-
propagators: [new W3CTraceContextPropagator(), new W3CBaggagePropagator()],
|
|
301
|
-
});
|
|
302
|
-
propagation.setGlobalPropagator(propagator);
|
|
303
|
-
|
|
304
|
-
instrumentFetch();
|
|
305
|
-
|
|
306
|
-
// Combine custom span processors with our span processors
|
|
307
|
-
const allSpanProcessors = [...spanProcessors, ...(config.spanProcessors || [])];
|
|
308
|
-
|
|
309
|
-
instrumentationSDK = new NodeSDK({
|
|
310
|
-
logRecordProcessor: loggerProvider.processor,
|
|
311
|
-
metricReader: sdkMetricReader,
|
|
312
|
-
instrumentations: [getNodeAutoInstrumentations()],
|
|
313
|
-
resource,
|
|
314
|
-
textMapPropagator: propagator,
|
|
315
|
-
spanProcessors: allSpanProcessors,
|
|
316
|
-
});
|
|
317
|
-
instrumentationSDK.start();
|
|
318
|
-
hostMetrics?.start();
|
|
319
|
-
|
|
320
|
-
logger.debug('Telemetry configured successfully');
|
|
321
|
-
logger.debug('Sending telemetry data to %s', url);
|
|
322
|
-
running = true;
|
|
323
|
-
}
|
|
324
|
-
|
|
325
|
-
const tracer = opentelemetry.trace.getTracer(name, version);
|
|
326
|
-
const meter = metrics.getMeter(name, version);
|
|
327
|
-
|
|
328
|
-
const shutdown = async () => {
|
|
329
|
-
if (running) {
|
|
330
|
-
running = false;
|
|
331
|
-
logger.debug('shutting down OpenTelemetry');
|
|
332
|
-
await loggerProvider.provider
|
|
333
|
-
.forceFlush()
|
|
334
|
-
.catch((e) => logger.warn('error in forceFlush of otel provider. %s', e));
|
|
335
|
-
await loggerProvider.exporter
|
|
336
|
-
?.shutdown()
|
|
337
|
-
.catch((e) => !devmode && logger.warn('error in shutdown of otel exporter. %s', e));
|
|
338
|
-
await instrumentationSDK
|
|
339
|
-
?.shutdown()
|
|
340
|
-
.catch(
|
|
341
|
-
(e) => !devmode && logger.warn('error in shutdown of otel instrumentation. %s', e)
|
|
342
|
-
);
|
|
343
|
-
logger.debug('shut down OpenTelemetry');
|
|
344
|
-
}
|
|
345
|
-
};
|
|
346
|
-
|
|
347
|
-
if (url && isAuthenticated()) {
|
|
348
|
-
logger.info('connected to Agentuity Agent Cloud');
|
|
349
|
-
}
|
|
350
|
-
|
|
351
|
-
const instance: OtelResponse = { tracer, meter, logger, shutdown };
|
|
352
|
-
otelGlobal.set(instance);
|
|
353
|
-
return instance;
|
|
354
|
-
}
|
package/src/otel/tracestate.ts
DELETED
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { trace, TraceFlags, type Context } from '@opentelemetry/api';
|
|
2
|
-
import { TraceState } from '@opentelemetry/core';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Entries to set on the W3C tracestate header. Each key-value pair is added
|
|
6
|
-
* to the parent context's existing traceState (if any). Values that are
|
|
7
|
-
* `undefined` or empty strings are skipped.
|
|
8
|
-
*/
|
|
9
|
-
export type TraceStateEntries = Record<string, string | undefined>;
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Build a context whose span context carries an enriched W3C traceState.
|
|
13
|
-
*
|
|
14
|
-
* The returned context is intended to be passed as the **parent context**
|
|
15
|
-
* to `tracer.startActiveSpan(name, opts, enrichedCtx, fn)` or
|
|
16
|
-
* `tracer.startSpan(name, opts, enrichedCtx)`. Because the OTel SDK
|
|
17
|
-
* copies `traceState` from a *valid* parent span context into every new
|
|
18
|
-
* child span, the recording span that gets exported to OTLP will carry the
|
|
19
|
-
* enriched traceState — making it visible in backends like ClickHouse.
|
|
20
|
-
*
|
|
21
|
-
* ### How it works
|
|
22
|
-
*
|
|
23
|
-
* 1. If the supplied `parentContext` already contains a span with a valid
|
|
24
|
-
* span context (e.g. from an incoming `traceparent` header), we enrich
|
|
25
|
-
* that span context's traceState and wrap it in a `NonRecordingSpan`.
|
|
26
|
-
*
|
|
27
|
-
* 2. If there is **no** valid parent span (e.g. no incoming `traceparent`),
|
|
28
|
-
* we synthesise a minimal remote span context with a freshly generated
|
|
29
|
-
* traceId. The OTel SDK will treat this as a valid remote parent,
|
|
30
|
-
* inherit both the traceId **and** the traceState, and mark the new
|
|
31
|
-
* span as a continuation of that trace.
|
|
32
|
-
*
|
|
33
|
-
* @param parentContext The context to enrich (typically `context.active()`).
|
|
34
|
-
* @param entries Key-value pairs to merge into the traceState.
|
|
35
|
-
* @returns A new `Context` ready to be used as a parent for span creation.
|
|
36
|
-
*/
|
|
37
|
-
export function enrichContextWithTraceState(
|
|
38
|
-
parentContext: Context,
|
|
39
|
-
entries: TraceStateEntries
|
|
40
|
-
): Context {
|
|
41
|
-
const parentSpan = trace.getSpan(parentContext);
|
|
42
|
-
const parentSctx = parentSpan?.spanContext();
|
|
43
|
-
|
|
44
|
-
// Start from any existing traceState on the parent, or a fresh one.
|
|
45
|
-
let traceState = parentSctx?.traceState ?? new TraceState();
|
|
46
|
-
|
|
47
|
-
// Merge caller-supplied entries.
|
|
48
|
-
for (const [key, value] of Object.entries(entries)) {
|
|
49
|
-
if (value !== undefined && value !== '') {
|
|
50
|
-
traceState = traceState.set(key, value);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
if (parentSctx && trace.isSpanContextValid(parentSctx)) {
|
|
55
|
-
// The parent already has a valid traceId/spanId (e.g. from an
|
|
56
|
-
// incoming request with `traceparent`). We just need to update
|
|
57
|
-
// its traceState.
|
|
58
|
-
return trace.setSpan(
|
|
59
|
-
parentContext,
|
|
60
|
-
trace.wrapSpanContext({
|
|
61
|
-
...parentSctx,
|
|
62
|
-
traceState,
|
|
63
|
-
})
|
|
64
|
-
);
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
// No valid parent — synthesise a remote parent so the OTel SDK
|
|
68
|
-
// considers the span context valid and copies traceState to the child.
|
|
69
|
-
return trace.setSpan(
|
|
70
|
-
parentContext,
|
|
71
|
-
trace.wrapSpanContext({
|
|
72
|
-
traceId: generateTraceId(),
|
|
73
|
-
spanId: generateSpanId(),
|
|
74
|
-
traceFlags: TraceFlags.SAMPLED,
|
|
75
|
-
isRemote: true,
|
|
76
|
-
traceState,
|
|
77
|
-
})
|
|
78
|
-
);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
// ── ID generation helpers ────────────────────────────────────────────
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Generate a random 32-hex-char trace ID (16 bytes).
|
|
85
|
-
* Uses the Web Crypto API which is available in Bun and Node 20+.
|
|
86
|
-
*/
|
|
87
|
-
export function generateTraceId(): string {
|
|
88
|
-
const bytes = new Uint8Array(16);
|
|
89
|
-
crypto.getRandomValues(bytes);
|
|
90
|
-
return hexFromBytes(bytes);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* Generate a random 16-hex-char span ID (8 bytes).
|
|
95
|
-
*/
|
|
96
|
-
export function generateSpanId(): string {
|
|
97
|
-
const bytes = new Uint8Array(8);
|
|
98
|
-
crypto.getRandomValues(bytes);
|
|
99
|
-
return hexFromBytes(bytes);
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
function hexFromBytes(bytes: Uint8Array): string {
|
|
103
|
-
let hex = '';
|
|
104
|
-
for (let i = 0; i < bytes.length; i++) {
|
|
105
|
-
hex += (bytes[i] as number).toString(16).padStart(2, '0');
|
|
106
|
-
}
|
|
107
|
-
return hex;
|
|
108
|
-
}
|
package/src/router.ts
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import { Hono, type Env as HonoEnv, type Schema } from 'hono';
|
|
2
|
-
import type { BlankSchema } from 'hono/types';
|
|
3
|
-
import type { Env } from './app';
|
|
4
|
-
|
|
5
|
-
// Re-export both Env types
|
|
6
|
-
export type { Env };
|
|
7
|
-
export type { HonoEnv };
|
|
8
|
-
|
|
9
|
-
// Re-export WebSocketConnection from handlers
|
|
10
|
-
export type { WebSocketConnection } from './handlers/websocket';
|
|
11
|
-
|
|
12
|
-
// Module augmentation to extend Hono types for Agentuity runtime
|
|
13
|
-
declare module 'hono' {
|
|
14
|
-
// Extend Context with waitUntil for route handlers
|
|
15
|
-
interface Context {
|
|
16
|
-
/**
|
|
17
|
-
* Schedule a background task that runs after the response is sent.
|
|
18
|
-
* Works the same as `ctx.waitUntil()` in agent handlers.
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* router.post('/data', async (c) => {
|
|
23
|
-
* c.waitUntil(async () => {
|
|
24
|
-
* await sendAnalytics(c.req.url);
|
|
25
|
-
* });
|
|
26
|
-
* return c.json({ success: true });
|
|
27
|
-
* });
|
|
28
|
-
* ```
|
|
29
|
-
*/
|
|
30
|
-
waitUntil(callback: Promise<void> | (() => void | Promise<void>)): void;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/**
|
|
35
|
-
* Creates a Hono router for use with Agentuity.
|
|
36
|
-
*
|
|
37
|
-
* This is a thin wrapper around `new Hono()` that provides the correct
|
|
38
|
-
* Agentuity environment types. Hono's full type inference chain is
|
|
39
|
-
* preserved — the Schema type parameter accumulates route definitions
|
|
40
|
-
* as you chain `.get()`, `.post()`, etc.
|
|
41
|
-
*
|
|
42
|
-
* @template E - Environment type (defaults to Agentuity's Env)
|
|
43
|
-
* @template S - Schema type for route definitions
|
|
44
|
-
*
|
|
45
|
-
* @returns Hono router instance
|
|
46
|
-
*
|
|
47
|
-
* @example
|
|
48
|
-
* ```typescript
|
|
49
|
-
* import { createRouter, websocket, sse, stream, cron } from '@agentuity/runtime';
|
|
50
|
-
*
|
|
51
|
-
* const router = createRouter();
|
|
52
|
-
*
|
|
53
|
-
* // Standard HTTP routes — full type inference
|
|
54
|
-
* router.get('/hello', (c) => c.text('Hello!'));
|
|
55
|
-
* router.post('/data', async (c) => {
|
|
56
|
-
* const body = await c.req.json();
|
|
57
|
-
* return c.json({ received: body });
|
|
58
|
-
* });
|
|
59
|
-
*
|
|
60
|
-
* // WebSocket connection
|
|
61
|
-
* router.get('/ws', websocket((c, ws) => {
|
|
62
|
-
* ws.onMessage((event) => {
|
|
63
|
-
* ws.send('Echo: ' + event.data);
|
|
64
|
-
* });
|
|
65
|
-
* }));
|
|
66
|
-
*
|
|
67
|
-
* // Server-Sent Events
|
|
68
|
-
* router.get('/events', sse((c, stream) => {
|
|
69
|
-
* stream.writeSSE({ data: 'Hello', event: 'message' });
|
|
70
|
-
* }));
|
|
71
|
-
* ```
|
|
72
|
-
*/
|
|
73
|
-
export const createRouter = <E extends Env = Env, S extends Schema = BlankSchema>(): Hono<E, S> => {
|
|
74
|
-
return new Hono<E, S>();
|
|
75
|
-
};
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
type EvalRunEventProvider,
|
|
3
|
-
type EvalRunStartEvent,
|
|
4
|
-
type EvalRunCompleteEvent,
|
|
5
|
-
} from '@agentuity/core';
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* An implementation of the EvalRunEventProvider which wraps multiple providers
|
|
9
|
-
*/
|
|
10
|
-
export class CompositeEvalRunEventProvider implements EvalRunEventProvider {
|
|
11
|
-
private providers: EvalRunEventProvider[];
|
|
12
|
-
|
|
13
|
-
constructor(...providers: EvalRunEventProvider[]) {
|
|
14
|
-
this.providers = providers;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* called when the eval run starts
|
|
19
|
-
*
|
|
20
|
-
* @param event EvalRunStartEvent
|
|
21
|
-
*/
|
|
22
|
-
async start(event: EvalRunStartEvent): Promise<void> {
|
|
23
|
-
await Promise.allSettled(this.providers.map((provider) => provider.start(event)));
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* called when the eval run completes
|
|
28
|
-
*
|
|
29
|
-
* @param event EvalRunCompleteEvent
|
|
30
|
-
*/
|
|
31
|
-
async complete(event: EvalRunCompleteEvent): Promise<void> {
|
|
32
|
-
await Promise.allSettled(this.providers.map((provider) => provider.complete(event)));
|
|
33
|
-
}
|
|
34
|
-
}
|