@stratusagent/gateway 0.11.3 → 0.11.4
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 +55 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +199 -15
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -360,15 +360,43 @@ export interface GatewayPluginStatus {
|
|
|
360
360
|
trusted?: boolean;
|
|
361
361
|
tools?: GatewayTool[];
|
|
362
362
|
skills?: GatewaySkill[];
|
|
363
|
+
/** Provider names it registered — what a soul's `provider:` can select. */
|
|
364
|
+
providers?: string[];
|
|
365
|
+
/** Channel kinds it registered, and the agents each carries. */
|
|
366
|
+
channels?: Array<{
|
|
367
|
+
kind: string;
|
|
368
|
+
agents: string[];
|
|
369
|
+
}>;
|
|
370
|
+
/** Memory store names it registered — what `memoryStore` can select. */
|
|
371
|
+
memory?: string[];
|
|
372
|
+
/** Executor names it registered — what `executor` can select. */
|
|
373
|
+
executors?: string[];
|
|
363
374
|
/** Present when the plugin did not load, and the only field that is. */
|
|
364
375
|
error?: string;
|
|
365
376
|
}
|
|
377
|
+
/** One provider a soul's `provider:` can select on this daemon. */
|
|
378
|
+
export interface GatewayProviderStatus {
|
|
379
|
+
/** The name as a soul writes it: `anthropic`, or a plugin's `ollama`. */
|
|
380
|
+
name: string;
|
|
381
|
+
/** The plugin package that registered it; absent for a built-in. */
|
|
382
|
+
package?: string;
|
|
383
|
+
}
|
|
366
384
|
export interface GatewayOptions {
|
|
367
385
|
env?: StateEnvironment;
|
|
368
386
|
/** Gateway-wide provider/model overrides applied beneath per-soul pins. */
|
|
369
387
|
selection?: RuntimeSelection;
|
|
370
388
|
/** Channel adapters to run (Slack, …). Started on start(), stopped on stop(). */
|
|
371
389
|
channels?: GatewayChannelAdapter[];
|
|
390
|
+
/**
|
|
391
|
+
* Which (kind, agent) pairs the host's own adapters carry, so a plugin
|
|
392
|
+
* channel claiming one of them is refused at load rather than started
|
|
393
|
+
* beside it. The Slack adapter the CLI wires reports its agents here;
|
|
394
|
+
* a host that omits this lets a plugin double up on a host adapter.
|
|
395
|
+
*/
|
|
396
|
+
hostChannelClaims?: Array<{
|
|
397
|
+
kind: string;
|
|
398
|
+
agents: readonly string[];
|
|
399
|
+
}>;
|
|
372
400
|
/**
|
|
373
401
|
* The policy, or a factory that builds one from the gateway's approval
|
|
374
402
|
* transport. Pass a factory whenever the policy parks turns on a human
|
|
@@ -404,6 +432,24 @@ export interface GatewayOptions {
|
|
|
404
432
|
* is already understood.
|
|
405
433
|
*/
|
|
406
434
|
plugins?: PluginsConfig;
|
|
435
|
+
/**
|
|
436
|
+
* Which executor runs tool calls, by the name a plugin registered it
|
|
437
|
+
* under (`local`, or absent, is the built-in child-process executor).
|
|
438
|
+
* From a **trusted** config only, like `plugins`: an executor is where
|
|
439
|
+
* an agent's commands run, and a cloned repository swapping a sandbox
|
|
440
|
+
* for the host is the downgrade that rule exists to refuse. A name no
|
|
441
|
+
* loaded plugin registered fails `start()` — a daemon silently running
|
|
442
|
+
* commands on the host when the operator selected a sandbox is worse
|
|
443
|
+
* than one that did not start.
|
|
444
|
+
*/
|
|
445
|
+
executor?: string;
|
|
446
|
+
/**
|
|
447
|
+
* Which store backs agent memory, by registered name (`file`, or absent,
|
|
448
|
+
* is the built-in). Same trust rule and same refusal as `executor`: a
|
|
449
|
+
* daemon writing memories into a store the operator did not select is a
|
|
450
|
+
* daemon whose agents remember into the wrong place.
|
|
451
|
+
*/
|
|
452
|
+
memoryStore?: string;
|
|
407
453
|
/**
|
|
408
454
|
* How plugin packages are resolved and imported.
|
|
409
455
|
*
|
|
@@ -583,6 +629,13 @@ export interface Gateway {
|
|
|
583
629
|
* and an empty list would say the opposite.
|
|
584
630
|
*/
|
|
585
631
|
plugins(): GatewayPluginStatus[];
|
|
632
|
+
/**
|
|
633
|
+
* Every provider a soul's `provider:` can select on this daemon: the
|
|
634
|
+
* built-ins, then what loaded plugins registered, in load order. The
|
|
635
|
+
* registry, not the literal — a surface listing providers reads this so
|
|
636
|
+
* a contributed one is offered where the built-ins are.
|
|
637
|
+
*/
|
|
638
|
+
providers(): GatewayProviderStatus[];
|
|
586
639
|
/**
|
|
587
640
|
* The soul behind each agent in the current roster, built-in included
|
|
588
641
|
* (which has none).
|
|
@@ -699,6 +752,8 @@ export declare const ROLLED_OVER_FROM_METADATA_KEY = "rolledOverFrom";
|
|
|
699
752
|
export declare const ROLLED_OVER_TO_METADATA_KEY = "rolledOverTo";
|
|
700
753
|
/** The segment a rollover mints into the archived transcript's id. */
|
|
701
754
|
export declare const ROLLED_OVER_SESSION_ID_MARKER = ":rolledover:";
|
|
755
|
+
/** Where the session's tool calls ran: `local-command`, or a contributed executor's registered name. */
|
|
756
|
+
export declare const EXECUTOR_METADATA_KEY = "executor";
|
|
702
757
|
export declare const RESERVED_SESSION_METADATA_KEYS: readonly string[];
|
|
703
758
|
/**
|
|
704
759
|
* The first reserved key `metadata` carries, or undefined when it carries
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAUL,QAAQ,EAaR,KAAK,eAAe,EAEpB,KAAK,WAAW,EAChB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,cAAc,EAInB,KAAK,eAAe,EACpB,KAAK,UAAU,EAGf,KAAK,OAAO,EACZ,KAAK,aAAa,EAClB,KAAK,YAAY,EAEjB,KAAK,QAAQ,EACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAgBL,KAAK,UAAU,EAEf,KAAK,cAAc,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAKL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,gBAAgB,EAChB,KAAK,SAAS,GACf,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,GAC7B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAGL,KAAK,kBAAkB,EAExB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAkCL,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAI7B;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,GAAI,MAAK,gBAAqB,KAAG,MACX,CAAC;AAexD;;;;;GAKG;AACH,MAAM,WAAW,yBAAyB;IACxC;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,qBAAa,kBAAmB,YAAW,YAAY;IACrD,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAe;gBAEtB,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,yBAA8B;IA6D/D,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC;IASzE,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IAO7C,IAAI,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3C;;;;OAIG;IACG,eAAe,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAO/D;;;;;;;;;;;;;;;;OAgBG;IACH;;;;;;;OAOG;IACH,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAWvC,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAoBvF;;;;;;OAMG;IACH,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAsB/H,KAAK,IAAI,IAAI;CAGd;AAED;;;;;;;;GAQG;AACH,OAAO,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEzE;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;OAQG;IACH,eAAe,CAAC,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAClE,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;KACtC,CAAC,CAAC;CACJ;AAED;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,qCAAqC;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,QAAQ,EAAE,UAAU,CAAC;IACrB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,+FAA+F;IAC/F,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6GAA6G;IAC7G,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,uGAAuG;IACvG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uHAAuH;IACvH,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,iBAAiB,CAAC;IAC3B;;;;;;;OAOG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACpD;;;;;;OAMG;IACH,YAAY,EAAE;QACZ,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;KACjE,CAAC;CACH;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,CAAC;IAC1D,IAAI,EAAE,QAAQ,CAAC;IACf;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,eAAe,CAAC,CAAC;AAE9F;;;;;;;;;GASG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,UAAU,CAAA;KAAE,CAAC;IAC1D,IAAI,EAAE,QAAQ,CAAC;IACf,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yEAAyE;IACzE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,mEAAmE;IACnE,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2DAA2D;IAC3D,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,eAAe,CAAC;CACtC;AAED,qEAAqE;AACrE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,QAAQ,CAAC;IACf,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,8EAA8E;AAC9E,MAAM,WAAW,YAAY;IAC3B,8FAA8F;IAC9F,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,iFAAiF;IACjF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oFAAoF;IACpF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,4EAA4E;AAC5E,eAAO,MAAM,qBAAqB,wCAAwC,CAAC;AAE3E;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,QAAS,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wEAAwE;AACxE,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,8DAA8D;IAC9D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,yEAAyE;AACzE,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;;;;;;;OASG;IACH,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;;CAQjD;AAED,mEAAmE;AACnE,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,MAAM,CAAC,EAAE,YAAY,EAAE,CAAC;IACxB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,gEAAgE;IAChE,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACrD,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,wEAAwE;IACxE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,mEAAmE;AACnE,MAAM,WAAW,qBAAqB;IACpC,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,oEAAoE;IACpE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,2EAA2E;IAC3E,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,iFAAiF;IACjF,QAAQ,CAAC,EAAE,qBAAqB,EAAE,CAAC;IACnC;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACvE;;;;;OAKG;IACH,SAAS,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,SAAS,EAAE,iBAAiB,KAAK,cAAc,CAAC,CAAC;IAChF;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,6DAA6D;IAC7D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;OAIG;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB;;;;;;;;;OASG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9D,oFAAoF;IACpF,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,mFAAmF;IACnF,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;;;;;OAQG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,UAAU,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACvB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,qFAAqF;IACrF,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;IAC3D,mEAAmE;IACnE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IACvB,kEAAkE;IAClE,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,kDAAkD;IAClD,MAAM,IAAI,eAAe,EAAE,CAAC;IAC5B;;;;;OAKG;IACH,YAAY,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAC3C;;;;;;;;;;;;;;;OAeG;IACH,YAAY,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACxC;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,aAAa,CAAC;IACjD;;;;;OAKG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACpD,4DAA4D;IAC5D,gBAAgB,IAAI,eAAe,EAAE,CAAC;IACtC;;;;;OAKG;IACH,SAAS,IAAI,cAAc,EAAE,CAAC;IAC9B;;;;OAIG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C;;;;;;;;;OASG;IACH,KAAK,IAAI,WAAW,EAAE,CAAC;IACvB;;;;OAIG;IACH,MAAM,IAAI,YAAY,EAAE,CAAC;IACzB;;;;OAIG;IACH,OAAO,IAAI,mBAAmB,EAAE,CAAC;IACjC;;;;;OAKG;IACH,SAAS,IAAI,qBAAqB,EAAE,CAAC;IACrC;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,WAAW,IAAI,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC,CAAC;IACjE;;;;;;;OAOG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IACvE;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvF;;;;;;OAMG;IACH,eAAe,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC;CACvD;AAUD;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,oGACkE,CAAC;AAEpG;;;;;;;;;;;GAWG;AACH;;;;;;;;;;;;;;GAcG;AACH;;;;GAIG;AACH,eAAO,MAAM,6BAA6B,mBAAmB,CAAC;AAC9D,eAAO,MAAM,2BAA2B,iBAAiB,CAAC;AAC1D,sEAAsE;AACtE,eAAO,MAAM,6BAA6B,iBAAiB,CAAC;AAE5D,wGAAwG;AACxG,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,eAAO,MAAM,8BAA8B,EAAE,SAAS,MAAM,EAkB3D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GAAI,UAAU,UAAU,GAAG,SAAS,KAAG,MAAM,GAAG,SAGgB,CAAC;AAExG,eAAO,MAAM,yBAAyB,gJACyG,CAAC;AAEhJ;;;;;GAKG;AACH,eAAO,MAAM,aAAa,GAAI,UAAS,cAAmB,KAAG,OAw/E5D,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -10,14 +10,14 @@ import { createHash, randomUUID } from 'node:crypto';
|
|
|
10
10
|
import { chmodSync, mkdirSync } from 'node:fs';
|
|
11
11
|
import path from 'node:path';
|
|
12
12
|
import { DatabaseSync } from 'node:sqlite';
|
|
13
|
-
import { filePathsOf, isUnaddressedTurn, abortErrorFor, AgentRegistry, AgentRunner, EventBus, RunAbortedError, SkillRegistry, ToolRegistry, createSkillReadTool, missingSkillRequirements, describeToolAllowlistFinding, unmatchedToolAllowlist, PENDING_APPROVAL_METADATA_KEY, SESSION_TAINTED_BY_METADATA_KEY, SESSION_TRUST_METADATA_KEY, latestTurnReply, readPendingApproval, } from '@stratusagent/core';
|
|
13
|
+
import { filePathsOf, isUnaddressedTurn, abortErrorFor, AgentRegistry, AgentRunner, ChannelRegistry, ContributionRegistry, createRoutedMemoryStore, EventBus, RunAbortedError, SkillRegistry, ToolRegistry, createSkillReadTool, missingSkillRequirements, describeToolAllowlistFinding, unmatchedToolAllowlist, PENDING_APPROVAL_METADATA_KEY, SESSION_TAINTED_BY_METADATA_KEY, SESSION_TRUST_METADATA_KEY, latestTurnReply, readPendingApproval, } from '@stratusagent/core';
|
|
14
14
|
import { createDelegateTool, createForgetTool, createMessageSendTool, createRecallTool, createRememberTool, createScheduleTools, DELEGATED_BY_METADATA_KEY, DELEGATION_DEPTH_METADATA_KEY, delegatingSessionIdOf, isDelegatedSession, outstandingDelegationFor, ROOT_SESSION_ID_METADATA_KEY, SCHEDULE_ID_METADATA_KEY, SCHEDULED_TURN_METADATA_KEY, withoutDelegation, } from '@stratusagent/agents';
|
|
15
15
|
import { createSchedulerRuntime, isScheduleSessionId, SqliteScheduleStore, SCHEDULE_SESSION_ID_PREFIX, } from "./schedules.js";
|
|
16
16
|
export { claimHome, homeLockPath, HomeClaimedError, } from "./lock.js";
|
|
17
17
|
export { SqliteScheduleStore, createSchedulerRuntime, isScheduleSessionId, SCHEDULE_SESSION_ID_PREFIX, } from "./schedules.js";
|
|
18
18
|
import { createLocalCommandExecutor } from '@stratusagent/executor-local';
|
|
19
19
|
import { loadPlugins, } from '@stratusagent/plugins';
|
|
20
|
-
import { createDemoTool, createFileCredentialResolver, createFileMemoryStore, createRuntimeProvider, DEFAULT_STRATUS_AGENT, loadOperatorSkills, loadRosterSouls, FALLBACK_ACTIVE_METADATA_KEY, loadSoulFile, memoryFilePath, migrateLegacyMemory, PROVIDER_STATE_METADATA_KEYS, ConfigFileError, loadConfigFile, resolveConfigLocation, resolveConfiguredSoul, resolveRuntimeConfig, applySoulPins, assertStateCompatible, stratusHomePath, workspacesDirPath, withLegacyDefaultMemories, } from '@stratusagent/state';
|
|
20
|
+
import { BUILTIN_EXECUTOR_NAME, BUILTIN_MEMORY_STORE_NAME, BUILTIN_PROVIDER_NAMES, createDemoTool, createFileCredentialResolver, createFileMemoryStore, createRuntimeProvider, DEFAULT_STRATUS_AGENT, isRegisteredProviderName, loadChannelTransportSecrets, registeredProviderNameOf, loadOperatorSkills, loadRosterSouls, FALLBACK_ACTIVE_METADATA_KEY, loadSoulFile, memoryFilePath, migrateLegacyMemory, PROVIDER_STATE_METADATA_KEYS, ConfigFileError, loadConfigFile, resolveConfigLocation, resolveConfiguredSoul, resolveRuntimeConfig, applySoulPins, assertStateCompatible, stratusHomePath, workspacesDirPath, withLegacyDefaultMemories, } from '@stratusagent/state';
|
|
21
21
|
const SESSIONS_DB_FILENAME = 'sessions.db';
|
|
22
22
|
/**
|
|
23
23
|
* Where a daemon with no explicit `sessionDbPath` keeps its database — the
|
|
@@ -288,6 +288,8 @@ export const ROLLED_OVER_FROM_METADATA_KEY = 'rolledOverFrom';
|
|
|
288
288
|
export const ROLLED_OVER_TO_METADATA_KEY = 'rolledOverTo';
|
|
289
289
|
/** The segment a rollover mints into the archived transcript's id. */
|
|
290
290
|
export const ROLLED_OVER_SESSION_ID_MARKER = ':rolledover:';
|
|
291
|
+
/** Where the session's tool calls ran: `local-command`, or a contributed executor's registered name. */
|
|
292
|
+
export const EXECUTOR_METADATA_KEY = 'executor';
|
|
291
293
|
export const RESERVED_SESSION_METADATA_KEYS = [
|
|
292
294
|
PENDING_APPROVAL_METADATA_KEY,
|
|
293
295
|
FALLBACK_ACTIVE_METADATA_KEY,
|
|
@@ -302,6 +304,10 @@ export const RESERVED_SESSION_METADATA_KEYS = [
|
|
|
302
304
|
SESSION_TAINTED_BY_METADATA_KEY,
|
|
303
305
|
ROLLED_OVER_FROM_METADATA_KEY,
|
|
304
306
|
ROLLED_OVER_TO_METADATA_KEY,
|
|
307
|
+
// Which executor ran the turn's tool calls is the daemon's record of
|
|
308
|
+
// where a command ran, and the one audit question a caller must not be
|
|
309
|
+
// able to answer for it.
|
|
310
|
+
EXECUTOR_METADATA_KEY,
|
|
305
311
|
];
|
|
306
312
|
/**
|
|
307
313
|
* The first reserved key `metadata` carries, or undefined when it carries
|
|
@@ -333,7 +339,27 @@ export const createGateway = (options = {}) => {
|
|
|
333
339
|
const store = options.sessionDbPath
|
|
334
340
|
? new SqliteSessionStore(sessionDbPath)
|
|
335
341
|
: new SqliteSessionStore(sessionDbPath, { ownedDirectory: true });
|
|
336
|
-
|
|
342
|
+
// The built-in store, behind a route that can change its mind: the memory
|
|
343
|
+
// tools and every runner are built before a plugin has loaded, so the
|
|
344
|
+
// store they hold is the one that answers *per call* with whichever was
|
|
345
|
+
// selected once the plugins are up. Per call, not per start, is also
|
|
346
|
+
// what keeps a contributed store per-agent-resolvable rather than
|
|
347
|
+
// process-global.
|
|
348
|
+
const fileMemory = withLegacyDefaultMemories(createFileMemoryStore(memoryFilePath(env)));
|
|
349
|
+
let selectedMemory = fileMemory;
|
|
350
|
+
const memory = createRoutedMemoryStore(() => selectedMemory);
|
|
351
|
+
let selectedExecutor;
|
|
352
|
+
// What loaded plugins contributed besides tools and skills. The loader
|
|
353
|
+
// commits into these; the gateway reads them by name — a provider when a
|
|
354
|
+
// runner is built, the executor and memory store once at start, the
|
|
355
|
+
// channels when serving begins.
|
|
356
|
+
const providerContributions = new ContributionRegistry();
|
|
357
|
+
const channelContributions = new ChannelRegistry();
|
|
358
|
+
for (const claim of options.hostChannelClaims ?? []) {
|
|
359
|
+
channelContributions.claim(claim.kind, claim.agents);
|
|
360
|
+
}
|
|
361
|
+
const memoryContributions = new ContributionRegistry();
|
|
362
|
+
const executorContributions = new ContributionRegistry();
|
|
337
363
|
// ---- schedules ----------------------------------------------------------
|
|
338
364
|
// The same database sessions live in — one file to back up — through the
|
|
339
365
|
// schedule store's own connection (see its docs for why).
|
|
@@ -346,7 +372,31 @@ export const createGateway = (options = {}) => {
|
|
|
346
372
|
* both callers (schedule creation, `message.send`) hear why.
|
|
347
373
|
*/
|
|
348
374
|
const outboundFor = async (agentId, destination) => {
|
|
349
|
-
const
|
|
375
|
+
const candidates = startedChannels.filter((candidate) => candidate.name === destination.channel && candidate.resolveOutbound);
|
|
376
|
+
// One kind may be served by several adapters carrying disjoint
|
|
377
|
+
// agents — two plugins, or the host's adapter beside a plugin's — and
|
|
378
|
+
// the one that speaks for this agent is the one whose claims include
|
|
379
|
+
// it: a contribution's agent list, or the host's declared claims for
|
|
380
|
+
// an adapter no plugin contributed. A host that declared no claims for
|
|
381
|
+
// the kind left its adapter unclaimed, and an unclaimed adapter speaks
|
|
382
|
+
// for anyone, as the single host adapter always did. A claim miss is
|
|
383
|
+
// a refusal, never the first adapter that happens to be running: that
|
|
384
|
+
// adapter posts under another agent's transport identity, and it is
|
|
385
|
+
// exactly what a failed start of the right adapter would leave behind.
|
|
386
|
+
const contributed = channelContributions.list();
|
|
387
|
+
const hostClaims = (options.hostChannelClaims ?? []).filter((claim) => claim.kind === destination.channel);
|
|
388
|
+
const carries = (candidate) => {
|
|
389
|
+
const entry = contributed.find((contribution) => contribution.adapter === candidate);
|
|
390
|
+
if (entry) {
|
|
391
|
+
return entry.agents.includes(agentId);
|
|
392
|
+
}
|
|
393
|
+
return hostClaims.length === 0 || hostClaims.some((claim) => claim.agents.includes(agentId));
|
|
394
|
+
};
|
|
395
|
+
const adapter = candidates.find(carries);
|
|
396
|
+
if (!adapter?.resolveOutbound && candidates.length > 0) {
|
|
397
|
+
throw new Error(`No running '${destination.channel}' channel carries agent ${agentId} — `
|
|
398
|
+
+ `the running ${destination.channel} adapters carry other agents, so a message from ${agentId} has no transport identity to post under.`);
|
|
399
|
+
}
|
|
350
400
|
if (!adapter?.resolveOutbound) {
|
|
351
401
|
throw new Error(`No running channel can deliver to '${destination.channel}' destinations — `
|
|
352
402
|
+ (startedChannels.length === 0
|
|
@@ -666,9 +716,27 @@ export const createGateway = (options = {}) => {
|
|
|
666
716
|
* built-in definition.
|
|
667
717
|
*/
|
|
668
718
|
let lastDefaultAgentId;
|
|
719
|
+
/**
|
|
720
|
+
* What the last default resolution read, for the roster load to judge
|
|
721
|
+
* — the soul is re-read on every resolution, so a `tools:` key removed
|
|
722
|
+
* after startup is seen here, where the registered source would still
|
|
723
|
+
* carry the old definition until the next dispatch refreshes it.
|
|
724
|
+
*/
|
|
725
|
+
let lastDefaultResolved;
|
|
669
726
|
// The last successfully loaded config snapshot, serving dispatches while
|
|
670
727
|
// the file on disk is temporarily broken (an operator mid-edit).
|
|
671
728
|
let lastGoodConfigSnapshot;
|
|
729
|
+
/**
|
|
730
|
+
* Said at load, because the allowlist fails open: `tools` omitted is
|
|
731
|
+
* every registered tool, the opposite of what `skills` and `credentials`
|
|
732
|
+
* do when omitted, and a soul that never wrote the key holds `shell.run`
|
|
733
|
+
* the moment that plugin is enabled. The built-in agent is exempt — it
|
|
734
|
+
* has no file to add the key to.
|
|
735
|
+
*/
|
|
736
|
+
const warnNoToolsList = (agentId, soulPath) => {
|
|
737
|
+
warn(`agent ${agentId} has no tools: list, so it may call every tool this daemon loads — `
|
|
738
|
+
+ `add tools: [...] to ${soulPath} to say which`);
|
|
739
|
+
};
|
|
672
740
|
const defaultAgentId = async () => {
|
|
673
741
|
// Identity only — never full runtime resolution: credential checks do
|
|
674
742
|
// not belong here, or a daemon default provider without installed keys
|
|
@@ -691,8 +759,10 @@ export const createGateway = (options = {}) => {
|
|
|
691
759
|
// now the cached answer too, so a later transient read failure
|
|
692
760
|
// cannot resurrect the retired soul's identity.
|
|
693
761
|
lastDefaultAgentId = DEFAULT_STRATUS_AGENT.id;
|
|
762
|
+
lastDefaultResolved = undefined;
|
|
694
763
|
return DEFAULT_STRATUS_AGENT.id;
|
|
695
764
|
}
|
|
765
|
+
lastDefaultResolved = resolved;
|
|
696
766
|
const id = resolved.soul.agent.id;
|
|
697
767
|
// The normal setup layout has the default soul in ~/.stratus/agents
|
|
698
768
|
// too: keep the roster registration — its soulPath drives per-dispatch
|
|
@@ -739,6 +809,9 @@ export const createGateway = (options = {}) => {
|
|
|
739
809
|
// no correct winner, and refusing to serve beats letting sort order
|
|
740
810
|
// decide whose sessions, memory, and credentials an agent inherits.
|
|
741
811
|
const entries = await loadRosterSouls(env, warn);
|
|
812
|
+
// Which souls this pass named for having no tools: list, so the
|
|
813
|
+
// configured default is not named twice when it is one of them.
|
|
814
|
+
const namedThisPass = new Set();
|
|
742
815
|
for (const entry of entries) {
|
|
743
816
|
// Against ids claimed by THIS pass, not by any earlier one: a reload
|
|
744
817
|
// must be free to re-register the agent it just re-read, and only the
|
|
@@ -752,12 +825,28 @@ export const createGateway = (options = {}) => {
|
|
|
752
825
|
continue;
|
|
753
826
|
}
|
|
754
827
|
registerFresh({ definition: entry.soul.agent, soulPath: entry.path, soul: entry.soul });
|
|
828
|
+
if (entry.soul.agent.tools === undefined) {
|
|
829
|
+
warnNoToolsList(entry.soul.agent.id, entry.path);
|
|
830
|
+
namedThisPass.add(entry.path);
|
|
831
|
+
}
|
|
755
832
|
}
|
|
756
833
|
// The configured default soul is part of the roster too — it is what
|
|
757
834
|
// an agentId-less dispatch answers as. It may live outside the agents
|
|
758
835
|
// directory, and it survives a read failure by name, so what it
|
|
759
836
|
// resolves to is kept whether or not this pass re-registered it.
|
|
760
|
-
|
|
837
|
+
const defaultId = await defaultAgentId();
|
|
838
|
+
seen.add(defaultId);
|
|
839
|
+
// The same notice for a default soul that lives outside the agents
|
|
840
|
+
// directory — the one path into the roster that skips the loop above
|
|
841
|
+
// — on every load, judged on what the resolution just read rather
|
|
842
|
+
// than on the registered source, so a key removed after startup is
|
|
843
|
+
// reported at the next reload. A roster-backed default was named by
|
|
844
|
+
// the loop, and is not named twice.
|
|
845
|
+
if (lastDefaultResolved !== undefined
|
|
846
|
+
&& lastDefaultResolved.soul.agent.tools === undefined
|
|
847
|
+
&& !namedThisPass.has(lastDefaultResolved.path)) {
|
|
848
|
+
warnNoToolsList(defaultId, lastDefaultResolved.path);
|
|
849
|
+
}
|
|
761
850
|
for (const id of [...sources.keys()]) {
|
|
762
851
|
if (!seen.has(id)) {
|
|
763
852
|
sources.delete(id);
|
|
@@ -995,11 +1084,14 @@ export const createGateway = (options = {}) => {
|
|
|
995
1084
|
// The sticky-fallback switch is durable the moment it happens, not
|
|
996
1085
|
// when the turn's next save lands — a daemon killed mid-fallback
|
|
997
1086
|
// must not retry the primary on restart.
|
|
998
|
-
(session) => store.save(session));
|
|
1087
|
+
(session) => store.save(session), providerContributions);
|
|
999
1088
|
const runner = new AgentRunner({
|
|
1000
1089
|
provider,
|
|
1001
1090
|
tools,
|
|
1002
|
-
|
|
1091
|
+
// Runners are built on dispatch, after the plugins loaded and the
|
|
1092
|
+
// selection below ran, so a contributed executor is in place for
|
|
1093
|
+
// the first turn.
|
|
1094
|
+
executor: selectedExecutor ?? createLocalCommandExecutor(),
|
|
1003
1095
|
...(approvals ? { approvals } : {}),
|
|
1004
1096
|
store,
|
|
1005
1097
|
bus,
|
|
@@ -1055,13 +1147,23 @@ export const createGateway = (options = {}) => {
|
|
|
1055
1147
|
// ten-minute timer instead of the idle timeout the operator set.
|
|
1056
1148
|
(fallback.provider === 'anthropic' && Boolean(fallback.apiKey || fallback.authToken))
|
|
1057
1149
|
// The codex harness streams item snapshots in every auth mode.
|
|
1058
|
-
|| fallback.provider === 'codex'
|
|
1150
|
+
|| fallback.provider === 'codex'
|
|
1151
|
+
// A contributed fallback says for itself, exactly as a contributed
|
|
1152
|
+
// primary does below; a session that switched to one must not lose
|
|
1153
|
+
// the watchdog the plugin declared it could have.
|
|
1154
|
+
|| (isRegisteredProviderName(fallback.provider)
|
|
1155
|
+
&& providerContributions.get(registeredProviderNameOf(fallback.provider))?.streams === true);
|
|
1059
1156
|
const streamsDeltas = (config) =>
|
|
1060
1157
|
// Both Anthropic modes stream now: an API key through the Messages
|
|
1061
1158
|
// API, a subscription token through the Agent SDK's partial messages —
|
|
1062
|
-
// and the codex harness streams item snapshots in every auth mode.
|
|
1159
|
+
// and the codex harness streams item snapshots in every auth mode. A
|
|
1160
|
+
// contributed provider says for itself, and one that did not say is
|
|
1161
|
+
// read as not streaming: a watchdog armed over a silent-until-done
|
|
1162
|
+
// call would abort every long turn.
|
|
1063
1163
|
(config.provider === 'anthropic' && Boolean(config.apiKey || config.authToken))
|
|
1064
|
-
|| config.provider === 'codex'
|
|
1164
|
+
|| config.provider === 'codex'
|
|
1165
|
+
|| (isRegisteredProviderName(config.provider)
|
|
1166
|
+
&& providerContributions.get(registeredProviderNameOf(config.provider))?.streams === true);
|
|
1065
1167
|
/**
|
|
1066
1168
|
* Progress-based abort, armed only while the turn is actually awaiting a
|
|
1067
1169
|
* streaming provider — the one phase where silence means a stall. Tool
|
|
@@ -1388,11 +1490,21 @@ export const createGateway = (options = {}) => {
|
|
|
1388
1490
|
}
|
|
1389
1491
|
const config = await runtimeForAgent(source);
|
|
1390
1492
|
const runner = runnerFor(config);
|
|
1493
|
+
// Which executor the turn's tool calls run through — the built-in
|
|
1494
|
+
// under the name `stratus run` has always recorded, a contributed one
|
|
1495
|
+
// under its registered name — so a transcript says where a command
|
|
1496
|
+
// ran, not only which model asked for it.
|
|
1497
|
+
const executorRecord = selectedExecutor && options.executor !== undefined ? options.executor : 'local-command';
|
|
1391
1498
|
const metadata = {
|
|
1392
|
-
|
|
1393
|
-
|
|
1394
|
-
|
|
1499
|
+
provider: config.provider,
|
|
1500
|
+
// A contributed provider may leave the model to its own default, in
|
|
1501
|
+
// which case there is none to record.
|
|
1502
|
+
...(config.provider !== 'demo' && config.model !== undefined ? { model: config.model } : {}),
|
|
1395
1503
|
...input.metadata,
|
|
1504
|
+
// After the caller's metadata, and reserved besides: a dispatch that
|
|
1505
|
+
// could write it could make a transcript claim a sandbox ran what
|
|
1506
|
+
// the host ran.
|
|
1507
|
+
[EXECUTOR_METADATA_KEY]: executorRecord,
|
|
1396
1508
|
};
|
|
1397
1509
|
if (existing && existing.agent.id !== agent.id) {
|
|
1398
1510
|
throw new Error(`Session ${input.sessionId} belongs to agent ${existing.agent.id}, not ${agent.id} — sessions never cross agent identities.`);
|
|
@@ -1424,6 +1536,13 @@ export const createGateway = (options = {}) => {
|
|
|
1424
1536
|
if (isDelegatedSession(existing) && existing.metadata) {
|
|
1425
1537
|
existing.metadata = withoutDelegation(existing.metadata);
|
|
1426
1538
|
}
|
|
1539
|
+
// The executor record follows the daemon, not the session's first
|
|
1540
|
+
// turn: a restart that selected another executor runs this turn's
|
|
1541
|
+
// commands there, and a session from before the record existed
|
|
1542
|
+
// gets one now rather than never.
|
|
1543
|
+
if (existing.metadata?.[EXECUTOR_METADATA_KEY] !== executorRecord) {
|
|
1544
|
+
existing.metadata = { ...existing.metadata, [EXECUTOR_METADATA_KEY]: executorRecord };
|
|
1545
|
+
}
|
|
1427
1546
|
await store.save(existing);
|
|
1428
1547
|
// The turn's metadata rides along for the sender's trust: without
|
|
1429
1548
|
// it a resumed turn has no way to say who sent it, and a stranger
|
|
@@ -1853,6 +1972,15 @@ export const createGateway = (options = {}) => {
|
|
|
1853
1972
|
tools,
|
|
1854
1973
|
skills: skillCatalog,
|
|
1855
1974
|
bus,
|
|
1975
|
+
providers: providerContributions,
|
|
1976
|
+
channels: channelContributions,
|
|
1977
|
+
memory: memoryContributions,
|
|
1978
|
+
executors: executorContributions,
|
|
1979
|
+
// The host-owned path for a channel's transport secrets: the same
|
|
1980
|
+
// `channels.<kind>.<agentId>` namespace Slack's tokens live in, read
|
|
1981
|
+
// for the kind the plugin declared, and never through the
|
|
1982
|
+
// agent-scoped resolver below.
|
|
1983
|
+
channelSecrets: (kind) => loadChannelTransportSecrets(env, kind),
|
|
1856
1984
|
// The file-backed resolver, so a plugin needing a key reaches the
|
|
1857
1985
|
// *calling* agent's — its allowlist checked, its own entry before the
|
|
1858
1986
|
// fleet's shared one.
|
|
@@ -1870,6 +1998,10 @@ export const createGateway = (options = {}) => {
|
|
|
1870
1998
|
const contributed = [
|
|
1871
1999
|
...plugin.tools.map((tool) => `${tool.name} (${tool.risk})`),
|
|
1872
2000
|
...plugin.skills.map((skill) => `skill ${skill.id}`),
|
|
2001
|
+
...plugin.contributions.providers.map((name) => `provider ${name}`),
|
|
2002
|
+
...plugin.contributions.channels.map((channel) => `channel ${channel.kind} for ${channel.agents.join(', ') || 'no agent'}`),
|
|
2003
|
+
...plugin.contributions.memory.map((name) => `memory store ${name}`),
|
|
2004
|
+
...plugin.contributions.executors.map((name) => `executor ${name}`),
|
|
1873
2005
|
];
|
|
1874
2006
|
log(`plugin ${plugin.package} loaded — ${contributed.join(', ') || 'no tools'}`);
|
|
1875
2007
|
}
|
|
@@ -1877,6 +2009,43 @@ export const createGateway = (options = {}) => {
|
|
|
1877
2009
|
warn(`plugin ${failure.package} did not load: ${failure.reason}`);
|
|
1878
2010
|
}
|
|
1879
2011
|
};
|
|
2012
|
+
/**
|
|
2013
|
+
* Which package registered a name, for the log line and the refusal.
|
|
2014
|
+
* From the load records rather than a second map: they are the record.
|
|
2015
|
+
*/
|
|
2016
|
+
const contributorOf = (kind, name) => loadedPlugins.find((plugin) => plugin.contributions[kind].includes(name))?.package;
|
|
2017
|
+
/**
|
|
2018
|
+
* Put the operator's executor and memory-store selections into effect,
|
|
2019
|
+
* or refuse to start. Refuse, not warn: the built-in executor runs
|
|
2020
|
+
* commands on this host, and an operator who selected a sandbox that
|
|
2021
|
+
* failed to load must not find their agents on the host anyway; a
|
|
2022
|
+
* memory store the same, one write later. A name no plugin registered
|
|
2023
|
+
* is named with what is, so a typo reads as one.
|
|
2024
|
+
*/
|
|
2025
|
+
const applyContributionSelections = () => {
|
|
2026
|
+
const executorName = options.executor;
|
|
2027
|
+
if (executorName !== undefined && executorName !== BUILTIN_EXECUTOR_NAME) {
|
|
2028
|
+
const contribution = executorContributions.get(executorName);
|
|
2029
|
+
if (!contribution) {
|
|
2030
|
+
throw new Error(`The config selects executor ${executorName}, which no loaded plugin registers`
|
|
2031
|
+
+ (executorContributions.names().length > 0 ? ` (registered: ${executorContributions.names().join(', ')})` : '')
|
|
2032
|
+
+ `. Enable the plugin that contributes it, or set executor to ${BUILTIN_EXECUTOR_NAME}.`);
|
|
2033
|
+
}
|
|
2034
|
+
selectedExecutor = contribution.executor;
|
|
2035
|
+
log(`executor ${executorName} selected, from ${contributorOf('executors', executorName) ?? 'a plugin'}`);
|
|
2036
|
+
}
|
|
2037
|
+
const memoryName = options.memoryStore;
|
|
2038
|
+
if (memoryName !== undefined && memoryName !== BUILTIN_MEMORY_STORE_NAME) {
|
|
2039
|
+
const contribution = memoryContributions.get(memoryName);
|
|
2040
|
+
if (!contribution) {
|
|
2041
|
+
throw new Error(`The config selects memoryStore ${memoryName}, which no loaded plugin registers`
|
|
2042
|
+
+ (memoryContributions.names().length > 0 ? ` (registered: ${memoryContributions.names().join(', ')})` : '')
|
|
2043
|
+
+ `. Enable the plugin that contributes it, or set memoryStore to ${BUILTIN_MEMORY_STORE_NAME}.`);
|
|
2044
|
+
}
|
|
2045
|
+
selectedMemory = contribution.store;
|
|
2046
|
+
log(`memory store ${memoryName} selected, from ${contributorOf('memory', memoryName) ?? 'a plugin'}`);
|
|
2047
|
+
}
|
|
2048
|
+
};
|
|
1880
2049
|
/**
|
|
1881
2050
|
* Load the operator's `~/.stratus/skills/` into the catalog. Before the
|
|
1882
2051
|
* plugins, deliberately: an operator's bare id outranks a plugin's bare
|
|
@@ -1921,8 +2090,14 @@ export const createGateway = (options = {}) => {
|
|
|
1921
2090
|
const orphaned = await listOrphanedDelegations();
|
|
1922
2091
|
// Channels come up after the roster so their first inbound message
|
|
1923
2092
|
// already has agents to dispatch to. One failing adapter must not
|
|
1924
|
-
// keep the rest (or the gateway) down.
|
|
1925
|
-
|
|
2093
|
+
// keep the rest (or the gateway) down. The host's adapters first, then
|
|
2094
|
+
// the plugins' in load order — the `plugins` block's order, which is
|
|
2095
|
+
// the one an operator can read.
|
|
2096
|
+
const adapters = [
|
|
2097
|
+
...(options.channels ?? []),
|
|
2098
|
+
...channelContributions.list().map((contribution) => contribution.adapter),
|
|
2099
|
+
];
|
|
2100
|
+
for (const adapter of adapters) {
|
|
1926
2101
|
try {
|
|
1927
2102
|
await adapter.start(gateway);
|
|
1928
2103
|
startedChannels.push(adapter);
|
|
@@ -2146,6 +2321,7 @@ export const createGateway = (options = {}) => {
|
|
|
2146
2321
|
// startSkills).
|
|
2147
2322
|
await startSkills();
|
|
2148
2323
|
await startPlugins();
|
|
2324
|
+
applyContributionSelections();
|
|
2149
2325
|
await startServing();
|
|
2150
2326
|
}
|
|
2151
2327
|
catch (error) {
|
|
@@ -2455,6 +2631,10 @@ export const createGateway = (options = {}) => {
|
|
|
2455
2631
|
path: skill.path,
|
|
2456
2632
|
};
|
|
2457
2633
|
}),
|
|
2634
|
+
providers: plugin.contributions.providers,
|
|
2635
|
+
channels: plugin.contributions.channels,
|
|
2636
|
+
memory: plugin.contributions.memory,
|
|
2637
|
+
executors: plugin.contributions.executors,
|
|
2458
2638
|
}));
|
|
2459
2639
|
const failed = pluginFailures.map((failure) => ({
|
|
2460
2640
|
package: failure.package,
|
|
@@ -2462,6 +2642,10 @@ export const createGateway = (options = {}) => {
|
|
|
2462
2642
|
}));
|
|
2463
2643
|
return [...loaded, ...failed];
|
|
2464
2644
|
},
|
|
2645
|
+
providers() {
|
|
2646
|
+
const contributed = loadedPlugins.flatMap((plugin) => plugin.contributions.providers.map((name) => ({ name, package: plugin.package })));
|
|
2647
|
+
return [...BUILTIN_PROVIDER_NAMES.map((name) => ({ name })), ...contributed];
|
|
2648
|
+
},
|
|
2465
2649
|
async servedSouls() {
|
|
2466
2650
|
// From the registry rather than `sources` directly, so the order and
|
|
2467
2651
|
// the membership are the roster's own — one entry per agent `agents()`
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stratusagent/gateway",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -18,16 +18,16 @@
|
|
|
18
18
|
"node": ">=22.13 <23 || >=23.4"
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@stratusagent/
|
|
22
|
-
"@stratusagent/
|
|
23
|
-
"@stratusagent/
|
|
24
|
-
"@stratusagent/
|
|
25
|
-
"@stratusagent/state": "0.11.
|
|
21
|
+
"@stratusagent/core": "0.11.4",
|
|
22
|
+
"@stratusagent/agents": "0.11.4",
|
|
23
|
+
"@stratusagent/plugins": "0.11.4",
|
|
24
|
+
"@stratusagent/executor-local": "0.11.4",
|
|
25
|
+
"@stratusagent/state": "0.11.4"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"@types/node": "^24.6.0",
|
|
29
29
|
"typescript": "^5.9.3",
|
|
30
|
-
"@stratusagent/permissions": "0.11.
|
|
30
|
+
"@stratusagent/permissions": "0.11.4"
|
|
31
31
|
},
|
|
32
32
|
"license": "MIT",
|
|
33
33
|
"repository": {
|