@memberjunction/ai-agents 6.2.0-edge.2 → 6.2.0-edge.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/README.md +6 -0
- package/dist/AgentDecisionService.d.ts +8 -1
- package/dist/AgentDecisionService.d.ts.map +1 -1
- package/dist/AgentDecisionService.js +4 -0
- package/dist/AgentDecisionService.js.map +1 -1
- package/dist/AgentRunner.d.ts +51 -2
- package/dist/AgentRunner.d.ts.map +1 -1
- package/dist/AgentRunner.js +121 -23
- package/dist/AgentRunner.js.map +1 -1
- package/dist/ConversationCompactionManager.d.ts +9 -1
- package/dist/ConversationCompactionManager.d.ts.map +1 -1
- package/dist/ConversationCompactionManager.js +6 -3
- package/dist/ConversationCompactionManager.js.map +1 -1
- package/dist/ConversationToolManager.d.ts +13 -2
- package/dist/ConversationToolManager.d.ts.map +1 -1
- package/dist/ConversationToolManager.js +19 -3
- package/dist/ConversationToolManager.js.map +1 -1
- package/dist/KnowledgeAgent.d.ts.map +1 -1
- package/dist/KnowledgeAgent.js +6 -1
- package/dist/KnowledgeAgent.js.map +1 -1
- package/dist/MJAIAgentRequestEntityServer.d.ts +6 -0
- package/dist/MJAIAgentRequestEntityServer.d.ts.map +1 -1
- package/dist/MJAIAgentRequestEntityServer.js +26 -1
- package/dist/MJAIAgentRequestEntityServer.js.map +1 -1
- package/dist/PayloadFeedbackManager.d.ts +3 -0
- package/dist/PayloadFeedbackManager.d.ts.map +1 -1
- package/dist/PayloadFeedbackManager.js +2 -1
- package/dist/PayloadFeedbackManager.js.map +1 -1
- package/dist/agent-run-watchdog.d.ts +65 -5
- package/dist/agent-run-watchdog.d.ts.map +1 -1
- package/dist/agent-run-watchdog.js +143 -28
- package/dist/agent-run-watchdog.js.map +1 -1
- package/dist/agent-types/loop-agent-prompt-params.d.ts +7 -0
- package/dist/agent-types/loop-agent-prompt-params.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-prompt-params.js +1 -0
- package/dist/agent-types/loop-agent-prompt-params.js.map +1 -1
- package/dist/agent-types/loop-agent-type.d.ts +20 -0
- package/dist/agent-types/loop-agent-type.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-type.js +73 -2
- package/dist/agent-types/loop-agent-type.js.map +1 -1
- package/dist/artifact-tools/SearchResultSetToolLibrary.js +4 -4
- package/dist/artifact-tools/SearchResultSetToolLibrary.js.map +1 -1
- package/dist/base-agent.d.ts +310 -26
- package/dist/base-agent.d.ts.map +1 -1
- package/dist/base-agent.js +867 -244
- package/dist/base-agent.js.map +1 -1
- package/dist/client-tool-results.d.ts +45 -0
- package/dist/client-tool-results.d.ts.map +1 -0
- package/dist/client-tool-results.js +94 -0
- package/dist/client-tool-results.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/native-tools/action-tool-builder.d.ts +14 -0
- package/dist/native-tools/action-tool-builder.d.ts.map +1 -1
- package/dist/native-tools/action-tool-builder.js +62 -7
- package/dist/native-tools/action-tool-builder.js.map +1 -1
- package/dist/native-tools/control-tools.d.ts +17 -1
- package/dist/native-tools/control-tools.d.ts.map +1 -1
- package/dist/native-tools/control-tools.js +40 -3
- package/dist/native-tools/control-tools.js.map +1 -1
- package/dist/prior-turn-tool-result-cache.d.ts +31 -12
- package/dist/prior-turn-tool-result-cache.d.ts.map +1 -1
- package/dist/prior-turn-tool-result-cache.js +59 -16
- package/dist/prior-turn-tool-result-cache.js.map +1 -1
- package/dist/realtime/bridge-host-params.d.ts +22 -0
- package/dist/realtime/bridge-host-params.d.ts.map +1 -0
- package/dist/realtime/bridge-host-params.js +53 -0
- package/dist/realtime/bridge-host-params.js.map +1 -0
- package/dist/realtime/bridge-realtime-session-factory.d.ts +63 -3
- package/dist/realtime/bridge-realtime-session-factory.d.ts.map +1 -1
- package/dist/realtime/bridge-realtime-session-factory.js +83 -22
- package/dist/realtime/bridge-realtime-session-factory.js.map +1 -1
- package/dist/realtime/bridge-realtime-usage-recorder.d.ts +81 -0
- package/dist/realtime/bridge-realtime-usage-recorder.d.ts.map +1 -0
- package/dist/realtime/bridge-realtime-usage-recorder.js +194 -0
- package/dist/realtime/bridge-realtime-usage-recorder.js.map +1 -0
- package/dist/realtime/bridge-session-transcript-sink.d.ts +37 -0
- package/dist/realtime/bridge-session-transcript-sink.d.ts.map +1 -0
- package/dist/realtime/bridge-session-transcript-sink.js +58 -0
- package/dist/realtime/bridge-session-transcript-sink.js.map +1 -0
- package/dist/realtime/client-only-channel-server.d.ts +83 -0
- package/dist/realtime/client-only-channel-server.d.ts.map +1 -0
- package/dist/realtime/client-only-channel-server.js +107 -0
- package/dist/realtime/client-only-channel-server.js.map +1 -0
- package/dist/realtime/identity-verification-channel-server.d.ts +50 -0
- package/dist/realtime/identity-verification-channel-server.d.ts.map +1 -0
- package/dist/realtime/identity-verification-channel-server.js +66 -0
- package/dist/realtime/identity-verification-channel-server.js.map +1 -0
- package/dist/realtime/interactive-component-channel-server.d.ts +39 -0
- package/dist/realtime/interactive-component-channel-server.d.ts.map +1 -0
- package/dist/realtime/interactive-component-channel-server.js +55 -0
- package/dist/realtime/interactive-component-channel-server.js.map +1 -0
- package/dist/realtime/realtime-avatar-resolution.d.ts +194 -0
- package/dist/realtime/realtime-avatar-resolution.d.ts.map +1 -0
- package/dist/realtime/realtime-avatar-resolution.js +208 -0
- package/dist/realtime/realtime-avatar-resolution.js.map +1 -0
- package/dist/realtime/realtime-channel-policy.d.ts +81 -0
- package/dist/realtime/realtime-channel-policy.d.ts.map +1 -0
- package/dist/realtime/realtime-channel-policy.js +91 -0
- package/dist/realtime/realtime-channel-policy.js.map +1 -0
- package/dist/realtime/realtime-channel-server-host.d.ts +14 -0
- package/dist/realtime/realtime-channel-server-host.d.ts.map +1 -1
- package/dist/realtime/realtime-channel-server-host.js +35 -0
- package/dist/realtime/realtime-channel-server-host.js.map +1 -1
- package/dist/realtime/realtime-client-session-service.d.ts +493 -30
- package/dist/realtime/realtime-client-session-service.d.ts.map +1 -1
- package/dist/realtime/realtime-client-session-service.js +825 -98
- package/dist/realtime/realtime-client-session-service.js.map +1 -1
- package/dist/realtime/realtime-coagent-config.d.ts +94 -15
- package/dist/realtime/realtime-coagent-config.d.ts.map +1 -1
- package/dist/realtime/realtime-coagent-config.js +109 -4
- package/dist/realtime/realtime-coagent-config.js.map +1 -1
- package/dist/realtime/realtime-coagent-resolution.d.ts +90 -0
- package/dist/realtime/realtime-coagent-resolution.d.ts.map +1 -0
- package/dist/realtime/realtime-coagent-resolution.js +186 -0
- package/dist/realtime/realtime-coagent-resolution.js.map +1 -0
- package/dist/realtime/realtime-delegation-narrator.d.ts +97 -0
- package/dist/realtime/realtime-delegation-narrator.d.ts.map +1 -0
- package/dist/realtime/realtime-delegation-narrator.js +162 -0
- package/dist/realtime/realtime-delegation-narrator.js.map +1 -0
- package/dist/realtime/realtime-recording-store.d.ts +136 -16
- package/dist/realtime/realtime-recording-store.d.ts.map +1 -1
- package/dist/realtime/realtime-recording-store.js +505 -39
- package/dist/realtime/realtime-recording-store.js.map +1 -1
- package/dist/realtime/realtime-session-runner.d.ts +2 -82
- package/dist/realtime/realtime-session-runner.d.ts.map +1 -1
- package/dist/realtime/realtime-session-runner.js +16 -191
- package/dist/realtime/realtime-session-runner.js.map +1 -1
- package/dist/realtime/realtime-vendor-resolution.d.ts +9 -0
- package/dist/realtime/realtime-vendor-resolution.d.ts.map +1 -1
- package/dist/realtime/realtime-vendor-resolution.js +16 -5
- package/dist/realtime/realtime-vendor-resolution.js.map +1 -1
- package/dist/realtime/realtime-video-output-gate.d.ts +83 -0
- package/dist/realtime/realtime-video-output-gate.d.ts.map +1 -0
- package/dist/realtime/realtime-video-output-gate.js +79 -0
- package/dist/realtime/realtime-video-output-gate.js.map +1 -0
- package/dist/rubric-evaluation-agent-runner.js +17 -8
- package/dist/rubric-evaluation-agent-runner.js.map +1 -1
- package/dist/self-check.d.ts +6 -3
- package/dist/self-check.d.ts.map +1 -1
- package/dist/self-check.js +3 -3
- package/dist/self-check.js.map +1 -1
- package/dist/tool-result-format.d.ts +14 -0
- package/dist/tool-result-format.d.ts.map +1 -1
- package/dist/tool-result-format.js.map +1 -1
- package/package.json +19 -19
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Whether a realtime model shows an agent's avatar: its `MJ: AI Model Modalities` Video/Output row, and the
|
|
3
|
+
* endpoint profile of the driver that serves it.
|
|
4
|
+
*
|
|
5
|
+
* A model shows an avatar only when both allow it:
|
|
6
|
+
* 1. its Video/Output row, read from the AI engine's cache: `IsSupported` true allows video, `IsSupported` false turns it
|
|
7
|
+
* off, and no row leaves the decision to the driver;
|
|
8
|
+
* 2. the driver's endpoint profile ({@link BaseRealtimeModel.SupportsAvatarOutput}): Gemini 3.8 Live renders avatars on
|
|
9
|
+
* Gemini Enterprise, not on the Gemini Developer API.
|
|
10
|
+
*
|
|
11
|
+
* The session prep reads the row before the mint, so a model whose row turns video off never asks its driver for an
|
|
12
|
+
* avatar. The driver applies its profile at the mint, and the call's avatar status reads both.
|
|
13
|
+
*
|
|
14
|
+
* @module @memberjunction/ai-agents
|
|
15
|
+
*/
|
|
16
|
+
import type { BaseRealtimeModel } from '@memberjunction/ai';
|
|
17
|
+
import type { MJAIModalityEntity, MJAIModelModalityEntity } from '@memberjunction/core-entities';
|
|
18
|
+
/** What a model's Video/Output row says: `'supported'`, `'unsupported'` (video off), or `'unstated'` (no row). */
|
|
19
|
+
export type RealtimeVideoOutputRow = 'supported' | 'unsupported' | 'unstated';
|
|
20
|
+
/** The cached modality rows the gate reads. `AIEngine.Instance` and `AIEngineBase.Instance` provide them; tests pass a fake. */
|
|
21
|
+
export interface RealtimeModalitySource {
|
|
22
|
+
/** Every `MJ: AI Model Modalities` row. */
|
|
23
|
+
readonly ModelModalities: MJAIModelModalityEntity[];
|
|
24
|
+
/** The `MJ: AI Modalities` row with this name, case-insensitive. */
|
|
25
|
+
GetModalityByName(name: string): MJAIModalityEntity | undefined;
|
|
26
|
+
}
|
|
27
|
+
/** A model on the driver that would serve it: what the gate asks the driver's profile about. */
|
|
28
|
+
export interface RealtimeAvatarCandidate {
|
|
29
|
+
/** The `MJ: AI Models` row id. */
|
|
30
|
+
ModelID: string;
|
|
31
|
+
/** The provider's API name for the model on this vendor. */
|
|
32
|
+
APIName: string;
|
|
33
|
+
/** The vendor's driver. */
|
|
34
|
+
Model: BaseRealtimeModel;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Reads a model's Video/Output row from the AI engine's cache. A cache that can't be read (the user may not read the
|
|
38
|
+
* rows) reads as `'unstated'`, so the driver decides, as it did before the rows were read.
|
|
39
|
+
*
|
|
40
|
+
* @param modelID The `MJ: AI Models` row id.
|
|
41
|
+
* @param source The cached modality rows.
|
|
42
|
+
*/
|
|
43
|
+
export declare function ReadRealtimeVideoOutputRow(modelID: string, source: RealtimeModalitySource): RealtimeVideoOutputRow;
|
|
44
|
+
/**
|
|
45
|
+
* Whether the model shows an avatar on this driver: its Video/Output row allows video (or it has none), and the driver
|
|
46
|
+
* renders avatars for the model on its endpoint.
|
|
47
|
+
*
|
|
48
|
+
* @param candidate The model, its API name on the vendor, and the vendor's driver.
|
|
49
|
+
* @param source The cached modality rows.
|
|
50
|
+
*/
|
|
51
|
+
export declare function RealtimeModelShowsAvatar(candidate: RealtimeAvatarCandidate, source: RealtimeModalitySource): boolean;
|
|
52
|
+
/** How {@link ChooseRealtimeVendorForAvatar} instantiates and judges a vendor; each caller has its own resolution shape. */
|
|
53
|
+
export interface RealtimeVendorAvatarRules<V extends RealtimeVendorIdentity, T> {
|
|
54
|
+
/** The vendor's resolution (its driver on its key), or `null` when it has no key or no driver. */
|
|
55
|
+
Instantiate(vendor: V): T | null;
|
|
56
|
+
/** Whether the resolution renders an avatar ({@link RealtimeModelShowsAvatar}). */
|
|
57
|
+
RendersAvatar(resolution: T): boolean;
|
|
58
|
+
/** Whether another vendor's resolution may stand in for the first one; absent accepts any. */
|
|
59
|
+
Accepts?(resolution: T): boolean;
|
|
60
|
+
}
|
|
61
|
+
/** What identifies a model's vendor row: the vendor and the driver that serves it. */
|
|
62
|
+
export interface RealtimeVendorIdentity {
|
|
63
|
+
/** The `MJ: AI Vendors` row id. */
|
|
64
|
+
VendorID: string;
|
|
65
|
+
/** The vendor's `DriverClass`. */
|
|
66
|
+
DriverClass: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* The vendor a realtime session runs on, by whether it will show an avatar. The highest-Priority keyed vendor (`first`)
|
|
70
|
+
* stands when it renders avatars exactly when the session will show one; otherwise the first other keyed vendor that
|
|
71
|
+
* does (and that `Accepts` allows) is taken, when there is one. So a vendor that renders avatars (Vertex AI for Gemini
|
|
72
|
+
* 3.8 Live, with its own billing and limits) takes a session only when it will show an avatar, or when it is the only
|
|
73
|
+
* keyed vendor; and a session that will show one goes to such a vendor whatever the Priority order.
|
|
74
|
+
*
|
|
75
|
+
* @param firstVendor The highest-Priority keyed vendor's identity.
|
|
76
|
+
* @param first That vendor's resolution.
|
|
77
|
+
* @param vendors The model's vendors, highest Priority first (keys not checked).
|
|
78
|
+
* @param showsAvatar Whether the session will show an avatar.
|
|
79
|
+
* @param rules How a vendor is instantiated and judged.
|
|
80
|
+
* @returns The chosen resolution: `first` unless another keyed vendor matches the session better.
|
|
81
|
+
*/
|
|
82
|
+
export declare function ChooseRealtimeVendorForAvatar<V extends RealtimeVendorIdentity, T>(firstVendor: V, first: T, vendors: V[], showsAvatar: boolean, rules: RealtimeVendorAvatarRules<V, T>): T;
|
|
83
|
+
//# sourceMappingURL=realtime-video-output-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realtime-video-output-gate.d.ts","sourceRoot":"","sources":["../../src/realtime/realtime-video-output-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGjG,kHAAkH;AAClH,MAAM,MAAM,sBAAsB,GAAG,WAAW,GAAG,aAAa,GAAG,UAAU,CAAC;AAE9E,gIAAgI;AAChI,MAAM,WAAW,sBAAsB;IACnC,2CAA2C;IAC3C,QAAQ,CAAC,eAAe,EAAE,uBAAuB,EAAE,CAAC;IACpD,oEAAoE;IACpE,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAAC;CACnE;AAED,gGAAgG;AAChG,MAAM,WAAW,uBAAuB;IACpC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,KAAK,EAAE,iBAAiB,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,GAAG,sBAAsB,CAclH;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAEpH;AAED,4HAA4H;AAC5H,MAAM,WAAW,yBAAyB,CAAC,CAAC,SAAS,sBAAsB,EAAE,CAAC;IAC1E,kGAAkG;IAClG,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;IACjC,mFAAmF;IACnF,aAAa,CAAC,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC;IACtC,8FAA8F;IAC9F,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC,GAAG,OAAO,CAAC;CACpC;AAED,sFAAsF;AACtF,MAAM,WAAW,sBAAsB;IACnC,mCAAmC;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,6BAA6B,CAAC,CAAC,SAAS,sBAAsB,EAAE,CAAC,EAC7E,WAAW,EAAE,CAAC,EACd,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,EAAE,EACZ,WAAW,EAAE,OAAO,EACpB,KAAK,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC,CAAC,GACvC,CAAC,CAcH"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Whether a realtime model shows an agent's avatar: its `MJ: AI Model Modalities` Video/Output row, and the
|
|
3
|
+
* endpoint profile of the driver that serves it.
|
|
4
|
+
*
|
|
5
|
+
* A model shows an avatar only when both allow it:
|
|
6
|
+
* 1. its Video/Output row, read from the AI engine's cache: `IsSupported` true allows video, `IsSupported` false turns it
|
|
7
|
+
* off, and no row leaves the decision to the driver;
|
|
8
|
+
* 2. the driver's endpoint profile ({@link BaseRealtimeModel.SupportsAvatarOutput}): Gemini 3.8 Live renders avatars on
|
|
9
|
+
* Gemini Enterprise, not on the Gemini Developer API.
|
|
10
|
+
*
|
|
11
|
+
* The session prep reads the row before the mint, so a model whose row turns video off never asks its driver for an
|
|
12
|
+
* avatar. The driver applies its profile at the mint, and the call's avatar status reads both.
|
|
13
|
+
*
|
|
14
|
+
* @module @memberjunction/ai-agents
|
|
15
|
+
*/
|
|
16
|
+
import { UUIDsEqual } from '@memberjunction/global';
|
|
17
|
+
/**
|
|
18
|
+
* Reads a model's Video/Output row from the AI engine's cache. A cache that can't be read (the user may not read the
|
|
19
|
+
* rows) reads as `'unstated'`, so the driver decides, as it did before the rows were read.
|
|
20
|
+
*
|
|
21
|
+
* @param modelID The `MJ: AI Models` row id.
|
|
22
|
+
* @param source The cached modality rows.
|
|
23
|
+
*/
|
|
24
|
+
export function ReadRealtimeVideoOutputRow(modelID, source) {
|
|
25
|
+
let row;
|
|
26
|
+
try {
|
|
27
|
+
const video = source.GetModalityByName('Video');
|
|
28
|
+
row = video
|
|
29
|
+
? source.ModelModalities.find((mm) => UUIDsEqual(mm.ModelID, modelID) && UUIDsEqual(mm.ModalityID, video.ID) && mm.Direction === 'Output')
|
|
30
|
+
: undefined;
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return 'unstated';
|
|
34
|
+
}
|
|
35
|
+
if (!row) {
|
|
36
|
+
return 'unstated';
|
|
37
|
+
}
|
|
38
|
+
return row.IsSupported === false ? 'unsupported' : 'supported';
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Whether the model shows an avatar on this driver: its Video/Output row allows video (or it has none), and the driver
|
|
42
|
+
* renders avatars for the model on its endpoint.
|
|
43
|
+
*
|
|
44
|
+
* @param candidate The model, its API name on the vendor, and the vendor's driver.
|
|
45
|
+
* @param source The cached modality rows.
|
|
46
|
+
*/
|
|
47
|
+
export function RealtimeModelShowsAvatar(candidate, source) {
|
|
48
|
+
return ReadRealtimeVideoOutputRow(candidate.ModelID, source) !== 'unsupported' && candidate.Model.SupportsAvatarOutput(candidate.APIName);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The vendor a realtime session runs on, by whether it will show an avatar. The highest-Priority keyed vendor (`first`)
|
|
52
|
+
* stands when it renders avatars exactly when the session will show one; otherwise the first other keyed vendor that
|
|
53
|
+
* does (and that `Accepts` allows) is taken, when there is one. So a vendor that renders avatars (Vertex AI for Gemini
|
|
54
|
+
* 3.8 Live, with its own billing and limits) takes a session only when it will show an avatar, or when it is the only
|
|
55
|
+
* keyed vendor; and a session that will show one goes to such a vendor whatever the Priority order.
|
|
56
|
+
*
|
|
57
|
+
* @param firstVendor The highest-Priority keyed vendor's identity.
|
|
58
|
+
* @param first That vendor's resolution.
|
|
59
|
+
* @param vendors The model's vendors, highest Priority first (keys not checked).
|
|
60
|
+
* @param showsAvatar Whether the session will show an avatar.
|
|
61
|
+
* @param rules How a vendor is instantiated and judged.
|
|
62
|
+
* @returns The chosen resolution: `first` unless another keyed vendor matches the session better.
|
|
63
|
+
*/
|
|
64
|
+
export function ChooseRealtimeVendorForAvatar(firstVendor, first, vendors, showsAvatar, rules) {
|
|
65
|
+
if (vendors.length < 2 || rules.RendersAvatar(first) === showsAvatar) {
|
|
66
|
+
return first;
|
|
67
|
+
}
|
|
68
|
+
for (const vendor of vendors) {
|
|
69
|
+
if (vendor.DriverClass === firstVendor.DriverClass && vendor.VendorID === firstVendor.VendorID) {
|
|
70
|
+
continue;
|
|
71
|
+
}
|
|
72
|
+
const resolution = rules.Instantiate(vendor);
|
|
73
|
+
if (resolution && (rules.Accepts?.(resolution) ?? true) && rules.RendersAvatar(resolution) === showsAvatar) {
|
|
74
|
+
return resolution;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return first;
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=realtime-video-output-gate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realtime-video-output-gate.js","sourceRoot":"","sources":["../../src/realtime/realtime-video-output-gate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAuBpD;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAe,EAAE,MAA8B;IACtF,IAAI,GAAwC,CAAC;IAC7C,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAChD,GAAG,GAAG,KAAK;YACP,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,SAAS,KAAK,QAAQ,CAAC;YAC1I,CAAC,CAAC,SAAS,CAAC;IACpB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,OAAO,GAAG,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;AACnE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,SAAkC,EAAE,MAA8B;IACvG,OAAO,0BAA0B,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,aAAa,IAAI,SAAS,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;AAC9I,CAAC;AAoBD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,6BAA6B,CACzC,WAAc,EACd,KAAQ,EACR,OAAY,EACZ,WAAoB,EACpB,KAAsC;IAEtC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,KAAK,WAAW,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,MAAM,CAAC,WAAW,KAAK,WAAW,CAAC,WAAW,IAAI,MAAM,CAAC,QAAQ,KAAK,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC7F,SAAS;QACb,CAAC;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,KAAK,WAAW,EAAE,CAAC;YACzG,OAAO,UAAU,CAAC;QACtB,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
|
|
@@ -1,38 +1,47 @@
|
|
|
1
1
|
import { RunView } from '@memberjunction/core';
|
|
2
2
|
import { EscapeSQLString } from '@memberjunction/global';
|
|
3
|
-
import { RegisterRubricAgentRunner } from '@memberjunction/rubrics';
|
|
3
|
+
import { RegisterRubricAgentRunner, WithAgentRun } from '@memberjunction/rubrics';
|
|
4
4
|
const RUBRIC_EVALUATION_AGENT = 'Rubric Evaluation Agent';
|
|
5
5
|
/**
|
|
6
|
-
* Runs the Rubric Evaluation Agent
|
|
6
|
+
* Runs the Rubric Evaluation Agent, or the agent the evaluator settings name, and returns its
|
|
7
|
+
* decisions with the agent run that produced them. Registered for ProviderRubricEngine so the
|
|
7
8
|
* rubrics package does not depend on this package.
|
|
8
9
|
*/
|
|
9
10
|
class RubricEvaluationAgentRunner {
|
|
10
|
-
constructor(provider, user
|
|
11
|
+
constructor(provider, user,
|
|
12
|
+
/** The evaluating run's configuration, keys and credential scope; the evaluation agent runs under them. */
|
|
13
|
+
executionScope) {
|
|
11
14
|
this.provider = provider;
|
|
12
15
|
this.user = user;
|
|
16
|
+
this.executionScope = executionScope;
|
|
13
17
|
}
|
|
14
18
|
async Run(input) {
|
|
15
19
|
const view = RunView.FromMetadataProvider(this.provider);
|
|
16
20
|
const found = await view.RunView({
|
|
17
21
|
EntityName: 'MJ: AI Agents',
|
|
18
|
-
ExtraFilter: `Name='${EscapeSQLString(RUBRIC_EVALUATION_AGENT)}'`,
|
|
22
|
+
ExtraFilter: input.agentId ? `ID='${EscapeSQLString(input.agentId)}'` : `Name='${EscapeSQLString(RUBRIC_EVALUATION_AGENT)}'`,
|
|
19
23
|
ResultType: 'entity_object',
|
|
20
24
|
MaxRows: 1,
|
|
21
25
|
}, this.user);
|
|
22
26
|
const agent = found.Results?.[0];
|
|
23
|
-
if (!found.Success
|
|
24
|
-
throw new Error('
|
|
27
|
+
if (!found.Success)
|
|
28
|
+
throw new Error(found.ErrorMessage || 'Could not read the rubric evaluation agent.');
|
|
29
|
+
if (!agent)
|
|
30
|
+
throw new Error(input.agentId ? `Agent ${input.agentId} was not found.` : 'The Rubric Evaluation Agent was not found.');
|
|
25
31
|
const { AgentRunner } = await import('./AgentRunner.js');
|
|
26
32
|
const result = await new AgentRunner(this.provider).RunAgent({
|
|
27
33
|
agent: agent,
|
|
28
34
|
payload: { version: input.version, content: input.content, subject: input.subject },
|
|
29
35
|
contextUser: this.user,
|
|
30
36
|
conversationMessages: [],
|
|
37
|
+
configurationId: this.executionScope?.configurationId,
|
|
38
|
+
apiKeys: this.executionScope?.apiKeys,
|
|
39
|
+
CredentialScope: this.executionScope?.CredentialScope,
|
|
31
40
|
});
|
|
32
41
|
if (!result.success)
|
|
33
42
|
throw new Error(result.errorMessage || 'The Rubric Evaluation Agent failed.');
|
|
34
|
-
return (result.payload
|
|
43
|
+
return WithAgentRun(result.payload, result.agentRun?.ID);
|
|
35
44
|
}
|
|
36
45
|
}
|
|
37
|
-
RegisterRubricAgentRunner((provider, user) => new RubricEvaluationAgentRunner(provider, user));
|
|
46
|
+
RegisterRubricAgentRunner((provider, user, executionScope) => new RubricEvaluationAgentRunner(provider, user, executionScope));
|
|
38
47
|
//# sourceMappingURL=rubric-evaluation-agent-runner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rubric-evaluation-agent-runner.js","sourceRoot":"","sources":["../src/rubric-evaluation-agent-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAA8B,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"rubric-evaluation-agent-runner.js","sourceRoot":"","sources":["../src/rubric-evaluation-agent-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,YAAY,EAA8B,MAAM,yBAAyB,CAAC;AAG9G,MAAM,uBAAuB,GAAG,yBAAyB,CAAC;AAE1D;;;;GAIG;AACH,MAAM,2BAA2B;IAC7B,YACqB,QAAiB,EACjB,IAAa;IAC9B,2GAA2G;IAC1F,cAAuC;QAHvC,aAAQ,GAAR,QAAQ,CAAS;QACjB,SAAI,GAAJ,IAAI,CAAS;QAEb,mBAAc,GAAd,cAAc,CAAyB;IACzD,CAAC;IAEG,KAAK,CAAC,GAAG,CAAC,KAAkD;QAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAiB,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;YAC7B,UAAU,EAAE,eAAe;YAC3B,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,eAAe,CAAC,uBAAuB,CAAC,GAAG;YAC5H,UAAU,EAAE,eAAe;YAC3B,OAAO,EAAE,CAAC;SACb,EAAE,IAAI,CAAC,IAAa,CAAC,CAAC;QACvB,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,IAAI,6CAA6C,CAAC,CAAC;QACzG,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,4CAA4C,CAAC,CAAC;QACpI,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,QAAiB,CAAC,CAAC,QAAQ,CAAC;YAClE,KAAK,EAAE,KAAc;YACrB,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;YACnF,WAAW,EAAE,IAAI,CAAC,IAAa;YAC/B,oBAAoB,EAAE,EAAE;YACxB,eAAe,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe;YACrD,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO;YACrC,eAAe,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe;SACxD,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,IAAI,qCAAqC,CAAC,CAAC;QACnG,OAAO,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;CACJ;AAED,yBAAyB,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,CAAC,IAAI,2BAA2B,CAAC,QAAQ,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC"}
|
package/dist/self-check.d.ts
CHANGED
|
@@ -12,6 +12,8 @@ export interface SelfCheckLinkRow {
|
|
|
12
12
|
RubricID?: string;
|
|
13
13
|
MaxSelfCheckAttempts?: number | null;
|
|
14
14
|
PassThreshold?: number | null;
|
|
15
|
+
/** IRubricEvaluatorSelection JSON naming the evaluator and its settings. LLM SinglePass when empty. */
|
|
16
|
+
EvaluatorConfig?: string | null;
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
17
19
|
* Picks one Active SelfCheck link. The lowest id wins, so two Active links
|
|
@@ -51,7 +53,7 @@ export interface SelfCheckEngine {
|
|
|
51
53
|
rubricId: string;
|
|
52
54
|
subjectEntityName: string;
|
|
53
55
|
subjectRecordId: string;
|
|
54
|
-
|
|
56
|
+
evaluatorConfig?: unknown;
|
|
55
57
|
passThreshold?: number | null;
|
|
56
58
|
content?: {
|
|
57
59
|
text?: string;
|
|
@@ -76,14 +78,15 @@ export interface SelfCheckValidation {
|
|
|
76
78
|
* Runs one self-check evaluation and records a Validation step linked to it.
|
|
77
79
|
* The subject pointer is the current agent run. The text the judge scores is the
|
|
78
80
|
* in-memory message and payload, because the stored run does not have FinalPayload yet.
|
|
79
|
-
* The evaluator is the
|
|
80
|
-
* when set, otherwise the version's threshold.
|
|
81
|
+
* The evaluator is the one the link's EvaluatorConfig names, LLM SinglePass when it names none.
|
|
82
|
+
* The threshold is the link override when set, otherwise the version's threshold.
|
|
81
83
|
*/
|
|
82
84
|
export declare function ExecuteSelfCheck(input: {
|
|
83
85
|
engine: SelfCheckEngine;
|
|
84
86
|
link: SelfCheckLink & {
|
|
85
87
|
rubricId: string;
|
|
86
88
|
passThreshold?: number | null;
|
|
89
|
+
evaluatorConfig?: string | null;
|
|
87
90
|
};
|
|
88
91
|
runId: string;
|
|
89
92
|
agentKind: 'loop' | 'flow';
|
package/dist/self-check.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"self-check.d.ts","sourceRoot":"","sources":["../src/self-check.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED,0DAA0D;AAC1D,MAAM,WAAW,gBAAgB;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"self-check.d.ts","sourceRoot":"","sources":["../src/self-check.ts"],"names":[],"mappings":"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"}
|
package/dist/self-check.js
CHANGED
|
@@ -36,15 +36,15 @@ export function DecideSelfCheck(input) {
|
|
|
36
36
|
* Runs one self-check evaluation and records a Validation step linked to it.
|
|
37
37
|
* The subject pointer is the current agent run. The text the judge scores is the
|
|
38
38
|
* in-memory message and payload, because the stored run does not have FinalPayload yet.
|
|
39
|
-
* The evaluator is the
|
|
40
|
-
* when set, otherwise the version's threshold.
|
|
39
|
+
* The evaluator is the one the link's EvaluatorConfig names, LLM SinglePass when it names none.
|
|
40
|
+
* The threshold is the link override when set, otherwise the version's threshold.
|
|
41
41
|
*/
|
|
42
42
|
export async function ExecuteSelfCheck(input) {
|
|
43
43
|
const result = await input.engine.EvaluateRecord({
|
|
44
44
|
rubricId: input.link.rubricId,
|
|
45
45
|
subjectEntityName: 'MJ: AI Agent Runs',
|
|
46
46
|
subjectRecordId: input.runId,
|
|
47
|
-
|
|
47
|
+
evaluatorConfig: input.link.evaluatorConfig ?? undefined,
|
|
48
48
|
passThreshold: input.link.passThreshold ?? null,
|
|
49
49
|
...(input.candidate ? {
|
|
50
50
|
content: {
|
package/dist/self-check.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"self-check.js","sourceRoot":"","sources":["../src/self-check.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"self-check.js","sourceRoot":"","sources":["../src/self-check.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,20 @@ export interface CarryForwardToolStepOutput {
|
|
|
58
58
|
export interface CarryForwardStepRecord {
|
|
59
59
|
OutputData: string | null;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* The step projection the stopped-run carry-forward loads: the completed Actions and Tool steps
|
|
63
|
+
* of a run the user stopped, rendered for the next turn so it continues instead of redoing them.
|
|
64
|
+
* `InputData` carries the action call (`{ actionName, actionParams }`), `OutputData` the result
|
|
65
|
+
* (`{ actionResult: { success, message, parameters } }` for an action; the
|
|
66
|
+
* {@link CarryForwardToolStepOutput} contract for a tool).
|
|
67
|
+
*/
|
|
68
|
+
export interface StoppedRunStepRecord {
|
|
69
|
+
StepNumber: number;
|
|
70
|
+
StepType: string;
|
|
71
|
+
StepName: string;
|
|
72
|
+
InputData: string | null;
|
|
73
|
+
OutputData: string | null;
|
|
74
|
+
}
|
|
61
75
|
/** Identifies one tool call within a rendered result section. */
|
|
62
76
|
export interface ToolResultSectionParts {
|
|
63
77
|
/** The tool name, e.g. `getMessageBySequence` */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-result-format.d.ts","sourceRoot":"","sources":["../src/tool-result-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;CAGzB,CAAC;AAEX,wDAAwD;AACxD,MAAM,MAAM,2BAA2B,GAAG,OAAO,sBAAsB,CAAC,MAAM,OAAO,sBAAsB,CAAC,CAAC;AAE7G;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACvC,wEAAwE;IACxE,UAAU,EAAE,2BAA2B,CAAC;IACxC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,4EAA4E;IAC5E,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpE,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,sGAAsG;AACtG,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,iEAAiE;AACjE,MAAM,WAAW,sBAAsB;IACnC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,KAAK,EAAE,OAAO,CAAC;IACf,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6FAA6F;IAC7F,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAQD,mGAAmG;AACnG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE1D;AAED,0GAA0G;AAC1G,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3F;AAED,mEAAmE;AACnE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAE9G"}
|
|
1
|
+
{"version":3,"file":"tool-result-format.d.ts","sourceRoot":"","sources":["../src/tool-result-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;CAGzB,CAAC;AAEX,wDAAwD;AACxD,MAAM,MAAM,2BAA2B,GAAG,OAAO,sBAAsB,CAAC,MAAM,OAAO,sBAAsB,CAAC,CAAC;AAE7G;;;;;GAKG;AACH,MAAM,WAAW,0BAA0B;IACvC,wEAAwE;IACxE,UAAU,EAAE,2BAA2B,CAAC;IACxC,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,KAAK,EAAE,OAAO,CAAC;IACf,4EAA4E;IAC5E,MAAM,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpE,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,sGAAsG;AACtG,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACjC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,iEAAiE;AACjE,MAAM,WAAW,sBAAsB;IACnC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,KAAK,EAAE,OAAO,CAAC;IACf,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6FAA6F;IAC7F,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAQD,mGAAmG;AACnG,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CAE1D;AAED,0GAA0G;AAC1G,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,sBAAsB,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE3F;AAED,mEAAmE;AACnE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAE9G"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-result-format.js","sourceRoot":"","sources":["../src/tool-result-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,YAAY,EAAE,cAAc;IAC5B,QAAQ,EAAE,UAAU;CACd,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-result-format.js","sourceRoot":"","sources":["../src/tool-result-format.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,YAAY,EAAE,cAAc;IAC5B,QAAQ,EAAE,UAAU;CACd,CAAC;AA4DX,SAAS,aAAa,CAAC,KAA6B;IAChD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACxE,OAAO,OAAO,OAAO,GAAG,MAAM,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC;AACxF,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,oBAAoB,CAAC,IAAa;IAC9C,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,0GAA0G;AAC1G,MAAM,UAAU,uBAAuB,CAAC,KAA6B,EAAE,IAAY;IAC/E,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,iBAAiB,IAAI,UAAU,CAAC;AAClE,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,sBAAsB,CAAC,KAA6B,EAAE,YAAgC;IAClG,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,gBAAgB,YAAY,EAAE,CAAC;AACjE,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@memberjunction/ai-agents",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "6.2.0-edge.
|
|
4
|
+
"version": "6.2.0-edge.4",
|
|
5
5
|
"description": "MemberJunction: AI Agent Execution and Management",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -11,24 +11,24 @@
|
|
|
11
11
|
"author": "MemberJunction.com",
|
|
12
12
|
"license": "BUSL-1.1",
|
|
13
13
|
"dependencies": {
|
|
14
|
-
"@memberjunction/actions": "6.2.0-edge.
|
|
15
|
-
"@memberjunction/actions-base": "6.2.0-edge.
|
|
16
|
-
"@memberjunction/ai": "6.2.0-edge.
|
|
17
|
-
"@memberjunction/ai-core-plus": "6.2.0-edge.
|
|
18
|
-
"@memberjunction/ai-engine-base": "6.2.0-edge.
|
|
19
|
-
"@memberjunction/ai-prompts": "6.2.0-edge.
|
|
20
|
-
"@memberjunction/ai-reranker": "6.2.0-edge.
|
|
21
|
-
"@memberjunction/ai-vector-dupe": "6.2.0-edge.
|
|
22
|
-
"@memberjunction/ai-vector-sync": "6.2.0-edge.
|
|
23
|
-
"@memberjunction/aiengine": "6.2.0-edge.
|
|
24
|
-
"@memberjunction/context-crush": "6.2.0-edge.
|
|
25
|
-
"@memberjunction/core": "6.2.0-edge.
|
|
26
|
-
"@memberjunction/core-entities": "6.2.0-edge.
|
|
27
|
-
"@memberjunction/global": "6.2.0-edge.
|
|
28
|
-
"@memberjunction/rubrics": "6.2.0-edge.
|
|
29
|
-
"@memberjunction/search-engine": "6.2.0-edge.
|
|
30
|
-
"@memberjunction/storage": "6.2.0-edge.
|
|
31
|
-
"@memberjunction/templates": "6.2.0-edge.
|
|
14
|
+
"@memberjunction/actions": "6.2.0-edge.4",
|
|
15
|
+
"@memberjunction/actions-base": "6.2.0-edge.4",
|
|
16
|
+
"@memberjunction/ai": "6.2.0-edge.4",
|
|
17
|
+
"@memberjunction/ai-core-plus": "6.2.0-edge.4",
|
|
18
|
+
"@memberjunction/ai-engine-base": "6.2.0-edge.4",
|
|
19
|
+
"@memberjunction/ai-prompts": "6.2.0-edge.4",
|
|
20
|
+
"@memberjunction/ai-reranker": "6.2.0-edge.4",
|
|
21
|
+
"@memberjunction/ai-vector-dupe": "6.2.0-edge.4",
|
|
22
|
+
"@memberjunction/ai-vector-sync": "6.2.0-edge.4",
|
|
23
|
+
"@memberjunction/aiengine": "6.2.0-edge.4",
|
|
24
|
+
"@memberjunction/context-crush": "6.2.0-edge.4",
|
|
25
|
+
"@memberjunction/core": "6.2.0-edge.4",
|
|
26
|
+
"@memberjunction/core-entities": "6.2.0-edge.4",
|
|
27
|
+
"@memberjunction/global": "6.2.0-edge.4",
|
|
28
|
+
"@memberjunction/rubrics": "6.2.0-edge.4",
|
|
29
|
+
"@memberjunction/search-engine": "6.2.0-edge.4",
|
|
30
|
+
"@memberjunction/storage": "6.2.0-edge.4",
|
|
31
|
+
"@memberjunction/templates": "6.2.0-edge.4",
|
|
32
32
|
"dotenv": "^17.2.4",
|
|
33
33
|
"exceljs": "^4.4.0",
|
|
34
34
|
"lodash": "^4.17.23",
|