@livekit/agents 1.0.47 → 1.0.48

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.
Files changed (112) hide show
  1. package/dist/beta/index.cjs +29 -0
  2. package/dist/beta/index.cjs.map +1 -0
  3. package/dist/beta/index.d.cts +2 -0
  4. package/dist/beta/index.d.ts +2 -0
  5. package/dist/beta/index.d.ts.map +1 -0
  6. package/dist/beta/index.js +7 -0
  7. package/dist/beta/index.js.map +1 -0
  8. package/dist/beta/workflows/index.cjs +29 -0
  9. package/dist/beta/workflows/index.cjs.map +1 -0
  10. package/dist/beta/workflows/index.d.cts +2 -0
  11. package/dist/beta/workflows/index.d.ts +2 -0
  12. package/dist/beta/workflows/index.d.ts.map +1 -0
  13. package/dist/beta/workflows/index.js +7 -0
  14. package/dist/beta/workflows/index.js.map +1 -0
  15. package/dist/beta/workflows/task_group.cjs +162 -0
  16. package/dist/beta/workflows/task_group.cjs.map +1 -0
  17. package/dist/beta/workflows/task_group.d.cts +32 -0
  18. package/dist/beta/workflows/task_group.d.ts +32 -0
  19. package/dist/beta/workflows/task_group.d.ts.map +1 -0
  20. package/dist/beta/workflows/task_group.js +138 -0
  21. package/dist/beta/workflows/task_group.js.map +1 -0
  22. package/dist/index.cjs +3 -0
  23. package/dist/index.cjs.map +1 -1
  24. package/dist/index.d.cts +2 -1
  25. package/dist/index.d.ts +2 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +2 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/inference/api_protos.d.cts +59 -59
  30. package/dist/inference/api_protos.d.ts +59 -59
  31. package/dist/llm/chat_context.cjs +89 -1
  32. package/dist/llm/chat_context.cjs.map +1 -1
  33. package/dist/llm/chat_context.d.cts +10 -1
  34. package/dist/llm/chat_context.d.ts +10 -1
  35. package/dist/llm/chat_context.d.ts.map +1 -1
  36. package/dist/llm/chat_context.js +89 -1
  37. package/dist/llm/chat_context.js.map +1 -1
  38. package/dist/llm/chat_context.test.cjs +43 -0
  39. package/dist/llm/chat_context.test.cjs.map +1 -1
  40. package/dist/llm/chat_context.test.js +43 -0
  41. package/dist/llm/chat_context.test.js.map +1 -1
  42. package/dist/llm/index.cjs +2 -0
  43. package/dist/llm/index.cjs.map +1 -1
  44. package/dist/llm/index.d.cts +1 -1
  45. package/dist/llm/index.d.ts +1 -1
  46. package/dist/llm/index.d.ts.map +1 -1
  47. package/dist/llm/index.js +3 -1
  48. package/dist/llm/index.js.map +1 -1
  49. package/dist/llm/provider_format/index.d.cts +1 -1
  50. package/dist/llm/provider_format/index.d.ts +1 -1
  51. package/dist/llm/tool_context.cjs +7 -0
  52. package/dist/llm/tool_context.cjs.map +1 -1
  53. package/dist/llm/tool_context.d.cts +10 -2
  54. package/dist/llm/tool_context.d.ts +10 -2
  55. package/dist/llm/tool_context.d.ts.map +1 -1
  56. package/dist/llm/tool_context.js +6 -0
  57. package/dist/llm/tool_context.js.map +1 -1
  58. package/dist/utils.cjs +1 -0
  59. package/dist/utils.cjs.map +1 -1
  60. package/dist/utils.d.ts.map +1 -1
  61. package/dist/utils.js +1 -0
  62. package/dist/utils.js.map +1 -1
  63. package/dist/version.cjs +1 -1
  64. package/dist/version.js +1 -1
  65. package/dist/voice/agent.cjs +9 -0
  66. package/dist/voice/agent.cjs.map +1 -1
  67. package/dist/voice/agent.d.cts +1 -0
  68. package/dist/voice/agent.d.ts +1 -0
  69. package/dist/voice/agent.d.ts.map +1 -1
  70. package/dist/voice/agent.js +9 -0
  71. package/dist/voice/agent.js.map +1 -1
  72. package/dist/voice/agent_activity.cjs +31 -8
  73. package/dist/voice/agent_activity.cjs.map +1 -1
  74. package/dist/voice/agent_activity.d.cts +7 -0
  75. package/dist/voice/agent_activity.d.ts +7 -0
  76. package/dist/voice/agent_activity.d.ts.map +1 -1
  77. package/dist/voice/agent_activity.js +31 -8
  78. package/dist/voice/agent_activity.js.map +1 -1
  79. package/dist/voice/room_io/room_io.cjs +11 -2
  80. package/dist/voice/room_io/room_io.cjs.map +1 -1
  81. package/dist/voice/room_io/room_io.d.ts.map +1 -1
  82. package/dist/voice/room_io/room_io.js +12 -3
  83. package/dist/voice/room_io/room_io.js.map +1 -1
  84. package/dist/voice/testing/fake_llm.cjs +127 -0
  85. package/dist/voice/testing/fake_llm.cjs.map +1 -0
  86. package/dist/voice/testing/fake_llm.d.cts +30 -0
  87. package/dist/voice/testing/fake_llm.d.ts +30 -0
  88. package/dist/voice/testing/fake_llm.d.ts.map +1 -0
  89. package/dist/voice/testing/fake_llm.js +103 -0
  90. package/dist/voice/testing/fake_llm.js.map +1 -0
  91. package/dist/voice/testing/index.cjs +3 -0
  92. package/dist/voice/testing/index.cjs.map +1 -1
  93. package/dist/voice/testing/index.d.cts +1 -0
  94. package/dist/voice/testing/index.d.ts +1 -0
  95. package/dist/voice/testing/index.d.ts.map +1 -1
  96. package/dist/voice/testing/index.js +2 -0
  97. package/dist/voice/testing/index.js.map +1 -1
  98. package/package.json +1 -1
  99. package/src/beta/index.ts +9 -0
  100. package/src/beta/workflows/index.ts +9 -0
  101. package/src/beta/workflows/task_group.ts +194 -0
  102. package/src/index.ts +2 -1
  103. package/src/llm/chat_context.test.ts +48 -0
  104. package/src/llm/chat_context.ts +123 -0
  105. package/src/llm/index.ts +1 -0
  106. package/src/llm/tool_context.ts +14 -0
  107. package/src/utils.ts +5 -0
  108. package/src/voice/agent.ts +11 -0
  109. package/src/voice/agent_activity.ts +44 -6
  110. package/src/voice/room_io/room_io.ts +14 -3
  111. package/src/voice/testing/fake_llm.ts +138 -0
  112. package/src/voice/testing/index.ts +2 -0
