retell-sync-cli 3.3.0 → 3.5.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/dist/cli.js +29 -8
- package/package.json +1 -1
- package/.todo +0 -1
package/dist/cli.js
CHANGED
|
@@ -113746,6 +113746,7 @@ var agentFieldDocs = {
|
|
|
113746
113746
|
fallback_voice_ids: "Fallback voices when primary TTS provider has outages. Must be from different providers.",
|
|
113747
113747
|
interruption_sensitivity: "How sensitive to user interruptions [0,1]. Lower = harder to interrupt. Default 1. Set to 0 to never interrupt.",
|
|
113748
113748
|
language: "Language/dialect for speech recognition. Default en-US. Use 'multi' for multilingual.",
|
|
113749
|
+
llm_websocket_url: "Websocket URL for custom LLM. Only applies to agents with custom-llm response engine type.",
|
|
113749
113750
|
max_call_duration_ms: "Max call length in ms. Min 60000 (1 min), max 7200000 (2 hours). Default 3600000 (1 hour).",
|
|
113750
113751
|
normalize_for_speech: "Normalize numbers, currency, dates to spoken form for consistent synthesis.",
|
|
113751
113752
|
opt_in_signed_url: "Enable signed URLs for public logs/recordings with security signatures that expire after 24 hours.",
|
|
@@ -113760,7 +113761,6 @@ var agentFieldDocs = {
|
|
|
113760
113761
|
signed_url_expiration_ms: "Signed URL expiration time in ms. Only applies when opt_in_signed_url is true. Default 86400000 (24 hours).",
|
|
113761
113762
|
stt_mode: "Speech-to-text mode. Options: fast, accurate. Default fast.",
|
|
113762
113763
|
user_dtmf_options: "DTMF options for user input.",
|
|
113763
|
-
version_title: "Title for this version of the agent.",
|
|
113764
113764
|
vocab_specialization: "Vocabulary set for transcription. Options: general, medical. Default general. English only.",
|
|
113765
113765
|
voice_id: "Unique voice ID. Find available voices in Dashboard.",
|
|
113766
113766
|
voice_model: "Voice model for selected voice. Only elevenlab voices have model selections.",
|
|
@@ -134737,7 +134737,12 @@ function canonicalizeFromApi({
|
|
|
134737
134737
|
const requiredConversationFlows = t3(latestAgents, t9((a7) => conversationFlows.find((cf3) => a7.response_engine.type === "conversation-flow" && a7.response_engine.conversation_flow_id === cf3.conversation_flow_id && a7.response_engine.version === cf3.version && a7.is_published === cf3.is_published)), n3(e4));
|
|
134738
134738
|
const requiredLLMs = t3(latestAgents, t9((a7) => llms.find((llm) => a7.response_engine.type === "retell-llm" && a7.response_engine.llm_id === llm.llm_id && a7.response_engine.version === llm.version && a7.is_published === llm.is_published)), n3(e4));
|
|
134739
134739
|
return {
|
|
134740
|
-
voiceAgents: latestAgents.map(({
|
|
134740
|
+
voiceAgents: latestAgents.map(({
|
|
134741
|
+
agent_id: _id,
|
|
134742
|
+
version: version2,
|
|
134743
|
+
version_title: _versionTitle,
|
|
134744
|
+
...rest
|
|
134745
|
+
}) => n9({ ...rest, _id, _version: version2 ?? 0 }, [
|
|
134741
134746
|
"last_modification_timestamp",
|
|
134742
134747
|
"is_published"
|
|
134743
134748
|
])),
|
|
@@ -134851,10 +134856,11 @@ async function serializeState(state, {
|
|
|
134851
134856
|
const hash2 = agent._id.slice(-FILE_HASH_LENGTH);
|
|
134852
134857
|
const agentDirName = `${toSnakeCase(agentName)}_${hash2}`;
|
|
134853
134858
|
const agentDirPath = path15.join(agentsDir, agentDirName);
|
|
134859
|
+
const responseEngineForMeta = agent.response_engine.type === "custom-llm" ? { type: "custom-llm" } : agent.response_engine;
|
|
134854
134860
|
files[path15.join(agentDirPath, ".agent.json")] = await writeJson({
|
|
134855
134861
|
id: agent._id,
|
|
134856
134862
|
version: agent._version,
|
|
134857
|
-
response_engine:
|
|
134863
|
+
response_engine: responseEngineForMeta
|
|
134858
134864
|
});
|
|
134859
134865
|
const {
|
|
134860
134866
|
_id: _agentId,
|
|
@@ -134862,6 +134868,9 @@ async function serializeState(state, {
|
|
|
134862
134868
|
response_engine: _responseEngine,
|
|
134863
134869
|
...agentConfig
|
|
134864
134870
|
} = agent;
|
|
134871
|
+
if (agent.response_engine.type === "custom-llm") {
|
|
134872
|
+
agentConfig.llm_websocket_url = agent.response_engine.llm_websocket_url;
|
|
134873
|
+
}
|
|
134865
134874
|
if (agent.response_engine.type === "retell-llm") {
|
|
134866
134875
|
const llm = llmMap.get(agent.response_engine.llm_id);
|
|
134867
134876
|
if (llm) {
|
|
@@ -134944,6 +134953,9 @@ async function canonicalizeFromFiles(files) {
|
|
|
134944
134953
|
type: zod_default.literal("conversation-flow"),
|
|
134945
134954
|
conversation_flow_id: zod_default.string(),
|
|
134946
134955
|
version: zod_default.number().optional()
|
|
134956
|
+
}),
|
|
134957
|
+
zod_default.object({
|
|
134958
|
+
type: zod_default.literal("custom-llm")
|
|
134947
134959
|
})
|
|
134948
134960
|
])
|
|
134949
134961
|
}));
|
|
@@ -134971,14 +134983,13 @@ async function canonicalizeFromFiles(files) {
|
|
|
134971
134983
|
return content;
|
|
134972
134984
|
};
|
|
134973
134985
|
await resolveFilePlaceholders(agentConfig, resolveFileContent);
|
|
134974
|
-
const responseEngineVersion = agentMeta.response_engine.version ?? 0;
|
|
134975
134986
|
if (agentMeta.response_engine.type === "retell-llm") {
|
|
134976
134987
|
const llmResult = findConfigFile("llm");
|
|
134977
134988
|
if (llmResult) {
|
|
134978
134989
|
const llmConfig = await llmResult.reader(llmResult.content, zod_default.looseObject({}));
|
|
134979
134990
|
await resolveFilePlaceholders(llmConfig, resolveFileContent);
|
|
134980
134991
|
llmConfig._id = agentMeta.response_engine.llm_id;
|
|
134981
|
-
llmConfig._version =
|
|
134992
|
+
llmConfig._version = agentMeta.response_engine.version ?? 0;
|
|
134982
134993
|
llms.push(llmConfig);
|
|
134983
134994
|
}
|
|
134984
134995
|
} else if (agentMeta.response_engine.type === "conversation-flow") {
|
|
@@ -134987,13 +134998,23 @@ async function canonicalizeFromFiles(files) {
|
|
|
134987
134998
|
const flowConfig = await flowResult.reader(flowResult.content, zod_default.looseObject({}));
|
|
134988
134999
|
await resolveFilePlaceholders(flowConfig, resolveFileContent);
|
|
134989
135000
|
flowConfig._id = agentMeta.response_engine.conversation_flow_id;
|
|
134990
|
-
flowConfig._version =
|
|
135001
|
+
flowConfig._version = agentMeta.response_engine.version ?? 0;
|
|
134991
135002
|
conversationFlows.push(flowConfig);
|
|
134992
135003
|
}
|
|
134993
135004
|
}
|
|
135005
|
+
delete agentConfig.version_title;
|
|
134994
135006
|
agentConfig._id = agentMeta.id;
|
|
134995
135007
|
agentConfig._version = agentMeta.version;
|
|
134996
|
-
|
|
135008
|
+
if (agentMeta.response_engine.type === "custom-llm") {
|
|
135009
|
+
const llmWebsocketUrl = agentConfig.llm_websocket_url;
|
|
135010
|
+
delete agentConfig.llm_websocket_url;
|
|
135011
|
+
agentConfig.response_engine = {
|
|
135012
|
+
type: "custom-llm",
|
|
135013
|
+
llm_websocket_url: llmWebsocketUrl ?? ""
|
|
135014
|
+
};
|
|
135015
|
+
} else {
|
|
135016
|
+
agentConfig.response_engine = agentMeta.response_engine;
|
|
135017
|
+
}
|
|
134997
135018
|
voiceAgents.push(agentConfig);
|
|
134998
135019
|
}
|
|
134999
135020
|
return {
|
|
@@ -135491,7 +135512,7 @@ async function deploy({
|
|
|
135491
135512
|
const {
|
|
135492
135513
|
_id,
|
|
135493
135514
|
_version,
|
|
135494
|
-
response_engine:
|
|
135515
|
+
response_engine: _responseEngine,
|
|
135495
135516
|
...updateData
|
|
135496
135517
|
} = change.current;
|
|
135497
135518
|
await retell.agent.update(_id, updateData);
|
package/package.json
CHANGED
package/.todo
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
- [ ] Make `deploy --publish` command update phone number to new agent version
|