@slopus/happy-agent-base 0.0.20 → 0.0.22
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/README.md +8 -3
- package/dist/Agent.d.ts +5 -5
- package/dist/Agent.d.ts.map +1 -1
- package/dist/Agent.js +5 -5
- package/dist/Agent.js.map +1 -1
- package/dist/AgentBase.d.ts +13 -52
- package/dist/AgentBase.d.ts.map +1 -1
- package/dist/AgentBase.js +44 -81
- package/dist/AgentBase.js.map +1 -1
- package/dist/AgentRef.d.ts +0 -7
- package/dist/AgentRef.d.ts.map +1 -1
- package/dist/AgentRef.js +4 -21
- package/dist/AgentRef.js.map +1 -1
- package/dist/AgentSpanAttributes.d.ts.map +1 -1
- package/dist/AgentSpanAttributes.js.map +1 -1
- package/dist/AgentSystem.d.ts +5 -5
- package/dist/AgentSystem.d.ts.map +1 -1
- package/dist/AgentSystemLocal.d.ts +9 -5
- package/dist/AgentSystemLocal.d.ts.map +1 -1
- package/dist/AgentSystemLocal.js +170 -48
- package/dist/AgentSystemLocal.js.map +1 -1
- package/dist/AgentSystemRef.d.ts +2 -2
- package/dist/AgentSystemRef.d.ts.map +1 -1
- package/dist/AgentSystemRef.js +5 -11
- package/dist/AgentSystemRef.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentSystem.d.ts","sourceRoot":"","sources":["../sources/AgentSystem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"AgentSystem.d.ts","sourceRoot":"","sources":["../sources/AgentSystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type Context } from "@steve.kite/stdlib";
|
|
2
2
|
import { Agent } from "./Agent.js";
|
|
3
|
-
import { type
|
|
3
|
+
import { type AgentBaseMessageOptions, type AgentBaseQueueMode } from "./AgentBase.js";
|
|
4
4
|
import type { AgentDatabase } from "./AgentDatabase.js";
|
|
5
5
|
import { type AgentConfig } from "./AgentConfig.js";
|
|
6
6
|
import type { AgentModule } from "./AgentModule.js";
|
|
@@ -27,6 +27,10 @@ export interface AgentSystemLocalOptions<Database extends AgentDatabase = AgentD
|
|
|
27
27
|
readonly provider: string;
|
|
28
28
|
/** The models this collection offers its agents. */
|
|
29
29
|
readonly models: readonly AgentModel[];
|
|
30
|
+
/** How every agent drains steering accepted before its next response. */
|
|
31
|
+
readonly steeringMode?: AgentBaseQueueMode;
|
|
32
|
+
/** How every agent drains sent follow-ups accepted before its next response. */
|
|
33
|
+
readonly sendMode?: AgentBaseQueueMode;
|
|
30
34
|
}
|
|
31
35
|
/**
|
|
32
36
|
* The `AgentSystem` backed by this process: it lazily builds and owns the `Agent` instances for
|
|
@@ -102,12 +106,12 @@ export declare class AgentSystemLocal<Database extends AgentDatabase = AgentData
|
|
|
102
106
|
*/
|
|
103
107
|
resolve(ctx: Context, agentId: string): Promise<Agent<AnyAgentTool, Database>>;
|
|
104
108
|
/** Queue a steered message for an agent. */
|
|
105
|
-
steer(ctx: Context, agentId: string, message: AgentQueuedMessage, options?: AgentBaseMessageOptions
|
|
109
|
+
steer(ctx: Context, agentId: string, message: AgentQueuedMessage, options?: AgentBaseMessageOptions): Promise<AgentMessageAcceptance>;
|
|
106
110
|
/** Queue a message for an agent. */
|
|
107
|
-
send(ctx: Context, agentId: string, message: AgentQueuedMessage, options?: AgentBaseMessageOptions
|
|
111
|
+
send(ctx: Context, agentId: string, message: AgentQueuedMessage, options?: AgentBaseMessageOptions): Promise<AgentMessageAcceptance>;
|
|
108
112
|
/** Cancel an agent's active turn, leaving its queued messages durable for the next one. */
|
|
109
|
-
abort(ctx: Context, agentId: string
|
|
113
|
+
abort(ctx: Context, agentId: string): Promise<void>;
|
|
110
114
|
/** Ask an agent for its conversation to be replaced by the provider's summary of it. */
|
|
111
|
-
compact(ctx: Context, agentId: string
|
|
115
|
+
compact(ctx: Context, agentId: string): Promise<void>;
|
|
112
116
|
}
|
|
113
117
|
//# sourceMappingURL=AgentSystemLocal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentSystemLocal.d.ts","sourceRoot":"","sources":["../sources/AgentSystemLocal.ts"],"names":[],"mappings":"AAIA,OAAO,EAKH,KAAK,OAAO,EACf,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"AgentSystemLocal.d.ts","sourceRoot":"","sources":["../sources/AgentSystemLocal.ts"],"names":[],"mappings":"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"}
|
package/dist/AgentSystemLocal.js
CHANGED
|
@@ -47,6 +47,10 @@ export class AgentSystemLocal {
|
|
|
47
47
|
#providers;
|
|
48
48
|
/** The registry ID of the provider new agents are created with. */
|
|
49
49
|
#provider;
|
|
50
|
+
/** How every agent drains its steering queue. */
|
|
51
|
+
#steeringMode;
|
|
52
|
+
/** How every agent drains its sent-message queue. */
|
|
53
|
+
#sendMode;
|
|
50
54
|
/** Exclusive database-backed ownership of this collection's whole durable store. */
|
|
51
55
|
#storageLock;
|
|
52
56
|
/** The identity index and creation-time config fallback; current config lives with the agent. */
|
|
@@ -60,7 +64,7 @@ export class AgentSystemLocal {
|
|
|
60
64
|
#sharedModuleKV;
|
|
61
65
|
/** The live `Agent` instances this process has built, keyed by identity. */
|
|
62
66
|
#agents = new Map();
|
|
63
|
-
/** Unpublished agents built once per transaction
|
|
67
|
+
/** Unpublished agents built once per transaction and made live only after commit. */
|
|
64
68
|
#transactionAgents = new WeakMap();
|
|
65
69
|
// One agent has one store for the life of the collection, so inspecting an agent's durable
|
|
66
70
|
// work and running that agent never end up looking at two different stores.
|
|
@@ -71,6 +75,8 @@ export class AgentSystemLocal {
|
|
|
71
75
|
#admitted = new Set();
|
|
72
76
|
/** Post-commit lifecycle observations still running outside per-agent locks. */
|
|
73
77
|
#lifecycleObservations = new Set();
|
|
78
|
+
/** Post-commit closes and replacement resets that must finish before an ID is reused. */
|
|
79
|
+
#transitions = new Map();
|
|
74
80
|
/** No agent operation is admitted until every module has finished its beforeStart hook. */
|
|
75
81
|
#lifecycle = "initializing";
|
|
76
82
|
/** The shared shutdown, including release of the hard storage lock. */
|
|
@@ -124,6 +130,8 @@ export class AgentSystemLocal {
|
|
|
124
130
|
this.#storageLock = storageLock;
|
|
125
131
|
this.#providers = options.providers;
|
|
126
132
|
this.#provider = options.provider;
|
|
133
|
+
this.#steeringMode = options.steeringMode ?? "one-at-a-time";
|
|
134
|
+
this.#sendMode = options.sendMode ?? "one-at-a-time";
|
|
127
135
|
this.models = [...options.models];
|
|
128
136
|
this.#configs = storage.kv.scoped("config");
|
|
129
137
|
this.#parents = storage.kv.scoped("parent");
|
|
@@ -134,7 +142,16 @@ export class AgentSystemLocal {
|
|
|
134
142
|
* release the database lock. Repeated callers join the same shutdown.
|
|
135
143
|
*/
|
|
136
144
|
async close(ctx) {
|
|
137
|
-
|
|
145
|
+
if (agentStorageTransaction(ctx) !== undefined) {
|
|
146
|
+
afterCommit(ctx, () => {
|
|
147
|
+
outsideAgentDatabaseOperation(() => {
|
|
148
|
+
void this.close(this.#ctx).catch((error) => {
|
|
149
|
+
this.#ctx.log.warn("The committed agent system close failed.", error);
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
});
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
138
155
|
if (this.#closePromise === undefined) {
|
|
139
156
|
this.#lifecycle = "closing";
|
|
140
157
|
this.#closePromise = this.#shutdown();
|
|
@@ -152,8 +169,8 @@ export class AgentSystemLocal {
|
|
|
152
169
|
/** The real shutdown barrier, which keeps the hard store lock until every agent is closed. */
|
|
153
170
|
async #shutdown() {
|
|
154
171
|
try {
|
|
155
|
-
while (this.#admitted.size > 0) {
|
|
156
|
-
await Promise.allSettled(this.#admitted);
|
|
172
|
+
while (this.#admitted.size > 0 || this.#transitions.size > 0) {
|
|
173
|
+
await Promise.allSettled([...this.#admitted, ...this.#transitions.values()]);
|
|
157
174
|
}
|
|
158
175
|
const closed = [...this.#agents.values()].map((agent) => {
|
|
159
176
|
void agent.close().catch(() => undefined);
|
|
@@ -209,12 +226,18 @@ export class AgentSystemLocal {
|
|
|
209
226
|
* fail.
|
|
210
227
|
*/
|
|
211
228
|
async create(ctx, config, options) {
|
|
212
|
-
this.#assertOutsideStorageTransaction(ctx, "created");
|
|
213
229
|
return await this.#admit(async () => {
|
|
214
230
|
const agentId = options?.id ?? createId();
|
|
215
231
|
if (!Value.Check(cuid2Schema, agentId)) {
|
|
216
232
|
throw new Error("The agent ID must be a cuid2 identity.");
|
|
217
233
|
}
|
|
234
|
+
// Preserve synchronous ownership of caller-supplied config in the ordinary case.
|
|
235
|
+
// Awaiting an already-settled async helper would give the caller a microtask in which
|
|
236
|
+
// it could mutate the object before we copy it below.
|
|
237
|
+
if (this.#transitions.has(agentId)) {
|
|
238
|
+
await this.#waitForTransition(ctx, agentId);
|
|
239
|
+
}
|
|
240
|
+
this.#assertNotDeletedInTransaction(ctx, agentId);
|
|
218
241
|
if (!Value.Check(agentConfigSchema, config)) {
|
|
219
242
|
throw new Error(`The configuration for agent "${agentId}" is not valid.`);
|
|
220
243
|
}
|
|
@@ -233,7 +256,7 @@ export class AgentSystemLocal {
|
|
|
233
256
|
// Provenance is the system's to state, so a caller cannot claim a different one.
|
|
234
257
|
const owned = ownAgentConfig({ ...config, provenance });
|
|
235
258
|
const lifecycle = lifecycleAgent(agentId, owned);
|
|
236
|
-
|
|
259
|
+
const create = async (lockCtx) => {
|
|
237
260
|
if ((await this.#configs.read(lockCtx, agentId)) !== undefined) {
|
|
238
261
|
throw new Error(`Agent "${agentId}" already exists.`);
|
|
239
262
|
}
|
|
@@ -254,11 +277,18 @@ export class AgentSystemLocal {
|
|
|
254
277
|
await this.#parents.write(txCtx, agentId, parent);
|
|
255
278
|
await this.#recordLifecycle(txCtx, lifecycle, (hooks) => hooks.agentCreatedTransact, (hooks) => hooks.agentCreated);
|
|
256
279
|
});
|
|
257
|
-
const agent =
|
|
280
|
+
const agent = agentStorageTransaction(lockCtx) === undefined
|
|
281
|
+
? await this.#instantiate(agentId, owned)
|
|
282
|
+
: await this.#transactionAgent(lockCtx, agentId, owned, true, true);
|
|
258
283
|
if (agent === undefined)
|
|
259
284
|
throw new Error(`Agent "${agentId}" could not be built.`);
|
|
260
285
|
return agent;
|
|
261
|
-
}
|
|
286
|
+
};
|
|
287
|
+
// A carried transaction already serializes the database and must not wait for an
|
|
288
|
+
// identity lock whose current owner may itself be queued behind that transaction.
|
|
289
|
+
if (agentStorageTransaction(ctx) !== undefined)
|
|
290
|
+
return await create(ctx);
|
|
291
|
+
return await this.#lockFor(agentId).runInLock(ctx, create);
|
|
262
292
|
});
|
|
263
293
|
}
|
|
264
294
|
/**
|
|
@@ -272,13 +302,26 @@ export class AgentSystemLocal {
|
|
|
272
302
|
* what clears it.
|
|
273
303
|
*/
|
|
274
304
|
async delete(ctx, agentId) {
|
|
275
|
-
this.#assertOutsideStorageTransaction(ctx, "archived");
|
|
276
305
|
await this.#admit(async () => {
|
|
277
|
-
await this.#
|
|
306
|
+
await this.#waitForTransition(ctx, agentId);
|
|
307
|
+
const remove = async (lockCtx) => {
|
|
278
308
|
const config = await this.#config(lockCtx, agentId);
|
|
279
|
-
const
|
|
280
|
-
|
|
281
|
-
|
|
309
|
+
const transaction = agentStorageTransaction(lockCtx);
|
|
310
|
+
let provisional;
|
|
311
|
+
if (transaction !== undefined) {
|
|
312
|
+
provisional = this.#transactionAgents.get(transaction);
|
|
313
|
+
if (provisional === undefined) {
|
|
314
|
+
provisional = new Map();
|
|
315
|
+
this.#transactionAgents.set(transaction, provisional);
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
const staged = provisional?.get(agentId);
|
|
319
|
+
const agent = (staged === null || staged === undefined ? undefined : staged.agent) ??
|
|
320
|
+
this.#agents.get(agentId);
|
|
321
|
+
if (transaction === undefined) {
|
|
322
|
+
this.#agents.delete(agentId);
|
|
323
|
+
await agent?.close();
|
|
324
|
+
}
|
|
282
325
|
await this.#configs.transaction(lockCtx, async (_configs, txCtx) => {
|
|
283
326
|
await this.#configs.delete(txCtx, agentId);
|
|
284
327
|
await this.#parents.delete(txCtx, agentId);
|
|
@@ -291,8 +334,29 @@ export class AgentSystemLocal {
|
|
|
291
334
|
await this.#recordLifecycle(txCtx, lifecycleAgent(agentId, config), (hooks) => hooks.agentArchivedTransact, (hooks) => hooks.agentArchived);
|
|
292
335
|
}
|
|
293
336
|
});
|
|
294
|
-
|
|
295
|
-
|
|
337
|
+
provisional?.set(agentId, null);
|
|
338
|
+
if (transaction === undefined) {
|
|
339
|
+
this.#persistences.delete(agentId);
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
afterCommit(lockCtx, () => {
|
|
343
|
+
outsideAgentDatabaseOperation(() => {
|
|
344
|
+
if (this.#agents.get(agentId) === agent)
|
|
345
|
+
this.#agents.delete(agentId);
|
|
346
|
+
this.#beginTransition(agentId, async () => {
|
|
347
|
+
await agent?.close();
|
|
348
|
+
this.#persistences.delete(agentId);
|
|
349
|
+
});
|
|
350
|
+
});
|
|
351
|
+
});
|
|
352
|
+
}
|
|
353
|
+
};
|
|
354
|
+
if (agentStorageTransaction(ctx) !== undefined) {
|
|
355
|
+
await remove(ctx);
|
|
356
|
+
}
|
|
357
|
+
else {
|
|
358
|
+
await this.#lockFor(agentId).runInLock(ctx, remove);
|
|
359
|
+
}
|
|
296
360
|
});
|
|
297
361
|
}
|
|
298
362
|
/**
|
|
@@ -321,6 +385,7 @@ export class AgentSystemLocal {
|
|
|
321
385
|
}
|
|
322
386
|
/** Read one stored configuration while its owning operation is already admitted. */
|
|
323
387
|
async #config(ctx, agentId) {
|
|
388
|
+
await this.#waitForTransition(ctx, agentId);
|
|
324
389
|
const indexed = await this.#configs.read(ctx, agentId);
|
|
325
390
|
if (indexed === undefined)
|
|
326
391
|
return undefined;
|
|
@@ -333,7 +398,6 @@ export class AgentSystemLocal {
|
|
|
333
398
|
}
|
|
334
399
|
/** Shallow-merge fields into one agent's immutable metadata. */
|
|
335
400
|
async updateMetadata(ctx, agentId, update) {
|
|
336
|
-
this.#assertOutsideStorageTransaction(ctx, "updated");
|
|
337
401
|
await this.#admit(async () => {
|
|
338
402
|
const agent = await this.#resolve(ctx, agentId);
|
|
339
403
|
await agent.updateMetadata(ctx, update);
|
|
@@ -370,23 +434,18 @@ export class AgentSystemLocal {
|
|
|
370
434
|
* Concurrent resolutions of the same ID share one load.
|
|
371
435
|
*/
|
|
372
436
|
async resolve(ctx, agentId) {
|
|
373
|
-
this.#assertOutsideStorageTransaction(ctx, "resolved");
|
|
374
437
|
return await this.#admit(async () => await this.#resolve(ctx, agentId));
|
|
375
438
|
}
|
|
376
|
-
/**
|
|
377
|
-
* Creating or removing a live Agent object is a lifetime operation that cannot roll back
|
|
378
|
-
* with an enclosing transaction. Keep those operations outside host-owned transactions;
|
|
379
|
-
* durable storage, module hooks, and message delivery — which loads an idle target without
|
|
380
|
-
* starting it — remain composable.
|
|
381
|
-
*/
|
|
382
|
-
#assertOutsideStorageTransaction(ctx, operation) {
|
|
383
|
-
if (agentStorageTransaction(ctx) !== undefined) {
|
|
384
|
-
throw new Error(`An agent cannot be ${operation} from inside an outer storage transaction.`);
|
|
385
|
-
}
|
|
386
|
-
}
|
|
387
439
|
/** Resolve one agent while its owning public operation is already admitted. */
|
|
388
440
|
async #resolve(ctx, agentId) {
|
|
389
|
-
this.#
|
|
441
|
+
await this.#waitForTransition(ctx, agentId);
|
|
442
|
+
if (agentStorageTransaction(ctx) !== undefined) {
|
|
443
|
+
const config = await this.#config(ctx, agentId);
|
|
444
|
+
if (config === undefined) {
|
|
445
|
+
throw new Error(`Agent "${agentId}" has not been created.`);
|
|
446
|
+
}
|
|
447
|
+
return await this.#transactionAgent(ctx, agentId, config, true);
|
|
448
|
+
}
|
|
390
449
|
const existing = this.#agents.get(agentId);
|
|
391
450
|
if (existing !== undefined)
|
|
392
451
|
return existing;
|
|
@@ -415,7 +474,7 @@ export class AgentSystemLocal {
|
|
|
415
474
|
* Build one agent and put it to work. Called with the agent's lock held, and only for an ID
|
|
416
475
|
* that has no live instance yet.
|
|
417
476
|
*/
|
|
418
|
-
async #instantiate(agentId, config, onlyIfActive = false, start = true, loadCtx, publish = true) {
|
|
477
|
+
async #instantiate(agentId, config, onlyIfActive = false, start = true, loadCtx, publish = true, fresh = false) {
|
|
419
478
|
// An agent outlives whatever asked for it — a restart bringing the collection up, an HTTP
|
|
420
479
|
// request, another agent's tool — so it takes no context from its caller at all and is
|
|
421
480
|
// built on the collection's own. A run loop still running long after the call that started
|
|
@@ -426,7 +485,9 @@ export class AgentSystemLocal {
|
|
|
426
485
|
providers: this.#providers,
|
|
427
486
|
provider: this.#provider,
|
|
428
487
|
persistence: this.#persistenceFor(agentId),
|
|
488
|
+
sendMode: this.#sendMode,
|
|
429
489
|
sharedKV: this.#sharedModuleKV,
|
|
490
|
+
steeringMode: this.#steeringMode,
|
|
430
491
|
// The collection's modules come first, so the instructions they contribute — the
|
|
431
492
|
// system prompt above all — open every agent's prompt.
|
|
432
493
|
modules: this.#runtimes,
|
|
@@ -435,7 +496,9 @@ export class AgentSystemLocal {
|
|
|
435
496
|
// resolves through — so the agent is loaded rather than created, and knows whether it
|
|
436
497
|
// has work left before anything asks it. Bringing a collection up asks only for the
|
|
437
498
|
// agents that do; anything else resolving an agent wants it whether it owes work or not.
|
|
438
|
-
const agent =
|
|
499
|
+
const agent = fresh
|
|
500
|
+
? await Agent.create(agentCtx, options)
|
|
501
|
+
: await Agent.load(agentCtx, options, loadCtx);
|
|
439
502
|
if (onlyIfActive && !agent.active) {
|
|
440
503
|
await agent.close();
|
|
441
504
|
return undefined;
|
|
@@ -575,6 +638,45 @@ export class AgentSystemLocal {
|
|
|
575
638
|
this.#locks.set(agentId, created);
|
|
576
639
|
return created;
|
|
577
640
|
}
|
|
641
|
+
/** Wait for an earlier incarnation of this identity to finish handing off its store. */
|
|
642
|
+
async #waitForTransition(ctx, agentId) {
|
|
643
|
+
const transition = this.#transitions.get(agentId);
|
|
644
|
+
if (transition === undefined)
|
|
645
|
+
return;
|
|
646
|
+
// A transition may itself need the database after an active turn unwinds. Waiting from
|
|
647
|
+
// a transaction would keep that database slot occupied and deadlock the handoff.
|
|
648
|
+
if (agentStorageTransaction(ctx) !== undefined) {
|
|
649
|
+
throw new Error(`Agent "${agentId}" is still finishing deletion and cannot be used by a ` +
|
|
650
|
+
"storage transaction yet.");
|
|
651
|
+
}
|
|
652
|
+
await transition;
|
|
653
|
+
}
|
|
654
|
+
/** Reusing a staged deletion would mix two live incarnations in one transaction. */
|
|
655
|
+
#assertNotDeletedInTransaction(ctx, agentId) {
|
|
656
|
+
const transaction = agentStorageTransaction(ctx);
|
|
657
|
+
if (transaction === undefined)
|
|
658
|
+
return;
|
|
659
|
+
if (this.#transactionAgents.get(transaction)?.get(agentId) !== null)
|
|
660
|
+
return;
|
|
661
|
+
throw new Error(`Agent "${agentId}" cannot be recreated until its deleting transaction commits.`);
|
|
662
|
+
}
|
|
663
|
+
/** Serialize one post-commit identity handoff without keeping the committing database slot. */
|
|
664
|
+
#beginTransition(agentId, work) {
|
|
665
|
+
const previous = this.#transitions.get(agentId);
|
|
666
|
+
const transition = (previous === undefined ? Promise.resolve() : previous)
|
|
667
|
+
.catch(() => undefined)
|
|
668
|
+
.then(work);
|
|
669
|
+
this.#transitions.set(agentId, transition);
|
|
670
|
+
void transition
|
|
671
|
+
.catch((error) => {
|
|
672
|
+
this.#ctx.log.warn(`The transition for agent "${agentId}" failed.`, error);
|
|
673
|
+
})
|
|
674
|
+
.finally(() => {
|
|
675
|
+
if (this.#transitions.get(agentId) === transition) {
|
|
676
|
+
this.#transitions.delete(agentId);
|
|
677
|
+
}
|
|
678
|
+
});
|
|
679
|
+
}
|
|
578
680
|
/** Queue a steered message for an agent. */
|
|
579
681
|
async steer(ctx, agentId, message, options) {
|
|
580
682
|
return await this.#admit(async () => {
|
|
@@ -599,41 +701,61 @@ export class AgentSystemLocal {
|
|
|
599
701
|
const transaction = agentStorageTransaction(ctx);
|
|
600
702
|
if (transaction === undefined)
|
|
601
703
|
return await this.#resolve(ctx, agentId);
|
|
602
|
-
const
|
|
603
|
-
if (
|
|
604
|
-
|
|
704
|
+
const config = await this.#config(ctx, agentId);
|
|
705
|
+
if (config === undefined) {
|
|
706
|
+
throw new Error(`Agent "${agentId}" has not been created.`);
|
|
707
|
+
}
|
|
708
|
+
return await this.#transactionAgent(ctx, agentId, config, false);
|
|
709
|
+
}
|
|
710
|
+
/**
|
|
711
|
+
* Load one transaction-local agent through the carried database facade. Every operation in
|
|
712
|
+
* the same transaction reuses it, and commit publishes it with the strongest requested start
|
|
713
|
+
* behavior; rollback drops the publication callback.
|
|
714
|
+
*/
|
|
715
|
+
async #transactionAgent(ctx, agentId, config, start, fresh = false) {
|
|
716
|
+
const transaction = agentStorageTransaction(ctx);
|
|
717
|
+
if (transaction === undefined) {
|
|
718
|
+
throw new Error("A transaction-local agent requires an agent storage transaction.");
|
|
719
|
+
}
|
|
605
720
|
let provisional = this.#transactionAgents.get(transaction);
|
|
606
721
|
if (provisional === undefined) {
|
|
607
722
|
provisional = new Map();
|
|
608
723
|
this.#transactionAgents.set(transaction, provisional);
|
|
609
724
|
}
|
|
610
725
|
const cached = provisional.get(agentId);
|
|
611
|
-
if (cached !== undefined)
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
726
|
+
if (cached !== undefined && cached !== null) {
|
|
727
|
+
cached.start ||= start;
|
|
728
|
+
return cached.agent;
|
|
729
|
+
}
|
|
730
|
+
if (cached === null) {
|
|
731
|
+
throw new Error(`Agent "${agentId}" cannot be resolved after deletion in the same transaction.`);
|
|
616
732
|
}
|
|
617
|
-
const agent = await this.#instantiate(agentId, config, false, false, ctx, false);
|
|
618
|
-
if (agent === undefined)
|
|
619
|
-
throw new Error(`Agent "${agentId}" could not be built.`);
|
|
620
733
|
const concurrent = this.#agents.get(agentId);
|
|
621
734
|
if (concurrent !== undefined)
|
|
622
735
|
return concurrent;
|
|
623
|
-
|
|
624
|
-
|
|
736
|
+
const agent = await this.#instantiate(agentId, config, false, false, ctx, false, fresh);
|
|
737
|
+
if (agent === undefined)
|
|
738
|
+
throw new Error(`Agent "${agentId}" could not be built.`);
|
|
739
|
+
const entry = { agent, start };
|
|
740
|
+
provisional.set(agentId, entry);
|
|
741
|
+
afterCommit(ctx, () => {
|
|
742
|
+
outsideAgentDatabaseOperation(() => {
|
|
743
|
+
if (provisional.get(agentId) === entry)
|
|
744
|
+
this.#publish(agent, entry.start);
|
|
745
|
+
});
|
|
746
|
+
});
|
|
625
747
|
return agent;
|
|
626
748
|
}
|
|
627
749
|
/** Cancel an agent's active turn, leaving its queued messages durable for the next one. */
|
|
628
|
-
async abort(ctx, agentId
|
|
750
|
+
async abort(ctx, agentId) {
|
|
629
751
|
await this.#admit(async () => {
|
|
630
|
-
await (await this.#resolve(ctx, agentId)).abort(ctx
|
|
752
|
+
await (await this.#resolve(ctx, agentId)).abort(ctx);
|
|
631
753
|
});
|
|
632
754
|
}
|
|
633
755
|
/** Ask an agent for its conversation to be replaced by the provider's summary of it. */
|
|
634
|
-
async compact(ctx, agentId
|
|
756
|
+
async compact(ctx, agentId) {
|
|
635
757
|
await this.#admit(async () => {
|
|
636
|
-
await (await this.#resolve(ctx, agentId)).compact(ctx
|
|
758
|
+
await (await this.#resolve(ctx, agentId)).compact(ctx);
|
|
637
759
|
});
|
|
638
760
|
}
|
|
639
761
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentSystemLocal.js","sourceRoot":"","sources":["../sources/AgentSystemLocal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AgentSystemLocal.js","sourceRoot":"","sources":["../sources/AgentSystemLocal.ts"],"names":[],"mappings":"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"}
|
package/dist/AgentSystemRef.d.ts
CHANGED
|
@@ -16,8 +16,8 @@ import type { AgentCreateOptions, AgentSystem } from "./AgentSystem.js";
|
|
|
16
16
|
* What is missing is missing on purpose. `delete` closes an agent and `start` resumes whole
|
|
17
17
|
* agents; both are the owning caller's business, and both would wait for a loop that may be
|
|
18
18
|
* waiting for the very code asking. Agents come back as `AgentRef` for the same reason — handing
|
|
19
|
-
* out the real `Agent` would hand back `close` and `waitForIdle
|
|
20
|
-
*
|
|
19
|
+
* out the real `Agent` would hand back `close` and `waitForIdle`, both of which wait for the
|
|
20
|
+
* whole agent.
|
|
21
21
|
*
|
|
22
22
|
* A message is the one thing a caller here may be told about, because accepting one is a durable
|
|
23
23
|
* queue write rather than a turn: `steer` and `send` resolve once the message is safely part of
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentSystemRef.d.ts","sourceRoot":"","sources":["../sources/AgentSystemRef.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,
|
|
1
|
+
{"version":3,"file":"AgentSystemRef.d.ts","sourceRoot":"","sources":["../sources/AgentSystemRef.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAExE;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAc,CAAC,QAAQ,SAAS,aAAa,GAAG,aAAa;;IAKtE,oFAAoF;IACpF,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC,wFAAwF;IACxF,YACI,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,EAC7B,OAAO,GAAE,MAAM,GAAG,IAAW,EAC7B,cAAc,CAAC,EAAE,MAAM,EAK1B;IAED,oDAAoD;IACpD,IAAI,MAAM,IAAI,SAAS,UAAU,EAAE,CAElC;IAED,+FAA+F;IACzF,MAAM,CACR,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE,kBAAkB,GAC7B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAI7B;IAED,0FAA0F;IACpF,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAKxE;IAED,uFAAuF;IACjF,MAAM,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAE5E;IAED,+DAA+D;IACzD,cAAc,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxF;IAED,6DAA6D;IACvD,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAEvE;IAED,2DAA2D;IACrD,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAEpE;IAED;;;;OAIG;IACG,KAAK,CACP,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,uBAAuB,GAClC,OAAO,CAAC,sBAAsB,CAAC,CAGjC;IAED;;;;OAIG;IACG,IAAI,CACN,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,kBAAkB,EAC3B,OAAO,CAAC,EAAE,uBAAuB,GAClC,OAAO,CAAC,sBAAsB,CAAC,CAGjC;IAED,mEAAmE;IAC7D,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1D;IAED,2FAA2F;IACrF,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAExD;CAUJ"}
|
package/dist/AgentSystemRef.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AgentRef } from "./AgentRef.js";
|
|
2
2
|
/**
|
|
3
3
|
* A reference to a collection of agents that cannot deadlock, for code that runs inside an agent
|
|
4
4
|
* — a module hook, or a tool the run loop is waiting on. Every operation returns without
|
|
@@ -7,8 +7,8 @@ import { acceptanceIsWaitable, AgentRef } from "./AgentRef.js";
|
|
|
7
7
|
* What is missing is missing on purpose. `delete` closes an agent and `start` resumes whole
|
|
8
8
|
* agents; both are the owning caller's business, and both would wait for a loop that may be
|
|
9
9
|
* waiting for the very code asking. Agents come back as `AgentRef` for the same reason — handing
|
|
10
|
-
* out the real `Agent` would hand back `close` and `waitForIdle
|
|
11
|
-
*
|
|
10
|
+
* out the real `Agent` would hand back `close` and `waitForIdle`, both of which wait for the
|
|
11
|
+
* whole agent.
|
|
12
12
|
*
|
|
13
13
|
* A message is the one thing a caller here may be told about, because accepting one is a durable
|
|
14
14
|
* queue write rather than a turn: `steer` and `send` resolve once the message is safely part of
|
|
@@ -72,10 +72,7 @@ export class AgentSystemRef {
|
|
|
72
72
|
*/
|
|
73
73
|
async steer(ctx, agentId, message, options) {
|
|
74
74
|
this.#assertNotLifecycleTarget(agentId);
|
|
75
|
-
return await this.#system.steer(ctx, agentId, message,
|
|
76
|
-
...options,
|
|
77
|
-
await: acceptanceIsWaitable(ctx, agentId),
|
|
78
|
-
});
|
|
75
|
+
return await this.#system.steer(ctx, agentId, message, options);
|
|
79
76
|
}
|
|
80
77
|
/**
|
|
81
78
|
* Queue a sent message. For another agent this resolves once the message is durably accepted
|
|
@@ -84,10 +81,7 @@ export class AgentSystemRef {
|
|
|
84
81
|
*/
|
|
85
82
|
async send(ctx, agentId, message, options) {
|
|
86
83
|
this.#assertNotLifecycleTarget(agentId);
|
|
87
|
-
return await this.#system.send(ctx, agentId, message,
|
|
88
|
-
...options,
|
|
89
|
-
await: acceptanceIsWaitable(ctx, agentId),
|
|
90
|
-
});
|
|
84
|
+
return await this.#system.send(ctx, agentId, message, options);
|
|
91
85
|
}
|
|
92
86
|
/** Ask an agent to compact, and resolve once it has been asked. */
|
|
93
87
|
async compact(ctx, agentId) {
|