@@ -14,6 +14,11 @@ import { type AgentSession, type TurnDetectionMode } from './agent_session.js';
14
14
  import { type EndOfTurnInfo, type PreemptiveGenerationInfo, type RecognitionHooks } from './audio_recognition.js';
15
15
  import { SpeechHandle } from './speech_handle.js';
16
16
  export declare const agentActivityStorage: AsyncLocalStorage<AgentActivity>;
17
+ export declare const onEnterStorage: AsyncLocalStorage<OnEnterData>;
18
+ interface OnEnterData {
19
+ session: AgentSession;
20
+ agent: Agent;
21
+ }
17
22
  export declare class AgentActivity implements RecognitionHooks {
18
23
  agent: Agent;
19
24
  agentSession: AgentSession;
@@ -63,6 +68,7 @@ export declare class AgentActivity implements RecognitionHooks {
63
68
  get turnDetection(): TurnDetectionMode | undefined;
64
69
  get toolCtx(): ToolContext;
65
70
  updateChatCtx(chatCtx: ChatContext): Promise<void>;
71
+ updateTools(tools: ToolContext): Promise<void>;
66
72
  updateOptions({ toolChoice }: {
67
73
  toolChoice?: ToolChoice | null;
68
74
  }): void;
@@ -129,4 +135,5 @@ export declare class AgentActivity implements RecognitionHooks {
129
135
  close(): Promise<void>;
130
136
  private _closeSessionResources;
131
137
  }
138
+ export {};
132
139
  //# sourceMappingURL=agent_activity.d.ts.map
@@ -14,6 +14,11 @@ import { type AgentSession, type TurnDetectionMode } from './agent_session.js';
14
14
  import { type EndOfTurnInfo, type PreemptiveGenerationInfo, type RecognitionHooks } from './audio_recognition.js';
15
15
  import { SpeechHandle } from './speech_handle.js';
16
16
  export declare const agentActivityStorage: AsyncLocalStorage<AgentActivity>;
17
+ export declare const onEnterStorage: AsyncLocalStorage<OnEnterData>;
18
+ interface OnEnterData {
19
+ session: AgentSession;
20
+ agent: Agent;
21
+ }
17
22
  export declare class AgentActivity implements RecognitionHooks {
18
23
  agent: Agent;
19
24
  agentSession: AgentSession;
@@ -63,6 +68,7 @@ export declare class AgentActivity implements RecognitionHooks {
63
68
  get turnDetection(): TurnDetectionMode | undefined;
64
69
  get toolCtx(): ToolContext;
65
70
  updateChatCtx(chatCtx: ChatContext): Promise<void>;
71
+ updateTools(tools: ToolContext): Promise<void>;
66
72
  updateOptions({ toolChoice }: {
67
73
  toolChoice?: ToolChoice | null;
68
74
  }): void;
@@ -129,4 +135,5 @@ export declare class AgentActivity implements RecognitionHooks {
129
135
  close(): Promise<void>;
130
136
  private _closeSessionResources;
131
137
  }
138
+ export {};
132
139
  //# sourceMappingURL=agent_activity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent_activity.d.ts","sourceRoot":"","sources":["../../src/voice/agent_activity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent_activity.d.ts","sourceRoot":"","sources":["../../src/voice/agent_activity.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,8 @@ import { ReadableStream } from "node:stream/web";
6
6
  import { ChatMessage } from "../llm/chat_context.js";
7
7
  import {
8
8
  LLM,
9
- RealtimeModel
9
+ RealtimeModel,
10
+ ToolFlag
10
11
  } from "../llm/index.js";
11
12
  import { isSameToolChoice, isSameToolContext } from "../llm/tool_context.js";
12
13
  import { log } from "../log.js";
@@ -48,6 +49,7 @@ import {
48
49
  import { SpeechHandle } from "./speech_handle.js";
49
50
  import { setParticipantSpanAttributes } from "./utils.js";
50
51
  const agentActivityStorage = new AsyncLocalStorage();
52
+ const onEnterStorage = new AsyncLocalStorage();
51
53
  class AgentActivity {
52
54
  agent;
53
55
  agentSession;
@@ -247,11 +249,14 @@ class AgentActivity {
247
249
  this._resumeSchedulingTask();
248
250
  if (runOnEnter) {
249
251
  this._onEnterTask = this.createSpeechTask({
250
- taskFn: () => tracer.startActiveSpan(async () => this.agent.onEnter(), {
251
- name: "on_enter",
252
- context: trace.setSpan(ROOT_CONTEXT, startSpan),
253
- attributes: { [traceTypes.ATTR_AGENT_LABEL]: this.agent.id }
254
- }),
252
+ taskFn: () => onEnterStorage.run(
253
+ { session: this.agentSession, agent: this.agent },
254
+ () => tracer.startActiveSpan(async () => this.agent.onEnter(), {
255
+ name: "on_enter",
256
+ context: trace.setSpan(ROOT_CONTEXT, startSpan),
257
+ attributes: { [traceTypes.ATTR_AGENT_LABEL]: this.agent.id }
258
+ })
259
+ ),
255
260
  inlineTask: true,
256
261
  name: "AgentActivity_onEnter"
257
262
  });
@@ -317,6 +322,16 @@ class AgentActivity {
317
322
  });
318
323
  }
319
324
  }
325
+ // TODO: Add when AgentConfigUpdate is ported to ChatContext.
326
+ async updateTools(tools) {
327
+ this.agent._tools = { ...tools };
328
+ if (this.realtimeSession) {
329
+ await this.realtimeSession.updateTools(tools);
330
+ }
331
+ if (this.llm instanceof LLM) {
332
+ await this.updateChatCtx(this.agent._chatCtx.copy({ toolCtx: tools }));
333
+ }
334
+ }
320
335
  updateOptions({ toolChoice }) {
321
336
  if (toolChoice !== void 0) {
322
337
  this.toolChoice = toolChoice;
@@ -808,11 +823,18 @@ class AgentActivity {
808
823
  instructions = `${this.agent.instructions}
809
824
  ${instructions}`;
810
825
  }
826
+ const onEnterData = onEnterStorage.getStore();
827
+ const shouldFilterTools = (onEnterData == null ? void 0 : onEnterData.agent) === this.agent && (onEnterData == null ? void 0 : onEnterData.session) === this.agentSession;
828
+ const tools = shouldFilterTools ? Object.fromEntries(
829
+ Object.entries(this.agent.toolCtx).filter(
830
+ ([, fnTool]) => !(fnTool.flags & ToolFlag.IGNORE_ON_ENTER)
831
+ )
832
+ ) : this.agent.toolCtx;
811
833
  const task = this.createSpeechTask({
812
834
  taskFn: (abortController) => this.pipelineReplyTask(
813
835
  handle,
814
836
  chatCtx ?? this.agent.chatCtx,
815
- this.agent.toolCtx,
837
+ tools,
816
838
  {
817
839
  toolChoice: toOaiToolChoice(toolChoice !== void 0 ? toolChoice : this.toolChoice)
818
840
  },
@@ -1891,6 +1913,7 @@ function toOaiToolChoice(toolChoice) {
1891
1913
  }
1892
1914
  export {
1893
1915
  AgentActivity,
1894
- agentActivityStorage
1916
+ agentActivityStorage,
1917
+ onEnterStorage
1895
1918
  };
1896
1919
  //# sourceMappingURL=agent_activity.js.map