@agentstep/agent-sdk 0.4.29 → 0.4.31
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/auth/middleware.js +8 -8
- package/dist/backends/claude/args.js +6 -6
- package/dist/backends/claude/index.js +7 -7
- package/dist/backends/codex/auth.js +6 -6
- package/dist/backends/codex/index.js +7 -7
- package/dist/backends/factory/auth.js +6 -6
- package/dist/backends/factory/index.js +7 -7
- package/dist/backends/gemini/auth.js +6 -6
- package/dist/backends/gemini/index.js +7 -7
- package/dist/backends/opencode/auth.js +6 -6
- package/dist/backends/opencode/index.js +7 -7
- package/dist/backends/pi/auth.js +6 -6
- package/dist/backends/pi/index.js +7 -7
- package/dist/backends/registry.js +18 -18
- package/dist/{chunk-R5OZHLAD.js → chunk-2COVNKOK.js} +2 -2
- package/dist/{chunk-2NAUMCWE.js → chunk-33OBMYKV.js} +1 -1
- package/dist/{chunk-MJ5J57UJ.js → chunk-4LKSYF4M.js} +1 -1
- package/dist/{chunk-ESXH27JB.js → chunk-4MDF5N2L.js} +2 -2
- package/dist/{chunk-GQFC44YI.js → chunk-55SVTKOM.js} +8 -5
- package/dist/{chunk-YIVJ3JTW.js → chunk-5H2CQ6L4.js} +2 -2
- package/dist/{chunk-JK5TPJHH.js → chunk-6GP5IKXE.js} +1 -1
- package/dist/{chunk-5GZEX4HV.js → chunk-6POQAFEC.js} +1 -1
- package/dist/{chunk-EF5QCTEQ.js → chunk-6YZ5WTLB.js} +2 -2
- package/dist/{chunk-BFXQ3IOS.js → chunk-7RJNOZLB.js} +18 -15
- package/dist/{chunk-4DTL7OKD.js → chunk-A7CS7RTM.js} +5 -5
- package/dist/{chunk-DO4WVWW7.js → chunk-AJPZY6EJ.js} +1 -1
- package/dist/{chunk-JDELTTHV.js → chunk-AR2TM7CR.js} +1 -1
- package/dist/{chunk-YGAHGTVZ.js → chunk-BCUBVYE3.js} +3 -3
- package/dist/{chunk-LLYP77OL.js → chunk-BNXUV6NZ.js} +11 -5
- package/dist/{chunk-NX6SIEN6.js → chunk-BQRKJAOP.js} +2 -2
- package/dist/{chunk-4GC7D5GD.js → chunk-CGKRD37R.js} +2 -2
- package/dist/{chunk-ZMMDLKR3.js → chunk-CIUFOD65.js} +3 -3
- package/dist/{chunk-HMBJOI5F.js → chunk-DKBNLGZO.js} +23 -14
- package/dist/{chunk-ZP5VMV5O.js → chunk-FEXR57M4.js} +4 -4
- package/dist/{chunk-OONL25NZ.js → chunk-FOOPNRHA.js} +2 -2
- package/dist/{chunk-EGCAA6KI.js → chunk-G6JKWW2S.js} +2 -2
- package/dist/{chunk-UXMCHRGA.js → chunk-GNHRAWOX.js} +2 -2
- package/dist/{chunk-BZ6HFTHU.js → chunk-H7UKW666.js} +1 -1
- package/dist/{chunk-HLNTWWAZ.js → chunk-I2SLDKCN.js} +2 -2
- package/dist/{chunk-NWW4246M.js → chunk-IN5KO2L2.js} +1 -1
- package/dist/{chunk-VIGJQU6V.js → chunk-J37F7PXJ.js} +4 -4
- package/dist/{chunk-X2CAT5MN.js → chunk-JIURGVRG.js} +1 -1
- package/dist/{chunk-WFIMX3HG.js → chunk-JJGAQMPS.js} +1 -1
- package/dist/{chunk-B2JLKTBJ.js → chunk-JWSR5TZ3.js} +1 -1
- package/dist/{chunk-I5ZA45YL.js → chunk-KFORPY7J.js} +9 -5
- package/dist/{chunk-4RNCKCDV.js → chunk-KLFJTFDB.js} +1 -1
- package/dist/{chunk-MHQXDTJB.js → chunk-KLN6HPYM.js} +1 -1
- package/dist/{chunk-RK3QBYXO.js → chunk-KRLVSKID.js} +5 -5
- package/dist/{chunk-ZQGJKPPY.js → chunk-L5RW66H5.js} +31 -6
- package/dist/{chunk-NUINUAXO.js → chunk-LASUEMN6.js} +3 -3
- package/dist/{chunk-AMWWPUSK.js → chunk-LHQD4KLV.js} +1 -1
- package/dist/{chunk-UIVEK3MD.js → chunk-M7W3PCFS.js} +1 -1
- package/dist/{chunk-T45NOW43.js → chunk-MHL3EXDR.js} +1 -1
- package/dist/{chunk-BMPB7XJH.js → chunk-MVC2FD32.js} +4 -4
- package/dist/{chunk-O45IQUWS.js → chunk-NDVC4J3H.js} +3 -3
- package/dist/{chunk-Y2KDIPCT.js → chunk-NIW3B4V2.js} +5 -5
- package/dist/{chunk-OWP537VU.js → chunk-NJ4JTJJM.js} +1 -1
- package/dist/{chunk-ZNQD65DN.js → chunk-O3XR457F.js} +4 -4
- package/dist/{chunk-I44FSUBC.js → chunk-O5B7GRUK.js} +1 -1
- package/dist/{chunk-OC2RYYTW.js → chunk-OLF7H564.js} +11 -8
- package/dist/{chunk-OTLXV4RO.js → chunk-OZJG5G7V.js} +4 -4
- package/dist/{chunk-JEI7I3EH.js → chunk-P2IGNOJI.js} +3 -3
- package/dist/{chunk-LYTHR3HC.js → chunk-PTYMGYNJ.js} +1 -1
- package/dist/chunk-PVITAFPJ.js +212 -0
- package/dist/{chunk-YCXELHKG.js → chunk-Q3DOTREK.js} +1 -1
- package/dist/{chunk-NUO56TF7.js → chunk-QVFRPABA.js} +3 -3
- package/dist/{chunk-HGZ6R6ST.js → chunk-R3Q62FVO.js} +19 -6
- package/dist/{chunk-SXE7H3VK.js → chunk-R5T4LJSK.js} +2 -2
- package/dist/{chunk-DT57EZQB.js → chunk-RCF2SVUO.js} +15 -15
- package/dist/{chunk-EHCGLMPC.js → chunk-RKL2NK3V.js} +1 -1
- package/dist/{chunk-TY3HD5I5.js → chunk-S4AYCMMB.js} +1 -1
- package/dist/{chunk-5D5P37FY.js → chunk-TGEDOUUD.js} +1 -1
- package/dist/{chunk-W26HCKWX.js → chunk-TLEGXMX7.js} +3 -3
- package/dist/{chunk-RZKUB4JQ.js → chunk-TLH4JLC7.js} +2 -2
- package/dist/{chunk-OA3CLTYY.js → chunk-UBFEHVPY.js} +3 -3
- package/dist/{chunk-WHASPTF3.js → chunk-UCOSSYKZ.js} +12 -9
- package/dist/{chunk-AQXCXWAZ.js → chunk-ULS4X3UQ.js} +1 -1
- package/dist/{chunk-XZOBOKL6.js → chunk-UW4T4TG3.js} +3 -3
- package/dist/{chunk-ATTHVKNE.js → chunk-UZHSDRAK.js} +4 -4
- package/dist/{chunk-KZ4AECAK.js → chunk-UZQLLGX4.js} +43 -16
- package/dist/{chunk-JURAGCGR.js → chunk-V5XH43NK.js} +8 -8
- package/dist/{chunk-NIOWKTIF.js → chunk-VND46TDY.js} +2 -2
- package/dist/{chunk-XGUSWFDD.js → chunk-W63RBT7H.js} +9 -9
- package/dist/{chunk-2BDD6OHG.js → chunk-WCDWL6ED.js} +14 -0
- package/dist/{chunk-NXRJ7Z4G.js → chunk-WNHJTUPW.js} +2 -2
- package/dist/{chunk-FJAWIVSD.js → chunk-WORPHTCS.js} +4 -4
- package/dist/{chunk-O3Z7JWR7.js → chunk-WU52LOGJ.js} +7 -4
- package/dist/{chunk-ADK2TYO4.js → chunk-XTZWBXAO.js} +2 -2
- package/dist/{chunk-4WMYJM36.js → chunk-XVK7YFZP.js} +1 -1
- package/dist/{chunk-S3SKODVV.js → chunk-Y2VQ65PM.js} +4 -4
- package/dist/{chunk-KOGG7CSN.js → chunk-YS5UPMTH.js} +6 -6
- package/dist/{chunk-LMHXLYUV.js → chunk-ZG7FD2KD.js} +2 -2
- package/dist/{chunk-M4CTE7EH.js → chunk-ZKHUJB7A.js} +2 -2
- package/dist/{chunk-LHHBOQUR.js → chunk-ZMJ4EP4C.js} +2 -0
- package/dist/{chunk-DNGLD7VN.js → chunk-ZOWT6X6Y.js} +1 -1
- package/dist/config/index.js +5 -5
- package/dist/containers/client.js +6 -6
- package/dist/containers/exec.js +6 -6
- package/dist/containers/lifecycle.js +30 -30
- package/dist/containers/setup.js +8 -8
- package/dist/db/agents.js +6 -6
- package/dist/db/api_keys.js +5 -5
- package/dist/db/audit.js +3 -3
- package/dist/db/batch.js +10 -10
- package/dist/db/client.js +2 -2
- package/dist/db/credentials.js +3 -3
- package/dist/db/drizzle.js +4 -4
- package/dist/db/environments.js +6 -6
- package/dist/db/events.js +5 -5
- package/dist/db/files.js +5 -5
- package/dist/db/memory.js +5 -5
- package/dist/db/migrations.js +1 -1
- package/dist/db/proxy.js +5 -5
- package/dist/db/schema.js +1 -1
- package/dist/db/session-resources.js +5 -5
- package/dist/db/sessions.js +7 -7
- package/dist/db/sync.js +5 -5
- package/dist/db/tenants.js +3 -3
- package/dist/db/traces.js +5 -5
- package/dist/db/upstream_keys.js +3 -3
- package/dist/db/vaults.js +6 -6
- package/dist/handlers/agents.js +45 -45
- package/dist/handlers/api_keys.js +46 -46
- package/dist/handlers/audit.js +46 -46
- package/dist/handlers/batch.js +46 -46
- package/dist/handlers/credentials.js +46 -46
- package/dist/handlers/environments.js +46 -46
- package/dist/handlers/events.js +49 -49
- package/dist/handlers/files.js +46 -46
- package/dist/handlers/index.js +81 -81
- package/dist/handlers/license.js +45 -45
- package/dist/handlers/memory.js +46 -46
- package/dist/handlers/metrics.js +45 -45
- package/dist/handlers/models.js +46 -46
- package/dist/handlers/providers.js +45 -45
- package/dist/handlers/resources.js +45 -45
- package/dist/handlers/sessions.js +48 -48
- package/dist/handlers/settings.js +45 -45
- package/dist/handlers/skills-write.js +45 -45
- package/dist/handlers/skills.js +46 -46
- package/dist/handlers/stream.js +45 -45
- package/dist/handlers/tenants.js +46 -46
- package/dist/handlers/threads.js +45 -45
- package/dist/handlers/traces.js +46 -46
- package/dist/handlers/upstream_keys.js +48 -48
- package/dist/handlers/vaults.js +45 -45
- package/dist/handlers/whoami.js +45 -45
- package/dist/http.js +44 -44
- package/dist/index.js +48 -48
- package/dist/init.js +41 -41
- package/dist/lib/model-registry.js +6 -6
- package/dist/lib/skills-cache.js +6 -6
- package/dist/observability/otlp.js +12 -12
- package/dist/observability/redactor.js +8 -8
- package/dist/providers/fly.js +5 -5
- package/dist/providers/modal.js +5 -5
- package/dist/providers/registry.js +1 -1
- package/dist/providers/resolve-secrets.js +7 -7
- package/dist/providers/sprites.js +7 -7
- package/dist/providers/upstream-keys.js +11 -11
- package/dist/providers/vercel.js +5 -5
- package/dist/proxy/forward.js +6 -6
- package/dist/queue/index.js +6 -6
- package/dist/sessions/bus.js +10 -10
- package/dist/sessions/driver.js +34 -34
- package/dist/sessions/grader.js +5 -5
- package/dist/sessions/secrets.js +8 -8
- package/dist/sessions/sweeper.js +31 -31
- package/dist/sessions/threads.js +34 -34
- package/dist/shutdown.js +32 -32
- package/dist/sync/anthropic.js +10 -10
- package/dist/sync/container-file-sync.js +6 -6
- package/dist/sync/file-sync.js +17 -17
- package/package.json +1 -1
- package/dist/chunk-AE5JQORN.js +0 -131
- /package/dist/{chunk-QUJNG4RA.js → chunk-C4II4GGZ.js} +0 -0
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getSession
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-KFORPY7J.js";
|
|
4
4
|
import {
|
|
5
5
|
appendEvent,
|
|
6
6
|
appendEventsBatch,
|
|
7
7
|
listEvents,
|
|
8
8
|
rowToManagedEvent
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-NDVC4J3H.js";
|
|
10
10
|
import {
|
|
11
11
|
getAgent
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-P2IGNOJI.js";
|
|
13
13
|
import {
|
|
14
14
|
getDb,
|
|
15
15
|
init_client
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-6POQAFEC.js";
|
|
17
17
|
|
|
18
18
|
// src/sessions/bus.ts
|
|
19
19
|
import { EventEmitter } from "events";
|
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
getDrizzle,
|
|
7
7
|
init_drizzle
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-R5T4LJSK.js";
|
|
9
9
|
import {
|
|
10
10
|
schema_exports
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-ZMJ4EP4C.js";
|
|
12
12
|
import {
|
|
13
13
|
init_clock,
|
|
14
14
|
nowMs,
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
import {
|
|
18
18
|
getDb,
|
|
19
19
|
init_client
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-6POQAFEC.js";
|
|
21
21
|
|
|
22
22
|
// src/db/events.ts
|
|
23
23
|
init_client();
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import {
|
|
2
2
|
onAfterCommit
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-MVC2FD32.js";
|
|
4
4
|
import {
|
|
5
5
|
getSessionRow
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-KFORPY7J.js";
|
|
7
7
|
import {
|
|
8
8
|
listEventsByTrace
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-NDVC4J3H.js";
|
|
10
10
|
import {
|
|
11
11
|
getAgent
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-P2IGNOJI.js";
|
|
13
13
|
import {
|
|
14
14
|
getConfig
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-6YZ5WTLB.js";
|
|
16
16
|
|
|
17
17
|
// src/observability/otlp.ts
|
|
18
18
|
import { createHash } from "crypto";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SUPPORTED_PROVIDERS
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-UZHSDRAK.js";
|
|
4
4
|
import {
|
|
5
5
|
addUpstreamKey,
|
|
6
6
|
deleteUpstreamKey,
|
|
@@ -8,20 +8,20 @@ import {
|
|
|
8
8
|
enableUpstreamKey,
|
|
9
9
|
getUpstreamKey,
|
|
10
10
|
listUpstreamKeys
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-H7UKW666.js";
|
|
12
12
|
import {
|
|
13
13
|
requireGlobalAdmin
|
|
14
14
|
} from "./chunk-23UKWXJH.js";
|
|
15
15
|
import {
|
|
16
16
|
recordAudit
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-KLN6HPYM.js";
|
|
18
18
|
import {
|
|
19
19
|
requireFeature
|
|
20
20
|
} from "./chunk-2N2KL4KM.js";
|
|
21
21
|
import {
|
|
22
22
|
jsonOk,
|
|
23
23
|
routeWrap
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-4MDF5N2L.js";
|
|
25
25
|
import {
|
|
26
26
|
badRequest,
|
|
27
27
|
notFound
|
|
@@ -6,31 +6,31 @@ import {
|
|
|
6
6
|
import {
|
|
7
7
|
jsonOk,
|
|
8
8
|
routeWrap
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-4MDF5N2L.js";
|
|
10
10
|
import {
|
|
11
11
|
forwardToAnthropic,
|
|
12
12
|
validateAnthropicProxy
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-MHL3EXDR.js";
|
|
14
14
|
import {
|
|
15
15
|
getProxiedTenantId,
|
|
16
16
|
isProxied,
|
|
17
17
|
markProxied,
|
|
18
18
|
unmarkProxied
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-VND46TDY.js";
|
|
20
20
|
import {
|
|
21
21
|
archiveAgent,
|
|
22
22
|
createAgent,
|
|
23
23
|
getAgent,
|
|
24
24
|
listAgents,
|
|
25
25
|
updateAgent
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-P2IGNOJI.js";
|
|
27
27
|
import {
|
|
28
28
|
resolveBackend
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-YS5UPMTH.js";
|
|
30
30
|
import {
|
|
31
31
|
getDb,
|
|
32
32
|
init_client
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-6POQAFEC.js";
|
|
34
34
|
import {
|
|
35
35
|
badRequest,
|
|
36
36
|
conflict,
|
|
@@ -216,8 +216,9 @@ function handleListAgents(request) {
|
|
|
216
216
|
const order = url.searchParams.get("order");
|
|
217
217
|
const includeArchived = url.searchParams.get("include_archived") === "true";
|
|
218
218
|
const cursor = url.searchParams.get("page") ?? void 0;
|
|
219
|
+
const requestedLimit = limit ? Number(limit) : 20;
|
|
219
220
|
const data = listAgents({
|
|
220
|
-
limit:
|
|
221
|
+
limit: requestedLimit,
|
|
221
222
|
order: order ?? void 0,
|
|
222
223
|
includeArchived,
|
|
223
224
|
cursor,
|
|
@@ -225,7 +226,9 @@ function handleListAgents(request) {
|
|
|
225
226
|
});
|
|
226
227
|
return jsonOk({
|
|
227
228
|
data,
|
|
228
|
-
|
|
229
|
+
has_more: data.length === requestedLimit,
|
|
230
|
+
first_id: data.length > 0 ? data[0].id : null,
|
|
231
|
+
last_id: data.length > 0 ? data[data.length - 1].id : null
|
|
229
232
|
});
|
|
230
233
|
});
|
|
231
234
|
}
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
listTraces
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-6GP5IKXE.js";
|
|
4
4
|
import {
|
|
5
5
|
jsonOk,
|
|
6
6
|
routeWrap
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-4MDF5N2L.js";
|
|
8
8
|
import {
|
|
9
9
|
exportTrace
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-NIW3B4V2.js";
|
|
11
11
|
import {
|
|
12
12
|
listEventsByTrace,
|
|
13
13
|
rowToManagedEvent
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-NDVC4J3H.js";
|
|
15
15
|
import {
|
|
16
16
|
badRequest,
|
|
17
17
|
notFound
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEFAULT_TENANT_ID
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-AR2TM7CR.js";
|
|
4
4
|
import {
|
|
5
5
|
init_ids,
|
|
6
6
|
newId
|
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
getDrizzle,
|
|
10
10
|
init_drizzle
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-R5T4LJSK.js";
|
|
12
12
|
import {
|
|
13
13
|
schema_exports
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-ZMJ4EP4C.js";
|
|
15
15
|
import {
|
|
16
16
|
init_clock,
|
|
17
17
|
nowMs,
|
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
import {
|
|
2
|
+
loadVaultForCaller
|
|
3
|
+
} from "./chunk-BNXUV6NZ.js";
|
|
4
|
+
import {
|
|
5
|
+
jsonOk,
|
|
6
|
+
routeWrap
|
|
7
|
+
} from "./chunk-4MDF5N2L.js";
|
|
8
|
+
import {
|
|
9
|
+
createCredential,
|
|
10
|
+
deleteCredential,
|
|
11
|
+
getCredential,
|
|
12
|
+
listCredentials,
|
|
13
|
+
updateCredential
|
|
14
|
+
} from "./chunk-L5RW66H5.js";
|
|
15
|
+
import {
|
|
16
|
+
badRequest,
|
|
17
|
+
conflict,
|
|
18
|
+
notFound
|
|
19
|
+
} from "./chunk-EZYKRG4W.js";
|
|
20
|
+
|
|
21
|
+
// src/handlers/credentials.ts
|
|
22
|
+
import { z } from "zod";
|
|
23
|
+
var TokenEndpointAuthSchema = z.object({
|
|
24
|
+
type: z.string().min(1),
|
|
25
|
+
client_secret: z.string().min(1)
|
|
26
|
+
});
|
|
27
|
+
var OAuthRefreshSchema = z.object({
|
|
28
|
+
token_endpoint: z.string().url(),
|
|
29
|
+
client_id: z.string().min(1),
|
|
30
|
+
scope: z.string().optional(),
|
|
31
|
+
refresh_token: z.string().min(1),
|
|
32
|
+
token_endpoint_auth: TokenEndpointAuthSchema.optional()
|
|
33
|
+
});
|
|
34
|
+
var StaticBearerAuthSchema = z.object({
|
|
35
|
+
type: z.literal("static_bearer"),
|
|
36
|
+
mcp_server_url: z.string().url().optional(),
|
|
37
|
+
token: z.string().min(1)
|
|
38
|
+
});
|
|
39
|
+
var McpOauthAuthSchema = z.object({
|
|
40
|
+
type: z.literal("mcp_oauth"),
|
|
41
|
+
mcp_server_url: z.string().url().optional(),
|
|
42
|
+
access_token: z.string().min(1),
|
|
43
|
+
expires_at: z.string().optional(),
|
|
44
|
+
refresh: OAuthRefreshSchema.optional()
|
|
45
|
+
});
|
|
46
|
+
var CreateCredentialSchema = z.object({
|
|
47
|
+
display_name: z.string().min(1).max(200),
|
|
48
|
+
auth: z.discriminatedUnion("type", [StaticBearerAuthSchema, McpOauthAuthSchema]),
|
|
49
|
+
metadata: z.record(z.string()).optional()
|
|
50
|
+
});
|
|
51
|
+
var UpdateStaticBearerAuthSchema = z.object({
|
|
52
|
+
type: z.literal("static_bearer").optional(),
|
|
53
|
+
token: z.string().min(1).optional(),
|
|
54
|
+
mcp_server_url: z.string().url().nullish()
|
|
55
|
+
});
|
|
56
|
+
var UpdateMcpOauthAuthSchema = z.object({
|
|
57
|
+
type: z.literal("mcp_oauth").optional(),
|
|
58
|
+
access_token: z.string().min(1).optional(),
|
|
59
|
+
expires_at: z.string().nullish(),
|
|
60
|
+
refresh: OAuthRefreshSchema.optional()
|
|
61
|
+
});
|
|
62
|
+
var UpdateAuthSchema = z.object({
|
|
63
|
+
type: z.enum(["static_bearer", "mcp_oauth"]).optional(),
|
|
64
|
+
token: z.string().min(1).optional(),
|
|
65
|
+
mcp_server_url: z.string().url().nullish(),
|
|
66
|
+
access_token: z.string().min(1).optional(),
|
|
67
|
+
expires_at: z.string().nullish(),
|
|
68
|
+
refresh: OAuthRefreshSchema.optional()
|
|
69
|
+
}).optional();
|
|
70
|
+
var UpdateCredentialSchema = z.object({
|
|
71
|
+
display_name: z.string().min(1).max(200).optional(),
|
|
72
|
+
auth: UpdateAuthSchema
|
|
73
|
+
});
|
|
74
|
+
function handleCreateCredential(request, vaultId) {
|
|
75
|
+
return routeWrap(request, async ({ auth }) => {
|
|
76
|
+
loadVaultForCaller(auth, vaultId);
|
|
77
|
+
const body = await request.json();
|
|
78
|
+
const parsed = CreateCredentialSchema.safeParse(body);
|
|
79
|
+
if (!parsed.success) throw badRequest(parsed.error.message);
|
|
80
|
+
const { auth: authData } = parsed.data;
|
|
81
|
+
try {
|
|
82
|
+
if (authData.type === "mcp_oauth") {
|
|
83
|
+
const refreshConfig = authData.refresh ? {
|
|
84
|
+
token_endpoint: authData.refresh.token_endpoint,
|
|
85
|
+
client_id: authData.refresh.client_id,
|
|
86
|
+
scope: authData.refresh.scope,
|
|
87
|
+
refresh_token: authData.refresh.refresh_token,
|
|
88
|
+
token_endpoint_auth: authData.refresh.token_endpoint_auth
|
|
89
|
+
} : null;
|
|
90
|
+
const cred2 = createCredential({
|
|
91
|
+
vault_id: vaultId,
|
|
92
|
+
display_name: parsed.data.display_name,
|
|
93
|
+
auth_type: "mcp_oauth",
|
|
94
|
+
token: authData.access_token,
|
|
95
|
+
mcp_server_url: authData.mcp_server_url ?? null,
|
|
96
|
+
expires_at: authData.expires_at ?? null,
|
|
97
|
+
refresh_config: refreshConfig
|
|
98
|
+
});
|
|
99
|
+
return jsonOk(cred2, 201);
|
|
100
|
+
}
|
|
101
|
+
const cred = createCredential({
|
|
102
|
+
vault_id: vaultId,
|
|
103
|
+
display_name: parsed.data.display_name,
|
|
104
|
+
auth_type: "static_bearer",
|
|
105
|
+
token: authData.token,
|
|
106
|
+
mcp_server_url: authData.mcp_server_url ?? null
|
|
107
|
+
});
|
|
108
|
+
return jsonOk(cred, 201);
|
|
109
|
+
} catch (err) {
|
|
110
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
111
|
+
if (msg.includes("UNIQUE constraint failed") || msg.includes("SQLITE_CONSTRAINT")) {
|
|
112
|
+
throw conflict(
|
|
113
|
+
`Credential "${parsed.data.display_name}" already exists in this vault`
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
throw err;
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
function handleListCredentials(request, vaultId) {
|
|
121
|
+
return routeWrap(request, async ({ auth, request: req }) => {
|
|
122
|
+
loadVaultForCaller(auth, vaultId);
|
|
123
|
+
const url = new URL(req.url);
|
|
124
|
+
const requestedLimit = Number(url.searchParams.get("limit") || "100");
|
|
125
|
+
const data = listCredentials(vaultId);
|
|
126
|
+
return jsonOk({
|
|
127
|
+
data,
|
|
128
|
+
has_more: data.length === requestedLimit,
|
|
129
|
+
first_id: data.length > 0 ? data[0].id : null,
|
|
130
|
+
last_id: data.length > 0 ? data[data.length - 1].id : null
|
|
131
|
+
});
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
function handleGetCredential(request, vaultId, credentialId) {
|
|
135
|
+
return routeWrap(request, async ({ auth }) => {
|
|
136
|
+
loadVaultForCaller(auth, vaultId);
|
|
137
|
+
const cred = getCredential(credentialId);
|
|
138
|
+
if (!cred || cred.vault_id !== vaultId) {
|
|
139
|
+
throw notFound(`credential not found: ${credentialId}`);
|
|
140
|
+
}
|
|
141
|
+
return jsonOk(cred);
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
function handleUpdateCredential(request, vaultId, credentialId) {
|
|
145
|
+
return routeWrap(request, async ({ auth }) => {
|
|
146
|
+
loadVaultForCaller(auth, vaultId);
|
|
147
|
+
const existing = getCredential(credentialId);
|
|
148
|
+
if (!existing || existing.vault_id !== vaultId) {
|
|
149
|
+
throw notFound(`credential not found: ${credentialId}`);
|
|
150
|
+
}
|
|
151
|
+
const body = await request.json();
|
|
152
|
+
const parsed = UpdateCredentialSchema.safeParse(body);
|
|
153
|
+
if (!parsed.success) throw badRequest(parsed.error.message);
|
|
154
|
+
try {
|
|
155
|
+
const authData = parsed.data.auth;
|
|
156
|
+
const isMcpOauth = existing.auth.type === "mcp_oauth" || authData?.type === "mcp_oauth";
|
|
157
|
+
if (isMcpOauth && authData) {
|
|
158
|
+
const refreshConfig = authData.refresh ? {
|
|
159
|
+
token_endpoint: authData.refresh.token_endpoint,
|
|
160
|
+
client_id: authData.refresh.client_id,
|
|
161
|
+
scope: authData.refresh.scope,
|
|
162
|
+
refresh_token: authData.refresh.refresh_token,
|
|
163
|
+
token_endpoint_auth: authData.refresh.token_endpoint_auth
|
|
164
|
+
} : void 0;
|
|
165
|
+
const updated2 = updateCredential(credentialId, {
|
|
166
|
+
display_name: parsed.data.display_name,
|
|
167
|
+
auth_type: authData.type,
|
|
168
|
+
token: authData.access_token,
|
|
169
|
+
expires_at: authData.expires_at,
|
|
170
|
+
refresh_config: refreshConfig
|
|
171
|
+
});
|
|
172
|
+
if (!updated2) throw notFound(`credential not found: ${credentialId}`);
|
|
173
|
+
return jsonOk(updated2);
|
|
174
|
+
}
|
|
175
|
+
const updated = updateCredential(credentialId, {
|
|
176
|
+
display_name: parsed.data.display_name,
|
|
177
|
+
auth_type: authData?.type,
|
|
178
|
+
token: authData?.token,
|
|
179
|
+
mcp_server_url: authData?.mcp_server_url
|
|
180
|
+
});
|
|
181
|
+
if (!updated) throw notFound(`credential not found: ${credentialId}`);
|
|
182
|
+
return jsonOk(updated);
|
|
183
|
+
} catch (err) {
|
|
184
|
+
if (err instanceof Error && (err.message.includes("UNIQUE constraint failed") || err.message.includes("SQLITE_CONSTRAINT"))) {
|
|
185
|
+
throw conflict(
|
|
186
|
+
`Credential "${parsed.data.display_name}" already exists in this vault`
|
|
187
|
+
);
|
|
188
|
+
}
|
|
189
|
+
throw err;
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
function handleDeleteCredential(request, vaultId, credentialId) {
|
|
194
|
+
return routeWrap(request, async ({ auth }) => {
|
|
195
|
+
loadVaultForCaller(auth, vaultId);
|
|
196
|
+
const existing = getCredential(credentialId);
|
|
197
|
+
if (!existing || existing.vault_id !== vaultId) {
|
|
198
|
+
throw notFound(`credential not found: ${credentialId}`);
|
|
199
|
+
}
|
|
200
|
+
const deleted = deleteCredential(credentialId);
|
|
201
|
+
if (!deleted) throw notFound(`credential not found: ${credentialId}`);
|
|
202
|
+
return jsonOk({ id: credentialId, type: "vault_credential_deleted" });
|
|
203
|
+
});
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
export {
|
|
207
|
+
handleCreateCredential,
|
|
208
|
+
handleListCredentials,
|
|
209
|
+
handleGetCredential,
|
|
210
|
+
handleUpdateCredential,
|
|
211
|
+
handleDeleteCredential
|
|
212
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEFAULT_TENANT_ID
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-AR2TM7CR.js";
|
|
4
4
|
import {
|
|
5
5
|
init_ids,
|
|
6
6
|
newId
|
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
getDrizzle,
|
|
10
10
|
init_drizzle
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-R5T4LJSK.js";
|
|
12
12
|
import {
|
|
13
13
|
schema_exports
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-ZMJ4EP4C.js";
|
|
15
15
|
import {
|
|
16
16
|
init_clock,
|
|
17
17
|
nowMs,
|
|
@@ -12,15 +12,15 @@ import {
|
|
|
12
12
|
listMemories,
|
|
13
13
|
listMemoryStores,
|
|
14
14
|
updateMemory
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-LASUEMN6.js";
|
|
16
16
|
import {
|
|
17
17
|
jsonOk,
|
|
18
18
|
routeWrap
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-4MDF5N2L.js";
|
|
20
20
|
import {
|
|
21
21
|
getDb,
|
|
22
22
|
init_client
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-6POQAFEC.js";
|
|
24
24
|
import {
|
|
25
25
|
badRequest,
|
|
26
26
|
conflict,
|
|
@@ -70,11 +70,17 @@ function handleListMemoryStores(request) {
|
|
|
70
70
|
return routeWrap(request, async ({ auth, request: req }) => {
|
|
71
71
|
const url = new URL(req.url);
|
|
72
72
|
const agentId = url.searchParams.get("agent_id") ?? void 0;
|
|
73
|
+
const requestedLimit = Number(url.searchParams.get("limit") || "100");
|
|
73
74
|
const data = listMemoryStores({
|
|
74
75
|
agent_id: agentId,
|
|
75
76
|
tenantFilter: tenantFilter(auth)
|
|
76
77
|
});
|
|
77
|
-
return jsonOk({
|
|
78
|
+
return jsonOk({
|
|
79
|
+
data,
|
|
80
|
+
has_more: data.length === requestedLimit,
|
|
81
|
+
first_id: data.length > 0 ? data[0].id : null,
|
|
82
|
+
last_id: data.length > 0 ? data[data.length - 1].id : null
|
|
83
|
+
});
|
|
78
84
|
});
|
|
79
85
|
}
|
|
80
86
|
function handleGetMemoryStore(request, id) {
|
|
@@ -110,10 +116,17 @@ function handleCreateMemory(request, storeId) {
|
|
|
110
116
|
});
|
|
111
117
|
}
|
|
112
118
|
function handleListMemories(request, storeId) {
|
|
113
|
-
return routeWrap(request, async ({ auth }) => {
|
|
119
|
+
return routeWrap(request, async ({ auth, request: req }) => {
|
|
114
120
|
loadStoreForCaller(auth, storeId);
|
|
121
|
+
const url = new URL(req.url);
|
|
122
|
+
const requestedLimit = Number(url.searchParams.get("limit") || "100");
|
|
115
123
|
const data = listMemories(storeId);
|
|
116
|
-
return jsonOk({
|
|
124
|
+
return jsonOk({
|
|
125
|
+
data,
|
|
126
|
+
has_more: data.length === requestedLimit,
|
|
127
|
+
first_id: data.length > 0 ? data[0].id : null,
|
|
128
|
+
last_id: data.length > 0 ? data[data.length - 1].id : null
|
|
129
|
+
});
|
|
117
130
|
});
|
|
118
131
|
}
|
|
119
132
|
function handleGetMemory(request, storeId, memId) {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
init_schema,
|
|
3
3
|
schema_exports
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-ZMJ4EP4C.js";
|
|
5
5
|
import {
|
|
6
6
|
getDb,
|
|
7
7
|
init_client
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-6POQAFEC.js";
|
|
9
9
|
import {
|
|
10
10
|
__esm
|
|
11
11
|
} from "./chunk-2ESYSVXG.js";
|
|
@@ -1,59 +1,59 @@
|
|
|
1
1
|
import {
|
|
2
2
|
enqueueTurn
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-ULS4X3UQ.js";
|
|
4
4
|
import {
|
|
5
5
|
runTurn
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UZQLLGX4.js";
|
|
7
7
|
import {
|
|
8
8
|
installOtlpExporter
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-NIW3B4V2.js";
|
|
10
10
|
import {
|
|
11
11
|
redactAppendInput
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-GNHRAWOX.js";
|
|
13
13
|
import {
|
|
14
14
|
createApiKey,
|
|
15
15
|
listApiKeys
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-XTZWBXAO.js";
|
|
17
17
|
import {
|
|
18
18
|
initSentry
|
|
19
19
|
} from "./chunk-3MQ2FWXS.js";
|
|
20
20
|
import {
|
|
21
21
|
installShutdownHandlers
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-BQRKJAOP.js";
|
|
23
23
|
import {
|
|
24
24
|
runSweep
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-WORPHTCS.js";
|
|
26
26
|
import {
|
|
27
27
|
reconcileDockerOrphanSandboxes,
|
|
28
28
|
reconcileOrphanSandboxes
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-W63RBT7H.js";
|
|
30
30
|
import {
|
|
31
31
|
appendEvent,
|
|
32
32
|
installPayloadRedactor
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-MVC2FD32.js";
|
|
34
34
|
import {
|
|
35
35
|
setSessionSandbox
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-KFORPY7J.js";
|
|
37
37
|
import {
|
|
38
38
|
readEnvValue,
|
|
39
39
|
upsertEnvLine
|
|
40
40
|
} from "./chunk-YPXI7Q2M.js";
|
|
41
41
|
import {
|
|
42
42
|
getLastUnprocessedUserMessage
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-NDVC4J3H.js";
|
|
44
44
|
import {
|
|
45
45
|
getBySession,
|
|
46
46
|
register
|
|
47
47
|
} from "./chunk-EFOIR7R3.js";
|
|
48
48
|
import {
|
|
49
49
|
resolveContainerProvider
|
|
50
|
-
} from "./chunk-
|
|
50
|
+
} from "./chunk-C4II4GGZ.js";
|
|
51
51
|
import {
|
|
52
52
|
getEnvironment
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-QVFRPABA.js";
|
|
54
54
|
import {
|
|
55
55
|
getConfig
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-6YZ5WTLB.js";
|
|
57
57
|
import {
|
|
58
58
|
init_clock,
|
|
59
59
|
nowMs
|
|
@@ -61,7 +61,7 @@ import {
|
|
|
61
61
|
import {
|
|
62
62
|
getDb,
|
|
63
63
|
init_client
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-6POQAFEC.js";
|
|
65
65
|
import {
|
|
66
66
|
getRuntime
|
|
67
67
|
} from "./chunk-UYTSKFGK.js";
|