@openclaw/voice-call 2026.7.2-beta.7 → 2026.8.1-beta.2

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.
@@ -1,7 +1,8 @@
1
- import { h as resolveCallAgentId, m as resolveVoiceResponseModel, x as resolveVoiceCallSessionKey } from "./runtime-entry-D0UJiLfi.js";
2
- import { isRecord, normalizeLowercaseStringOrEmpty, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
1
+ import { h as resolveCallAgentId, m as resolveVoiceResponseModel, x as resolveVoiceCallSessionKey } from "./runtime-entry-F13eJ4pp.js";
2
+ import { filterStringEntries, isRecord, normalizeLowercaseStringOrEmpty, normalizeStringEntries } from "openclaw/plugin-sdk/string-coerce-runtime";
3
+ import { resolveDefaultModelForAgent } from "openclaw/plugin-sdk/agent-runtime";
3
4
  import crypto from "node:crypto";
4
- import { ModelSelectionLockedError, applyModelOverrideToSessionEntry, resolvePersistedSessionRuntimeId } from "openclaw/plugin-sdk/model-session-runtime";
5
+ import { ModelSelectionLockedError, applyModelOverrideWithAuthProfileCompatibility, resolvePersistedSessionRuntimeId } from "openclaw/plugin-sdk/model-session-runtime";
5
6
  //#region extensions/voice-call/src/response-generator.ts
6
7
  /**
7
8
  * Voice call response generator - uses the embedded OpenClaw agent for tool support.
@@ -11,7 +12,7 @@ function readExplicitToolsAllow(value) {
11
12
  if (!isRecord(value)) return;
12
13
  const allow = value.allow;
13
14
  if (!Array.isArray(allow)) return;
14
- return allow.filter((entry) => typeof entry === "string");
15
+ return filterStringEntries(allow);
15
16
  }
16
17
  function resolveVoiceAgentToolsAllow(config, agentId) {
17
18
  const agents = isRecord(config.agents) ? config.agents : void 0;
@@ -144,6 +145,10 @@ async function generateVoiceResponse(params) {
144
145
  voiceConfig,
145
146
  agentRuntime
146
147
  });
148
+ const configuredModel = resolveDefaultModelForAgent({
149
+ cfg,
150
+ agentId
151
+ });
147
152
  let sessionEntry = existingSessionEntry;
148
153
  if (sessionEntry?.modelSelectionLocked === true && voiceConfig.responseModel) throw new ModelSelectionLockedError();
149
154
  if (!sessionEntry?.sessionId || voiceConfig.responseModel) sessionEntry = await agentRuntime.session.patchSessionEntry({
@@ -160,8 +165,11 @@ async function generateVoiceResponse(params) {
160
165
  sessionId: crypto.randomUUID(),
161
166
  updatedAt: now
162
167
  };
163
- if (voiceConfig.responseModel) applyModelOverrideToSessionEntry({
168
+ if (voiceConfig.responseModel) applyModelOverrideWithAuthProfileCompatibility({
169
+ cfg,
170
+ agentDir,
164
171
  entry: next,
172
+ currentProvider: entry.providerOverride?.trim() || entry.modelProvider?.trim() || configuredModel.provider,
165
173
  selection: {
166
174
  provider,
167
175
  model