@memberjunction/ai-agents 5.43.0 → 5.44.0
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 -0
- package/dist/DuplicateReasoningAgentProvider.d.ts +35 -0
- package/dist/DuplicateReasoningAgentProvider.d.ts.map +1 -0
- package/dist/DuplicateReasoningAgentProvider.js +95 -0
- package/dist/DuplicateReasoningAgentProvider.js.map +1 -0
- package/dist/MJAIAgentRequestEntityServer.d.ts +7 -0
- package/dist/MJAIAgentRequestEntityServer.d.ts.map +1 -1
- package/dist/MJAIAgentRequestEntityServer.js +28 -1
- package/dist/MJAIAgentRequestEntityServer.js.map +1 -1
- package/dist/SkillImportExportService.d.ts +63 -0
- package/dist/SkillImportExportService.d.ts.map +1 -0
- package/dist/SkillImportExportService.js +148 -0
- package/dist/SkillImportExportService.js.map +1 -0
- package/dist/SkillMarkdownConverter.d.ts +82 -0
- package/dist/SkillMarkdownConverter.d.ts.map +1 -0
- package/dist/SkillMarkdownConverter.js +145 -0
- package/dist/SkillMarkdownConverter.js.map +1 -0
- package/dist/agent-types/loop-agent-response-type.d.ts +17 -2
- package/dist/agent-types/loop-agent-response-type.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-response-type.js.map +1 -1
- package/dist/agent-types/loop-agent-type.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-type.js +33 -1
- package/dist/agent-types/loop-agent-type.js.map +1 -1
- package/dist/base-agent.d.ts +373 -12
- package/dist/base-agent.d.ts.map +1 -1
- package/dist/base-agent.js +1007 -78
- package/dist/base-agent.js.map +1 -1
- package/dist/index.d.ts +11 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -1
- package/dist/memory-manager-agent.d.ts +39 -0
- package/dist/memory-manager-agent.d.ts.map +1 -1
- package/dist/memory-manager-agent.js +118 -5
- package/dist/memory-manager-agent.js.map +1 -1
- package/dist/operations/AISkillMarkdownOperations.d.ts +11 -0
- package/dist/operations/AISkillMarkdownOperations.d.ts.map +1 -0
- package/dist/operations/AISkillMarkdownOperations.js +57 -0
- package/dist/operations/AISkillMarkdownOperations.js.map +1 -0
- package/dist/prompt-component-resolver.d.ts +73 -0
- package/dist/prompt-component-resolver.d.ts.map +1 -0
- package/dist/prompt-component-resolver.js +166 -0
- package/dist/prompt-component-resolver.js.map +1 -0
- package/dist/realtime/agent-media-library.d.ts +65 -0
- package/dist/realtime/agent-media-library.d.ts.map +1 -0
- package/dist/realtime/agent-media-library.js +160 -0
- package/dist/realtime/agent-media-library.js.map +1 -0
- package/dist/realtime/client-context-channel-server.d.ts +59 -0
- package/dist/realtime/client-context-channel-server.d.ts.map +1 -0
- package/dist/realtime/client-context-channel-server.js +78 -0
- package/dist/realtime/client-context-channel-server.js.map +1 -0
- package/dist/realtime/media-channel-server.d.ts +73 -0
- package/dist/realtime/media-channel-server.d.ts.map +1 -0
- package/dist/realtime/media-channel-server.js +145 -0
- package/dist/realtime/media-channel-server.js.map +1 -0
- package/dist/realtime/realtime-channel-server-data-context.d.ts +42 -0
- package/dist/realtime/realtime-channel-server-data-context.d.ts.map +1 -0
- package/dist/realtime/realtime-channel-server-data-context.js +29 -0
- package/dist/realtime/realtime-channel-server-data-context.js.map +1 -0
- package/dist/realtime/realtime-channel-server-host.d.ts.map +1 -1
- package/dist/realtime/realtime-channel-server-host.js +8 -2
- package/dist/realtime/realtime-channel-server-host.js.map +1 -1
- package/dist/realtime/realtime-client-session-service.d.ts +85 -5
- package/dist/realtime/realtime-client-session-service.d.ts.map +1 -1
- package/dist/realtime/realtime-client-session-service.js +234 -25
- package/dist/realtime/realtime-client-session-service.js.map +1 -1
- package/dist/realtime/realtime-coagent-config.d.ts +82 -3
- package/dist/realtime/realtime-coagent-config.d.ts.map +1 -1
- package/dist/realtime/realtime-coagent-config.js +147 -6
- package/dist/realtime/realtime-coagent-config.js.map +1 -1
- package/dist/realtime/realtime-recording-capture.d.ts +125 -0
- package/dist/realtime/realtime-recording-capture.d.ts.map +1 -0
- package/dist/realtime/realtime-recording-capture.js +317 -0
- package/dist/realtime/realtime-recording-capture.js.map +1 -0
- package/dist/realtime/realtime-recording-store.d.ts +105 -0
- package/dist/realtime/realtime-recording-store.d.ts.map +1 -0
- package/dist/realtime/realtime-recording-store.js +216 -0
- package/dist/realtime/realtime-recording-store.js.map +1 -0
- package/dist/realtime/realtime-session-runner.d.ts +33 -2
- package/dist/realtime/realtime-session-runner.d.ts.map +1 -1
- package/dist/realtime/realtime-session-runner.js +45 -2
- package/dist/realtime/realtime-session-runner.js.map +1 -1
- package/dist/realtime/realtime-tool-broker.d.ts +41 -3
- package/dist/realtime/realtime-tool-broker.d.ts.map +1 -1
- package/dist/realtime/realtime-tool-broker.js +67 -3
- package/dist/realtime/realtime-tool-broker.js.map +1 -1
- package/package.json +18 -17
|
@@ -159,6 +159,26 @@ export declare const REALTIME_MODERATOR_DEFAULTS: {
|
|
|
159
159
|
readonly onError: "silent" | "addressed-only";
|
|
160
160
|
readonly prestageOnAgentSpeech: true;
|
|
161
161
|
};
|
|
162
|
+
/**
|
|
163
|
+
* How the co-agent narrates pulling in a colleague agent (a delegation handoff):
|
|
164
|
+
* - `'mention'` (default): names the handoff out loud ("Let me bring in Skip for that…").
|
|
165
|
+
* - `'silent'`: absorbs the colleague's result and speaks it as its own — delegation is invisible.
|
|
166
|
+
* - `'hand-voice'`: heavier handoff where the colleague takes the mic (reserved; not yet implemented).
|
|
167
|
+
*/
|
|
168
|
+
export type RealtimeDisclosurePolicy = 'silent' | 'mention' | 'hand-voice';
|
|
169
|
+
/**
|
|
170
|
+
* A delegation target the lead co-agent may invoke via `invoke_agent`. Allowed targets are
|
|
171
|
+
* **union-accumulated** across cascade layers (type, co-agent, target, app) plus dynamic
|
|
172
|
+
* (channel-registered) additions — NOT array-replaced — by {@link accumulateAllowedAgents}.
|
|
173
|
+
*/
|
|
174
|
+
export interface RealtimeAllowedAgent {
|
|
175
|
+
/** The target agent's `MJ: AI Agents` ID (loop or flow — transparent to the co-agent). */
|
|
176
|
+
agentId: string;
|
|
177
|
+
/** Friendly label used in the manifest / disclosure narration ("Skip", "Query Builder"). */
|
|
178
|
+
label?: string;
|
|
179
|
+
/** Per-target disclosure override; falls back to the effective default disclosure. */
|
|
180
|
+
disclosure?: RealtimeDisclosurePolicy;
|
|
181
|
+
}
|
|
162
182
|
/** The `realtime` section of a co-agent's effective configuration. */
|
|
163
183
|
export interface RealtimeConfigSection {
|
|
164
184
|
/** Preferred realtime model — an `MJ: AI Models` Name OR ID. Degrades gracefully when unsatisfiable. */
|
|
@@ -178,6 +198,17 @@ export interface RealtimeConfigSection {
|
|
|
178
198
|
narration?: RealtimeNarrationConfig;
|
|
179
199
|
/** Multi-agent turn-taking: this agent's participation {@link RealtimeTurnTakingConfig.mode} + the room-wide moderator. */
|
|
180
200
|
turnTaking?: RealtimeTurnTakingConfig;
|
|
201
|
+
/**
|
|
202
|
+
* Default delegation disclosure for this co-agent (scalar — follows the per-key cascade override).
|
|
203
|
+
* Absent ⇒ {@link GetEffectiveDisclosure} returns `'mention'`.
|
|
204
|
+
*/
|
|
205
|
+
disclosure?: RealtimeDisclosurePolicy;
|
|
206
|
+
/**
|
|
207
|
+
* Delegation targets the lead co-agent may invoke. UNION-accumulated across layers + dynamic
|
|
208
|
+
* (see {@link accumulateAllowedAgents}); {@link ResolveEffectiveRealtimeConfig} populates this
|
|
209
|
+
* with the accumulated union rather than the array-replaced top layer.
|
|
210
|
+
*/
|
|
211
|
+
allowedAgents?: RealtimeAllowedAgent[];
|
|
181
212
|
}
|
|
182
213
|
/** The fully-normalized effective configuration for a Realtime co-agent. */
|
|
183
214
|
export interface RealtimeCoAgentConfig {
|
|
@@ -251,11 +282,59 @@ export declare function ParseRealtimeTypeConfiguration(json: string | null | und
|
|
|
251
282
|
* @param agentJson The CO-AGENT's `TypeConfiguration` JSON (shared per-co-agent layer).
|
|
252
283
|
* @param overridesJson Runtime overrides JSON (per-session layer; already authorization-gated by the caller).
|
|
253
284
|
* @param targetAgentJson Optional TARGET agent's `TypeConfiguration` JSON (per-voiced-agent layer). Merged
|
|
254
|
-
* ABOVE the co-agent and BELOW the runtime
|
|
255
|
-
* no distinct target (e.g. the co-agent voicing itself).
|
|
285
|
+
* ABOVE the co-agent and BELOW the app/runtime-override layers regardless of argument position. Omit when
|
|
286
|
+
* there is no distinct target (e.g. the co-agent voicing itself).
|
|
287
|
+
* @param appSettingsJson Optional APP layer — `Application.AgentSettings.Realtime` translated into the
|
|
288
|
+
* canonical `{"realtime":{…}}` shape (use {@link BuildAppRealtimeOverridesJson}). Merged ABOVE the target
|
|
289
|
+
* and BELOW the runtime override. Omit when no app context is known.
|
|
290
|
+
* @param dynamicAllowedAgents Optional channel-registered delegation targets added at runtime (Move 3b),
|
|
291
|
+
* union-accumulated on top of the layer-sourced `allowedAgents`.
|
|
256
292
|
* @returns The normalized effective configuration. `realtime` is absent when no layer supplied a usable section.
|
|
257
293
|
*/
|
|
258
|
-
export declare function ResolveEffectiveRealtimeConfig(typeDefaultJson: string | null | undefined, agentJson: string | null | undefined, overridesJson: string | null | undefined, targetAgentJson?: string | null | undefined): RealtimeCoAgentConfig;
|
|
294
|
+
export declare function ResolveEffectiveRealtimeConfig(typeDefaultJson: string | null | undefined, agentJson: string | null | undefined, overridesJson: string | null | undefined, targetAgentJson?: string | null | undefined, appSettingsJson?: string | null | undefined, dynamicAllowedAgents?: RealtimeAllowedAgent[]): RealtimeCoAgentConfig;
|
|
295
|
+
/**
|
|
296
|
+
* UNION-accumulates `realtime.allowedAgents` across cascade layers (base first) plus optional
|
|
297
|
+
* dynamic additions. Deduped by `agentId` (case/whitespace-insensitive); later sources win per
|
|
298
|
+
* **field** (a later layer that only sets `disclosure` keeps an earlier layer's `label`).
|
|
299
|
+
*
|
|
300
|
+
* This is the deliberate exception to the array-replace merge rule — the lead co-agent should
|
|
301
|
+
* *accumulate* colleagues as layers add them, not have the top layer clobber the set.
|
|
302
|
+
*
|
|
303
|
+
* @param layers Parsed config layers (each a `{realtime:{allowedAgents:[…]}}` blob or null), base first.
|
|
304
|
+
* @param dynamic Optional runtime/channel-registered targets, accumulated last (highest precedence).
|
|
305
|
+
* @returns The deduped, accumulated allowed-agent list (empty when none configured).
|
|
306
|
+
*/
|
|
307
|
+
export declare function accumulateAllowedAgents(layers: Array<JSONObjectLike | null | undefined>, dynamic?: RealtimeAllowedAgent[]): RealtimeAllowedAgent[];
|
|
308
|
+
/**
|
|
309
|
+
* The effective DEFAULT delegation disclosure for the co-agent (scalar cascade result),
|
|
310
|
+
* defaulting to `'mention'` when no layer set one.
|
|
311
|
+
*/
|
|
312
|
+
export declare function GetEffectiveDisclosure(config: RealtimeCoAgentConfig | null | undefined): RealtimeDisclosurePolicy;
|
|
313
|
+
/**
|
|
314
|
+
* The effective disclosure for a SPECIFIC delegation target: the target's per-entry override
|
|
315
|
+
* when present, else the co-agent's effective default ({@link GetEffectiveDisclosure}).
|
|
316
|
+
*
|
|
317
|
+
* @param config The normalized effective configuration.
|
|
318
|
+
* @param agentId The target agent's ID.
|
|
319
|
+
*/
|
|
320
|
+
export declare function GetDisclosureForTarget(config: RealtimeCoAgentConfig | null | undefined, agentId: string | null | undefined): RealtimeDisclosurePolicy;
|
|
321
|
+
/**
|
|
322
|
+
* Maps an app's `Application.AgentSettings.Realtime` block (+ optional `RelevantAgents`) into the
|
|
323
|
+
* canonical `{"realtime":{…}}` JSON the cascade consumes as its **app layer**. Pure mapper so the
|
|
324
|
+
* call site (which reads `AgentSettingsObject`) stays thin and this module stays canonical.
|
|
325
|
+
*
|
|
326
|
+
* @param appRealtime The `AgentSettings.Realtime` overrides (Disclosure / Persona / ModelPreference).
|
|
327
|
+
* @param relevantAgents The app's `AgentSettings.RelevantAgents` mapped to allowed-agent entries.
|
|
328
|
+
* @returns Canonical app-layer JSON string, or `null` when nothing was supplied (keeps the cascade lower).
|
|
329
|
+
*/
|
|
330
|
+
export declare function BuildAppRealtimeOverridesJson(appRealtime?: {
|
|
331
|
+
Disclosure?: RealtimeDisclosurePolicy | null;
|
|
332
|
+
Persona?: {
|
|
333
|
+
Tone?: string | null;
|
|
334
|
+
SpeakingStyle?: string | null;
|
|
335
|
+
} | null;
|
|
336
|
+
ModelPreference?: string | null;
|
|
337
|
+
} | null, relevantAgents?: RealtimeAllowedAgent[] | null): string | null;
|
|
259
338
|
/**
|
|
260
339
|
* Reads the effective {@link RealtimeModeratorConfig} from a resolved config, filling absent fields from
|
|
261
340
|
* {@link REALTIME_MODERATOR_DEFAULTS}. Returns `null` when no moderator is configured at all (e.g. no
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime-coagent-config.d.ts","sourceRoot":"","sources":["../../src/realtime/realtime-coagent-config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH;;;;GAIG;AACH,eAAO,MAAM,gDAAgD,wCAAwC,CAAC;AAEtG,6DAA6D;AAC7D,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAErD,iFAAiF;AACjF,MAAM,WAAW,oBAAoB;IACjC,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,8EAA8E;AAC9E,MAAM,WAAW,mBAAmB;IAChC,2EAA2E;IAC3E,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAC9C;AAED,iCAAiC;AACjC,MAAM,WAAW,uBAAuB;IACpC,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAC9C;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,WAAW,wBAAwB;IACrC;;;;;OAKG;IACH,IAAI,CAAC,EAAE,WAAW,GAAG,gBAAgB,CAAC;IACtC;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACvC;AAED,8JAA8J;AAC9J,MAAM,WAAW,uBAAuB;IACpC,4HAA4H;IAC5H,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,8HAA8H;IAC9H,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,4BAA4B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7C,+GAA+G;IAC/G,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wKAAwK;IACxK,OAAO,CAAC,EAAE,QAAQ,GAAG,gBAAgB,CAAC;IACtC;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,0GAA0G;AAC1G,eAAO,MAAM,2BAA2B;;;2CAGE,MAAM,GAAG,IAAI;;sBAE9B,QAAQ,GAAG,gBAAgB;;CAE1C,CAAC;AAEX,sEAAsE;AACtE,MAAM,WAAW,qBAAqB;IAClC,wGAAwG;IACxG,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mDAAmD;IACnD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,kGAAkG;IAClG,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,iCAAiC;IACjC,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,2HAA2H;IAC3H,UAAU,CAAC,EAAE,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"realtime-coagent-config.d.ts","sourceRoot":"","sources":["../../src/realtime/realtime-coagent-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -146,14 +146,148 @@ export function ParseRealtimeTypeConfiguration(json) {
|
|
|
146
146
|
* @param agentJson The CO-AGENT's `TypeConfiguration` JSON (shared per-co-agent layer).
|
|
147
147
|
* @param overridesJson Runtime overrides JSON (per-session layer; already authorization-gated by the caller).
|
|
148
148
|
* @param targetAgentJson Optional TARGET agent's `TypeConfiguration` JSON (per-voiced-agent layer). Merged
|
|
149
|
-
* ABOVE the co-agent and BELOW the runtime
|
|
150
|
-
* no distinct target (e.g. the co-agent voicing itself).
|
|
149
|
+
* ABOVE the co-agent and BELOW the app/runtime-override layers regardless of argument position. Omit when
|
|
150
|
+
* there is no distinct target (e.g. the co-agent voicing itself).
|
|
151
|
+
* @param appSettingsJson Optional APP layer — `Application.AgentSettings.Realtime` translated into the
|
|
152
|
+
* canonical `{"realtime":{…}}` shape (use {@link BuildAppRealtimeOverridesJson}). Merged ABOVE the target
|
|
153
|
+
* and BELOW the runtime override. Omit when no app context is known.
|
|
154
|
+
* @param dynamicAllowedAgents Optional channel-registered delegation targets added at runtime (Move 3b),
|
|
155
|
+
* union-accumulated on top of the layer-sourced `allowedAgents`.
|
|
151
156
|
* @returns The normalized effective configuration. `realtime` is absent when no layer supplied a usable section.
|
|
152
157
|
*/
|
|
153
|
-
export function ResolveEffectiveRealtimeConfig(typeDefaultJson, agentJson, overridesJson, targetAgentJson) {
|
|
154
|
-
//
|
|
155
|
-
const
|
|
156
|
-
|
|
158
|
+
export function ResolveEffectiveRealtimeConfig(typeDefaultJson, agentJson, overridesJson, targetAgentJson, appSettingsJson, dynamicAllowedAgents) {
|
|
159
|
+
// Parse each layer once — reused for both the scalar deep-merge and the allowedAgents union.
|
|
160
|
+
const typeLayer = ParseRealtimeTypeConfiguration(typeDefaultJson);
|
|
161
|
+
const agentLayer = ParseRealtimeTypeConfiguration(agentJson);
|
|
162
|
+
const targetLayer = ParseRealtimeTypeConfiguration(targetAgentJson);
|
|
163
|
+
const appLayer = ParseRealtimeTypeConfiguration(appSettingsJson);
|
|
164
|
+
const overrideLayer = ParseRealtimeTypeConfiguration(overridesJson);
|
|
165
|
+
// Scalar fields: merge order = precedence (later wins):
|
|
166
|
+
// type-default < co-agent < target < app < runtime-override.
|
|
167
|
+
const merged = DeepMergeConfigs(typeLayer, agentLayer, targetLayer, appLayer, overrideLayer);
|
|
168
|
+
const config = normalizeConfig(merged);
|
|
169
|
+
// allowedAgents: union-accumulate across all layers (+ dynamic), since DeepMergeConfigs
|
|
170
|
+
// array-replaces. Later layers win per-entry fields; deduped by agentId.
|
|
171
|
+
const allowed = accumulateAllowedAgents([typeLayer, agentLayer, targetLayer, appLayer, overrideLayer], dynamicAllowedAgents);
|
|
172
|
+
if (allowed.length > 0) {
|
|
173
|
+
config.realtime = config.realtime ?? {};
|
|
174
|
+
config.realtime.allowedAgents = allowed;
|
|
175
|
+
}
|
|
176
|
+
return config;
|
|
177
|
+
}
|
|
178
|
+
/**
|
|
179
|
+
* Normalizes a single raw `allowedAgents` entry; returns `null` when it lacks a usable `agentId`.
|
|
180
|
+
* Omits absent optional fields so per-entry field-merge in {@link accumulateAllowedAgents} is clean.
|
|
181
|
+
*/
|
|
182
|
+
function normalizeAllowedAgent(raw) {
|
|
183
|
+
if (!isPlainObject(raw)) {
|
|
184
|
+
return null;
|
|
185
|
+
}
|
|
186
|
+
const agentId = raw['agentId'];
|
|
187
|
+
if (typeof agentId !== 'string' || agentId.trim().length === 0) {
|
|
188
|
+
return null;
|
|
189
|
+
}
|
|
190
|
+
const entry = { agentId: agentId.trim() };
|
|
191
|
+
if (typeof raw['label'] === 'string' && raw['label'].trim().length > 0) {
|
|
192
|
+
entry.label = raw['label'].trim();
|
|
193
|
+
}
|
|
194
|
+
const disclosure = raw['disclosure'];
|
|
195
|
+
if (disclosure === 'silent' || disclosure === 'mention' || disclosure === 'hand-voice') {
|
|
196
|
+
entry.disclosure = disclosure;
|
|
197
|
+
}
|
|
198
|
+
return entry;
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* UNION-accumulates `realtime.allowedAgents` across cascade layers (base first) plus optional
|
|
202
|
+
* dynamic additions. Deduped by `agentId` (case/whitespace-insensitive); later sources win per
|
|
203
|
+
* **field** (a later layer that only sets `disclosure` keeps an earlier layer's `label`).
|
|
204
|
+
*
|
|
205
|
+
* This is the deliberate exception to the array-replace merge rule — the lead co-agent should
|
|
206
|
+
* *accumulate* colleagues as layers add them, not have the top layer clobber the set.
|
|
207
|
+
*
|
|
208
|
+
* @param layers Parsed config layers (each a `{realtime:{allowedAgents:[…]}}` blob or null), base first.
|
|
209
|
+
* @param dynamic Optional runtime/channel-registered targets, accumulated last (highest precedence).
|
|
210
|
+
* @returns The deduped, accumulated allowed-agent list (empty when none configured).
|
|
211
|
+
*/
|
|
212
|
+
export function accumulateAllowedAgents(layers, dynamic) {
|
|
213
|
+
const map = new Map();
|
|
214
|
+
const ingest = (list) => {
|
|
215
|
+
if (!Array.isArray(list)) {
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
for (const raw of list) {
|
|
219
|
+
const entry = normalizeAllowedAgent(raw);
|
|
220
|
+
if (!entry) {
|
|
221
|
+
continue;
|
|
222
|
+
}
|
|
223
|
+
const key = entry.agentId.trim().toLowerCase();
|
|
224
|
+
const existing = map.get(key);
|
|
225
|
+
map.set(key, existing ? { ...existing, ...entry } : entry);
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
for (const layer of layers) {
|
|
229
|
+
if (isPlainObject(layer)) {
|
|
230
|
+
const rt = layer['realtime'];
|
|
231
|
+
if (isPlainObject(rt)) {
|
|
232
|
+
ingest(rt['allowedAgents']);
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
ingest(dynamic);
|
|
237
|
+
return Array.from(map.values());
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* The effective DEFAULT delegation disclosure for the co-agent (scalar cascade result),
|
|
241
|
+
* defaulting to `'mention'` when no layer set one.
|
|
242
|
+
*/
|
|
243
|
+
export function GetEffectiveDisclosure(config) {
|
|
244
|
+
return config?.realtime?.disclosure ?? 'mention';
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* The effective disclosure for a SPECIFIC delegation target: the target's per-entry override
|
|
248
|
+
* when present, else the co-agent's effective default ({@link GetEffectiveDisclosure}).
|
|
249
|
+
*
|
|
250
|
+
* @param config The normalized effective configuration.
|
|
251
|
+
* @param agentId The target agent's ID.
|
|
252
|
+
*/
|
|
253
|
+
export function GetDisclosureForTarget(config, agentId) {
|
|
254
|
+
const target = config?.realtime?.allowedAgents?.find((a) => idsEqual(a.agentId, agentId));
|
|
255
|
+
return target?.disclosure ?? GetEffectiveDisclosure(config);
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* Maps an app's `Application.AgentSettings.Realtime` block (+ optional `RelevantAgents`) into the
|
|
259
|
+
* canonical `{"realtime":{…}}` JSON the cascade consumes as its **app layer**. Pure mapper so the
|
|
260
|
+
* call site (which reads `AgentSettingsObject`) stays thin and this module stays canonical.
|
|
261
|
+
*
|
|
262
|
+
* @param appRealtime The `AgentSettings.Realtime` overrides (Disclosure / Persona / ModelPreference).
|
|
263
|
+
* @param relevantAgents The app's `AgentSettings.RelevantAgents` mapped to allowed-agent entries.
|
|
264
|
+
* @returns Canonical app-layer JSON string, or `null` when nothing was supplied (keeps the cascade lower).
|
|
265
|
+
*/
|
|
266
|
+
export function BuildAppRealtimeOverridesJson(appRealtime, relevantAgents) {
|
|
267
|
+
const realtime = {};
|
|
268
|
+
const disclosure = appRealtime?.Disclosure;
|
|
269
|
+
if (disclosure === 'silent' || disclosure === 'mention' || disclosure === 'hand-voice') {
|
|
270
|
+
realtime.disclosure = disclosure;
|
|
271
|
+
}
|
|
272
|
+
const tone = appRealtime?.Persona?.Tone?.trim();
|
|
273
|
+
const style = appRealtime?.Persona?.SpeakingStyle?.trim();
|
|
274
|
+
if (tone || style) {
|
|
275
|
+
realtime.voice = { default: {} };
|
|
276
|
+
if (tone) {
|
|
277
|
+
realtime.voice.default.tone = tone;
|
|
278
|
+
}
|
|
279
|
+
if (style) {
|
|
280
|
+
realtime.voice.default.speakingStyle = style;
|
|
281
|
+
}
|
|
282
|
+
}
|
|
283
|
+
const model = appRealtime?.ModelPreference?.trim();
|
|
284
|
+
if (model) {
|
|
285
|
+
realtime.modelPreference = model;
|
|
286
|
+
}
|
|
287
|
+
if (relevantAgents && relevantAgents.length > 0) {
|
|
288
|
+
realtime.allowedAgents = relevantAgents;
|
|
289
|
+
}
|
|
290
|
+
return Object.keys(realtime).length > 0 ? JSON.stringify({ realtime }) : null;
|
|
157
291
|
}
|
|
158
292
|
/** Normalizes a merged raw config object into the typed, sanity-checked shape. */
|
|
159
293
|
function normalizeConfig(merged) {
|
|
@@ -169,6 +303,13 @@ function normalizeConfig(merged) {
|
|
|
169
303
|
if (typeof rawRealtime['allowUserModelOverride'] === 'boolean') {
|
|
170
304
|
section.allowUserModelOverride = rawRealtime['allowUserModelOverride'];
|
|
171
305
|
}
|
|
306
|
+
const disclosure = rawRealtime['disclosure'];
|
|
307
|
+
if (disclosure === 'silent' || disclosure === 'mention' || disclosure === 'hand-voice') {
|
|
308
|
+
section.disclosure = disclosure;
|
|
309
|
+
}
|
|
310
|
+
// NOTE: `allowedAgents` is intentionally NOT normalized here — it is union-accumulated across
|
|
311
|
+
// ALL layers by ResolveEffectiveRealtimeConfig (the merged blob only carries the array-replaced
|
|
312
|
+
// top layer, which would be wrong as a union).
|
|
172
313
|
const voice = normalizeVoice(rawRealtime['voice']);
|
|
173
314
|
if (voice) {
|
|
174
315
|
section.voice = voice;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"realtime-coagent-config.js","sourceRoot":"","sources":["../../src/realtime/realtime-coagent-config.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"realtime-coagent-config.js","sourceRoot":"","sources":["../../src/realtime/realtime-coagent-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Pure, zero-dependency server-side audio recording utility for
|
|
3
|
+
* MemberJunction realtime sessions.
|
|
4
|
+
*
|
|
5
|
+
* Accumulates realtime PCM audio frames (model output + user input), mixes them
|
|
6
|
+
* into a single mono PCM16 timeline, and encodes a canonical WAV file. The only
|
|
7
|
+
* runtime dependency is the Node `Buffer` global — no external npm packages.
|
|
8
|
+
*
|
|
9
|
+
* @module @memberjunction/ai-agents/realtime/realtime-recording-capture
|
|
10
|
+
*/
|
|
11
|
+
/** Media kind tag stored on a realtime recording session. */
|
|
12
|
+
export type RealtimeRecordingMedia = 'Audio' | 'AudioVideo';
|
|
13
|
+
/**
|
|
14
|
+
* Construction options for {@link RealtimeRecordingController}.
|
|
15
|
+
*/
|
|
16
|
+
export interface RealtimeRecordingOptions {
|
|
17
|
+
/** Output (model) PCM sample rate in Hz. Default 24000 (OpenAI/Gemini emit 24k). */
|
|
18
|
+
OutputSampleRate?: number;
|
|
19
|
+
/** Input (user/mic) PCM sample rate in Hz. Default 24000 (OpenAI). Gemini input = 16000. */
|
|
20
|
+
InputSampleRate?: number;
|
|
21
|
+
/** Media kind tag stored on the session. Default 'Audio'. */
|
|
22
|
+
Media?: RealtimeRecordingMedia;
|
|
23
|
+
/** Injectable clock (ms epoch) for deterministic tests. Default () => Date.now(). */
|
|
24
|
+
Now?: () => number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Accumulates realtime PCM audio frames from both the model (outbound) and the
|
|
28
|
+
* user (inbound) and mixes them into a single mono PCM16 WAV on demand.
|
|
29
|
+
*
|
|
30
|
+
* Lifecycle: construct → {@link Start} → {@link AppendOutbound}/{@link AppendInbound}
|
|
31
|
+
* (many) → {@link Stop} → {@link EncodeWav}. {@link Reset} returns the instance to
|
|
32
|
+
* a pristine state so it can be reused.
|
|
33
|
+
*/
|
|
34
|
+
export declare class RealtimeRecordingController {
|
|
35
|
+
private outputSampleRate;
|
|
36
|
+
private inputSampleRate;
|
|
37
|
+
private media;
|
|
38
|
+
private now;
|
|
39
|
+
private recording;
|
|
40
|
+
private startedAt;
|
|
41
|
+
private startEpochMs;
|
|
42
|
+
private outboundFrames;
|
|
43
|
+
private inboundFrames;
|
|
44
|
+
constructor(options?: RealtimeRecordingOptions);
|
|
45
|
+
/** Stamp t0 and begin accepting frames. Idempotent (second call is a no-op). */
|
|
46
|
+
Start(): void;
|
|
47
|
+
/** Stop accepting frames. Idempotent. Does NOT clear buffers. */
|
|
48
|
+
Stop(): void;
|
|
49
|
+
/** Clear all state so the instance can be reused. */
|
|
50
|
+
Reset(): void;
|
|
51
|
+
get IsRecording(): boolean;
|
|
52
|
+
/** The wall-clock moment {@link Start} stamped, or null if never started. */
|
|
53
|
+
get StartedAt(): Date | null;
|
|
54
|
+
get Media(): RealtimeRecordingMedia;
|
|
55
|
+
/** Whether any non-empty frame was captured. */
|
|
56
|
+
get HasAudio(): boolean;
|
|
57
|
+
/** ms since {@link Start} per the injected clock; 0 if not started (never negative). */
|
|
58
|
+
NowOffsetMs(): number;
|
|
59
|
+
/**
|
|
60
|
+
* Append a model-output audio frame (ArrayBuffer of little-endian PCM16).
|
|
61
|
+
* No-op if not recording or empty. The bytes are copied — the caller's
|
|
62
|
+
* ArrayBuffer is not retained.
|
|
63
|
+
*/
|
|
64
|
+
AppendOutbound(chunk: ArrayBuffer): void;
|
|
65
|
+
/** Append a user-input audio frame. Same contract as {@link AppendOutbound}. */
|
|
66
|
+
AppendInbound(chunk: ArrayBuffer): void;
|
|
67
|
+
/**
|
|
68
|
+
* Mix everything captured into a mono PCM16 WAV.
|
|
69
|
+
* @returns The encoded buffer, duration, and sample rate; or null if {@link HasAudio} is false.
|
|
70
|
+
*/
|
|
71
|
+
EncodeWav(): {
|
|
72
|
+
Buffer: Buffer;
|
|
73
|
+
DurationMs: number;
|
|
74
|
+
SampleRate: number;
|
|
75
|
+
} | null;
|
|
76
|
+
/**
|
|
77
|
+
* Compute capture-time waveform peaks from the accumulated PCM: a normalized `0..1` max-abs
|
|
78
|
+
* amplitude per bucket (one bucket per rendered waveform bar). Mirrors the client-direct peak
|
|
79
|
+
* math so server-bridged recordings render the same kind of waveform; the result is persisted
|
|
80
|
+
* as a `peaks.json` sidecar so a viewer renders the waveform without re-decoding the audio.
|
|
81
|
+
*
|
|
82
|
+
* @param buckets Desired bucket count (waveform resolution). Default 600; clamped to `>= 1` and
|
|
83
|
+
* never exceeds the sample count (a short recording yields at most one peak per sample).
|
|
84
|
+
* @returns A bounded array of normalized `0..1` peaks; `[]` when there is no audio (or silence).
|
|
85
|
+
*/
|
|
86
|
+
GetPeaks(buckets?: number): number[];
|
|
87
|
+
/**
|
|
88
|
+
* Mix all captured frames into a single mono PCM16 timeline at the output sample rate.
|
|
89
|
+
* Shared by {@link EncodeWav} and {@link GetPeaks} so the WAV and the peaks describe the
|
|
90
|
+
* exact same signal. Returns `null` when nothing was captured.
|
|
91
|
+
*/
|
|
92
|
+
private mixTimeline;
|
|
93
|
+
/**
|
|
94
|
+
* Downsample a PCM16 timeline into `buckets` normalized `0..1` max-abs peaks. Contiguous,
|
|
95
|
+
* index-ordered buckets; the loudest bucket becomes `1`. An all-silent timeline yields `[]`.
|
|
96
|
+
*/
|
|
97
|
+
private computePeaks;
|
|
98
|
+
/** Decode + copy a chunk into a frame and push it onto the given list. */
|
|
99
|
+
private appendFrame;
|
|
100
|
+
/**
|
|
101
|
+
* Decode a little-endian PCM16 ArrayBuffer into a copied Int16Array.
|
|
102
|
+
* Odd-length buffers (not a multiple of 2) drop the trailing byte.
|
|
103
|
+
*/
|
|
104
|
+
private decodePcm16;
|
|
105
|
+
/** Whether any frame in the list carries at least one sample. */
|
|
106
|
+
private frameHasSamples;
|
|
107
|
+
/** The number of target-rate samples a frame occupies (after any resample). */
|
|
108
|
+
private frameTargetLength;
|
|
109
|
+
/** Start sample index for a frame given its offset and the target rate. */
|
|
110
|
+
private frameStartSample;
|
|
111
|
+
/** The total length (in target-rate samples) needed to cover the furthest frame end. */
|
|
112
|
+
private computeTimelineLength;
|
|
113
|
+
/** Sum each frame's (possibly resampled) samples into the mono accumulator. */
|
|
114
|
+
private mixFrames;
|
|
115
|
+
/**
|
|
116
|
+
* Resample PCM16 samples from sourceRate to targetRate via simple linear
|
|
117
|
+
* interpolation. Returns a Float64Array (caller sums into the accumulator).
|
|
118
|
+
*/
|
|
119
|
+
private resampleLinear;
|
|
120
|
+
/** Clamp the float accumulator into the Int16 range and round to integers. */
|
|
121
|
+
private clampToInt16;
|
|
122
|
+
/** Build a canonical 44-byte WAV/PCM header followed by the sample data. */
|
|
123
|
+
private encodeWavBuffer;
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=realtime-recording-capture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"realtime-recording-capture.d.ts","sourceRoot":"","sources":["../../src/realtime/realtime-recording-capture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,6DAA6D;AAC7D,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,YAAY,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4FAA4F;IAC5F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6DAA6D;IAC7D,KAAK,CAAC,EAAE,sBAAsB,CAAC;IAC/B,qFAAqF;IACrF,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACtB;AAoBD;;;;;;;GAOG;AACH,qBAAa,2BAA2B;IACpC,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,GAAG,CAAe;IAE1B,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAuB;IAE3C,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,aAAa,CAAuB;gBAEhC,OAAO,CAAC,EAAE,wBAAwB;IAO9C,gFAAgF;IACzE,KAAK,IAAI,IAAI;IAUpB,iEAAiE;IAC1D,IAAI,IAAI,IAAI;IAInB,qDAAqD;IAC9C,KAAK,IAAI,IAAI;IAQpB,IAAW,WAAW,IAAI,OAAO,CAEhC;IAED,6EAA6E;IAC7E,IAAW,SAAS,IAAI,IAAI,GAAG,IAAI,CAElC;IAED,IAAW,KAAK,IAAI,sBAAsB,CAEzC;IAED,gDAAgD;IAChD,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,wFAAwF;IACjF,WAAW,IAAI,MAAM;IAQ5B;;;;OAIG;IACI,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAI/C,gFAAgF;IACzE,aAAa,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAI9C;;;OAGG;IACI,SAAS,IAAI;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAWrF;;;;;;;;;OASG;IACI,QAAQ,CAAC,OAAO,GAAE,MAA6B,GAAG,MAAM,EAAE;IAYjE;;;;OAIG;IACH,OAAO,CAAC,WAAW;IAenB;;;OAGG;IACH,OAAO,CAAC,YAAY;IA6BpB,0EAA0E;IAC1E,OAAO,CAAC,WAAW;IAWnB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAOnB,iEAAiE;IACjE,OAAO,CAAC,eAAe;IAIvB,+EAA+E;IAC/E,OAAO,CAAC,iBAAiB;IAOzB,2EAA2E;IAC3E,OAAO,CAAC,gBAAgB;IAIxB,wFAAwF;IACxF,OAAO,CAAC,qBAAqB;IAmB7B,+EAA+E;IAC/E,OAAO,CAAC,SAAS;IAgBjB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAkBtB,8EAA8E;IAC9E,OAAO,CAAC,YAAY;IAcpB,4EAA4E;IAC5E,OAAO,CAAC,eAAe;CAkC1B"}
|