@agentstep/agent-sdk 0.5.0 → 0.5.2
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 +7 -7
- package/dist/backends/claude/index.js +12 -12
- package/dist/backends/claude/wrapper-script.js +1 -1
- package/dist/backends/codex/auth.js +6 -6
- package/dist/backends/codex/index.js +11 -11
- package/dist/backends/factory/auth.js +6 -6
- package/dist/backends/factory/index.js +13 -13
- package/dist/backends/gemini/auth.js +6 -6
- package/dist/backends/gemini/index.js +11 -11
- package/dist/backends/opencode/auth.js +6 -6
- package/dist/backends/opencode/index.js +15 -15
- package/dist/backends/pi/auth.js +6 -6
- package/dist/backends/pi/index.js +13 -13
- package/dist/backends/registry.js +31 -31
- package/dist/backends/shared/wrap-prompt.js +1 -1
- package/dist/chunk-3LUY2POB.js +50 -0
- package/dist/{chunk-3PA4NXRP.js → chunk-3VPTHB7I.js} +2 -2
- package/dist/{chunk-YMCS6AB7.js → chunk-4236UQNZ.js} +2 -2
- package/dist/{chunk-HMOSAXVZ.js → chunk-4A4F4L4H.js} +2 -2
- package/dist/{chunk-JFOHGHW5.js → chunk-4B5H2MFO.js} +59 -16
- package/dist/{chunk-OZFSKR2W.js → chunk-5525T7PL.js} +4 -4
- package/dist/{chunk-AXBM7HAR.js → chunk-5EFY6UGV.js} +1 -1
- package/dist/chunk-5UTTNXNJ.js +166 -0
- package/dist/{chunk-4RDILRIO.js → chunk-5YGYUGDQ.js} +3 -3
- package/dist/{chunk-HWR2HYQJ.js → chunk-6DPJVMEC.js} +1 -1
- package/dist/{chunk-PNZF7HIU.js → chunk-6KJS42ZL.js} +8 -7
- package/dist/{chunk-LQP6XGFU.js → chunk-6KQFP32G.js} +3 -3
- package/dist/{chunk-DMMNAQUM.js → chunk-6L4AGHAV.js} +2 -2
- package/dist/{chunk-WEC625LQ.js → chunk-6TJBZXD4.js} +1 -1
- package/dist/{chunk-QTXAWC5J.js → chunk-6URMGCAC.js} +2 -2
- package/dist/{chunk-DJZSPWG2.js → chunk-6WUYI3DJ.js} +4 -4
- package/dist/{chunk-H6OT5GUL.js → chunk-7APAOJIZ.js} +3 -3
- package/dist/{chunk-HVLYE4S5.js → chunk-7EDLLXFQ.js} +1 -1
- package/dist/chunk-7IYL2O7H.js +185 -0
- package/dist/{chunk-KGBKIJPF.js → chunk-7JAUY5SG.js} +3 -3
- package/dist/{chunk-NDTIDWBE.js → chunk-7XIAKW75.js} +1 -1
- package/dist/{chunk-TUEBRYPZ.js → chunk-A2W3USEZ.js} +1 -1
- package/dist/chunk-ACPP4KN7.js +164 -0
- package/dist/{chunk-22OUZJAV.js → chunk-AESA3ARX.js} +3 -3
- package/dist/{chunk-Z4LFLXRR.js → chunk-AIAF5ZZA.js} +1 -1
- package/dist/{chunk-GIMDS46L.js → chunk-ANS2TQYT.js} +3 -3
- package/dist/{chunk-T3FQPTOA.js → chunk-BCBDHUFY.js} +2 -2
- package/dist/{chunk-MCWCRZM4.js → chunk-BLTCDZ3O.js} +4 -4
- package/dist/{chunk-VP527YC5.js → chunk-BYIU4WAQ.js} +3 -3
- package/dist/{chunk-L26TVIB6.js → chunk-C52BVTYC.js} +8 -8
- package/dist/{chunk-EWIWVXXP.js → chunk-CA76BJWL.js} +44 -14
- package/dist/{chunk-DKLHYSPW.js → chunk-DZGFZMUE.js} +5 -5
- package/dist/{chunk-R3QHLKJG.js → chunk-E35XHOFL.js} +5 -5
- package/dist/{chunk-PZNAQBHQ.js → chunk-FILGQF2G.js} +2 -2
- package/dist/{chunk-JP7Y3TKK.js → chunk-FSVDF57K.js} +5 -5
- package/dist/{chunk-S7DFMJR5.js → chunk-FWJOTEVY.js} +3 -3
- package/dist/{chunk-XSNJ7NT2.js → chunk-G4DTLYOD.js} +1 -1
- package/dist/{chunk-IEZFRNLC.js → chunk-GBLR2CPP.js} +107 -9
- package/dist/{chunk-7SY65LWY.js → chunk-GEC3NFYO.js} +4 -4
- package/dist/{chunk-GLKWJESP.js → chunk-GZZHVIEG.js} +2 -2
- package/dist/{chunk-NHAYKVXG.js → chunk-IAKR572X.js} +8 -8
- package/dist/{chunk-GFSRNOPI.js → chunk-IBUFLAAJ.js} +7 -7
- package/dist/{chunk-OKT2J4ZB.js → chunk-IZ5TUMCF.js} +23 -7
- package/dist/{chunk-W3JMIUHV.js → chunk-KQTTKYZY.js} +1 -1
- package/dist/{chunk-AJL3T5JS.js → chunk-L2DCOJTQ.js} +3 -3
- package/dist/{chunk-JLUCJMAQ.js → chunk-LA6IFUVR.js} +70 -24
- package/dist/{chunk-AB7MPL3H.js → chunk-LW4OCFIP.js} +9 -7
- package/dist/{chunk-BCIFFAGW.js → chunk-M3752GFZ.js} +15 -5
- package/dist/{chunk-5U5LRAFJ.js → chunk-MTLM36QD.js} +2 -2
- package/dist/{chunk-A6VORSKD.js → chunk-MV42BTU3.js} +1 -1
- package/dist/{chunk-5MERXOLJ.js → chunk-NRX5WHHN.js} +4 -4
- package/dist/{chunk-T3HMVHDG.js → chunk-O2X4XBU7.js} +1 -1
- package/dist/{chunk-2YZOIFVN.js → chunk-P4NU74SP.js} +47 -0
- package/dist/{chunk-TVODT2UR.js → chunk-P4OCCRQW.js} +1 -1
- package/dist/{chunk-YXOCKQZU.js → chunk-P4VJADXA.js} +2 -2
- package/dist/{chunk-6QZ23WRF.js → chunk-P6LESAPO.js} +54 -20
- package/dist/{chunk-HY3T4YJV.js → chunk-PICGSLMG.js} +5 -5
- package/dist/{chunk-64IQEPSD.js → chunk-PQKIXSEP.js} +2 -2
- package/dist/{chunk-GV6GUSCP.js → chunk-Q2JYAAJO.js} +9 -9
- package/dist/{chunk-IU457W7Q.js → chunk-QBJOYOVF.js} +2 -1
- package/dist/{chunk-MAJWADF7.js → chunk-RZOCX57A.js} +2 -2
- package/dist/{chunk-4D345E27.js → chunk-SQZPJFBF.js} +2 -2
- package/dist/{chunk-OSNMIPHV.js → chunk-TE6KCRPP.js} +1 -1
- package/dist/{chunk-Z6VZYRVN.js → chunk-TF36SWHG.js} +2 -2
- package/dist/{chunk-KUWJJD6O.js → chunk-TSR33JMZ.js} +14 -5
- package/dist/{chunk-L3IACZ72.js → chunk-TWH4UH6G.js} +1 -1
- package/dist/{chunk-445EL6J5.js → chunk-UAEVL47I.js} +1 -1
- package/dist/{chunk-X6QIWZ33.js → chunk-UGH5JDXX.js} +3 -3
- package/dist/{chunk-FSQ4HGHX.js → chunk-UJW3I3TX.js} +3 -3
- package/dist/{chunk-I26QP3A3.js → chunk-UQZFFG7U.js} +1 -1
- package/dist/{chunk-ILHIHMO3.js → chunk-VC5DELR4.js} +37 -2
- package/dist/{chunk-NKQVOAWN.js → chunk-VMLXV2H6.js} +1 -1
- package/dist/{chunk-FCUXFLNK.js → chunk-VY6IWBSK.js} +17 -4
- package/dist/{chunk-6CVQDSTS.js → chunk-WDAFSCYQ.js} +1 -1
- package/dist/{chunk-GCQDNUS2.js → chunk-WFRHLTKI.js} +3 -3
- package/dist/{chunk-R6EEBWM3.js → chunk-WRLCJNQF.js} +1 -1
- package/dist/{chunk-KKAJC3Z2.js → chunk-X4ARJS6I.js} +10 -10
- package/dist/{chunk-MQBMXAPU.js → chunk-Y4MI27HU.js} +1 -1
- package/dist/{chunk-PN3AWRMX.js → chunk-YDP3YA5D.js} +17 -17
- package/dist/{chunk-FVBDEOTZ.js → chunk-YE2RMJY7.js} +18 -4
- package/dist/{chunk-IRW7AYTP.js → chunk-YEWYRPN4.js} +42 -4
- package/dist/{chunk-24IDJ7LY.js → chunk-YL6IQUJC.js} +4 -4
- package/dist/{chunk-CLSGNQ7J.js → chunk-Z46R47QX.js} +8 -8
- package/dist/{chunk-STJNO6SL.js → chunk-Z6OPLBPQ.js} +1 -1
- package/dist/{chunk-RYJXSXCV.js → chunk-ZEJOFHR7.js} +5 -5
- package/dist/{chunk-EOJ66GY7.js → chunk-ZFGG62JW.js} +4 -4
- 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 +45 -43
- package/dist/containers/setup.js +9 -9
- 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 +13 -5
- package/dist/db/migrations.js +1 -1
- package/dist/db/proxy.js +5 -5
- package/dist/db/schema.js +5 -1
- package/dist/db/session-resources.js +5 -5
- package/dist/db/sessions.js +8 -8
- package/dist/db/sync.js +5 -5
- package/dist/db/tenants.js +3 -3
- package/dist/db/threads.js +27 -0
- package/dist/db/traces.js +5 -5
- package/dist/db/upstream_keys.js +3 -3
- package/dist/db/vaults.js +6 -6
- package/dist/dreaming/prompts.js +9 -0
- package/dist/dreaming/review.js +22 -0
- package/dist/handlers/agents.js +59 -59
- package/dist/handlers/api_keys.js +60 -60
- package/dist/handlers/audit.js +60 -60
- package/dist/handlers/batch.js +60 -60
- package/dist/handlers/credentials.js +60 -60
- package/dist/handlers/environments.js +60 -60
- package/dist/handlers/events.js +63 -63
- package/dist/handlers/files.js +60 -60
- package/dist/handlers/index.js +159 -144
- package/dist/handlers/license.js +59 -59
- package/dist/handlers/memory.js +66 -60
- package/dist/handlers/metrics.js +59 -59
- package/dist/handlers/models.js +60 -60
- package/dist/handlers/providers.js +59 -59
- package/dist/handlers/resources.js +59 -59
- package/dist/handlers/sessions.js +63 -62
- package/dist/handlers/settings.js +59 -59
- package/dist/handlers/skills-write.js +59 -59
- package/dist/handlers/skills.js +60 -60
- package/dist/handlers/stream.js +59 -59
- package/dist/handlers/tenants.js +60 -60
- package/dist/handlers/threads.js +70 -61
- package/dist/handlers/traces.js +60 -60
- package/dist/handlers/upstream_keys.js +62 -62
- package/dist/handlers/vaults.js +59 -59
- package/dist/handlers/whoami.js +59 -59
- package/dist/http.js +58 -58
- package/dist/index.js +72 -67
- package/dist/init.js +55 -55
- 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 +12 -12
- package/dist/providers/vercel.js +6 -6
- 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 +48 -48
- package/dist/sessions/grader.js +5 -5
- package/dist/sessions/secrets.js +8 -8
- package/dist/sessions/sweeper.js +44 -44
- package/dist/sessions/threads.js +121 -55
- package/dist/shutdown.js +45 -45
- 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/dist/sync/memory-sync.js +79 -0
- package/package.json +1 -1
- package/dist/chunk-XTKTIFHC.js +0 -48
- package/dist/{chunk-UE6DNLSV.js → chunk-LT5PRO54.js} +0 -0
- package/dist/{dist-EY25RQ2S.js → dist-S64ZABZX.js} +3 -3
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import "../chunk-2ESYSVXG.js";
|
|
2
|
+
|
|
3
|
+
// src/sync/memory-sync.ts
|
|
4
|
+
async function syncMemoryStores(opts) {
|
|
5
|
+
const { sessionId, sandboxName, provider, secrets } = opts;
|
|
6
|
+
const { listResources } = await import("../db/session-resources.js");
|
|
7
|
+
const { getMemoryStore, listMemories, createOrUpsertMemory, getMemoryByPath, deleteMemory } = await import("../db/memory.js");
|
|
8
|
+
const resources = listResources(sessionId);
|
|
9
|
+
const memStoreResources = resources.filter(
|
|
10
|
+
(r) => r.type === "memory_store" && r.memory_store_id && r.access === "read_write"
|
|
11
|
+
);
|
|
12
|
+
if (memStoreResources.length === 0) return;
|
|
13
|
+
for (const r of memStoreResources) {
|
|
14
|
+
const store = getMemoryStore(r.memory_store_id);
|
|
15
|
+
if (!store) continue;
|
|
16
|
+
const storeName = store.name.replace(/[^a-zA-Z0-9_.-]/g, "_");
|
|
17
|
+
const storeDir = `/mnt/memory/${storeName}`;
|
|
18
|
+
let containerPaths;
|
|
19
|
+
try {
|
|
20
|
+
const result = await provider.exec(
|
|
21
|
+
sandboxName,
|
|
22
|
+
["find", storeDir, "-type", "f"],
|
|
23
|
+
{ secrets, timeoutMs: 1e4 }
|
|
24
|
+
);
|
|
25
|
+
if (result.exit_code !== 0 || !result.stdout.trim()) {
|
|
26
|
+
containerPaths = [];
|
|
27
|
+
} else {
|
|
28
|
+
const clean = result.stdout.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g, "");
|
|
29
|
+
containerPaths = clean.trim().split("\n").map((l) => l.trim()).filter(Boolean);
|
|
30
|
+
}
|
|
31
|
+
} catch (err) {
|
|
32
|
+
console.warn(`[memory-sync] failed to list files in ${storeDir}:`, err);
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
const prefix = storeDir.endsWith("/") ? storeDir : `${storeDir}/`;
|
|
36
|
+
const containerFileMap = /* @__PURE__ */ new Map();
|
|
37
|
+
for (const absPath of containerPaths) {
|
|
38
|
+
if (absPath.startsWith(prefix)) {
|
|
39
|
+
const relPath = absPath.slice(prefix.length);
|
|
40
|
+
if (relPath) containerFileMap.set(relPath, absPath);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
const dbMemories = listMemories(store.id);
|
|
44
|
+
const dbMemoryMap = new Map(dbMemories.map((m) => [m.path, m]));
|
|
45
|
+
for (const [relPath, absPath] of containerFileMap) {
|
|
46
|
+
try {
|
|
47
|
+
const result = await provider.exec(
|
|
48
|
+
sandboxName,
|
|
49
|
+
["cat", "--", absPath],
|
|
50
|
+
{ secrets, timeoutMs: 1e4 }
|
|
51
|
+
);
|
|
52
|
+
if (result.exit_code !== 0) continue;
|
|
53
|
+
const content = result.stdout.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F]/g, "");
|
|
54
|
+
const existing = dbMemoryMap.get(relPath);
|
|
55
|
+
if (existing) {
|
|
56
|
+
if (existing.content !== content) {
|
|
57
|
+
createOrUpsertMemory(store.id, relPath, content, sessionId);
|
|
58
|
+
}
|
|
59
|
+
} else {
|
|
60
|
+
createOrUpsertMemory(store.id, relPath, content, sessionId);
|
|
61
|
+
}
|
|
62
|
+
} catch (err) {
|
|
63
|
+
console.warn(`[memory-sync] failed to read ${absPath}:`, err);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
for (const [path, mem] of dbMemoryMap) {
|
|
67
|
+
if (!containerFileMap.has(path)) {
|
|
68
|
+
try {
|
|
69
|
+
deleteMemory(mem.id, sessionId);
|
|
70
|
+
} catch (err) {
|
|
71
|
+
console.warn(`[memory-sync] failed to delete memory ${mem.id}:`, err);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
export {
|
|
78
|
+
syncMemoryStores
|
|
79
|
+
};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"license": "Apache-2.0",
|
|
3
3
|
"name": "@agentstep/agent-sdk",
|
|
4
|
-
"version": "0.5.
|
|
4
|
+
"version": "0.5.2",
|
|
5
5
|
"description": "Core engine for AgentStep Gateway \u2014 backends, sandbox providers, session orchestration, and vault encryption.",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"anthropic",
|
package/dist/chunk-XTKTIFHC.js
DELETED
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
assertResourceTenant,
|
|
3
|
-
tenantFilter
|
|
4
|
-
} from "./chunk-23UKWXJH.js";
|
|
5
|
-
import {
|
|
6
|
-
paginatedOk,
|
|
7
|
-
routeWrap
|
|
8
|
-
} from "./chunk-QTXAWC5J.js";
|
|
9
|
-
import {
|
|
10
|
-
getSession,
|
|
11
|
-
listSessions
|
|
12
|
-
} from "./chunk-KUWJJD6O.js";
|
|
13
|
-
import {
|
|
14
|
-
getDb,
|
|
15
|
-
init_client
|
|
16
|
-
} from "./chunk-W3JMIUHV.js";
|
|
17
|
-
import {
|
|
18
|
-
notFound
|
|
19
|
-
} from "./chunk-EZYKRG4W.js";
|
|
20
|
-
|
|
21
|
-
// src/handlers/threads.ts
|
|
22
|
-
init_client();
|
|
23
|
-
function handleListThreads(request, sessionId) {
|
|
24
|
-
return routeWrap(request, async ({ auth }) => {
|
|
25
|
-
const row = getDb().prepare(`SELECT tenant_id FROM sessions WHERE id = ?`).get(sessionId);
|
|
26
|
-
if (!row) throw notFound(`session ${sessionId} not found`);
|
|
27
|
-
assertResourceTenant(auth, row.tenant_id, `session ${sessionId} not found`);
|
|
28
|
-
const session = getSession(sessionId);
|
|
29
|
-
if (!session) throw notFound(`session ${sessionId} not found`);
|
|
30
|
-
const url = new URL(request.url);
|
|
31
|
-
const limit = url.searchParams.get("limit");
|
|
32
|
-
const order = url.searchParams.get("order");
|
|
33
|
-
const requestedLimit = limit ? Number(limit) : 50;
|
|
34
|
-
const data = listSessions({
|
|
35
|
-
parent_session_id: sessionId,
|
|
36
|
-
limit: requestedLimit,
|
|
37
|
-
order: order ?? void 0,
|
|
38
|
-
includeArchived: true,
|
|
39
|
-
// show all threads including completed ones
|
|
40
|
-
tenantFilter: tenantFilter(auth)
|
|
41
|
-
});
|
|
42
|
-
return paginatedOk(data, requestedLimit);
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
export {
|
|
47
|
-
handleListThreads
|
|
48
|
-
};
|
|
File without changes
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
+
import {
|
|
2
|
+
VERSION
|
|
3
|
+
} from "./chunk-Q6TYCTYR.js";
|
|
1
4
|
import {
|
|
2
5
|
require_auth_errors,
|
|
3
6
|
require_token_error,
|
|
4
7
|
require_token_util
|
|
5
8
|
} from "./chunk-H7PKMOSH.js";
|
|
6
|
-
import {
|
|
7
|
-
VERSION
|
|
8
|
-
} from "./chunk-Q6TYCTYR.js";
|
|
9
9
|
import {
|
|
10
10
|
__commonJS,
|
|
11
11
|
__require,
|