@stackbone/cli 0.9.2 → 0.9.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/CHANGELOG.md CHANGED
@@ -7,6 +7,73 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.9.4] - 2026-11-12
11
+
12
+ ### Added
13
+
14
+ - **LiveKit Inference as a model provider.** Once the LiveKit credentials are
15
+ saved under Voice, the box lists a **LiveKit Inference** provider with the
16
+ LLMs LiveKit hosts (Gemma 4 31B, Gemini, GPT-4.1 and GPT-5.x among them).
17
+ Pick one of its models on an agent in Studio: the box signs each call with
18
+ the Voice credentials, retries a 429 or 503 twice, and names the model when
19
+ LiveKit refuses it for the project's data region. Its models run only where
20
+ they are picked from it, so no other agent changes provider. The provider
21
+ cannot be added, edited or removed by hand (PLA-2416, PLA-2417).
22
+ - **Test connection on LiveKit Inference** sends a one-token request signed
23
+ with the Voice credentials (PLA-2417).
24
+
25
+ ### Fixed
26
+
27
+ - **The browser tools that use a model work behind the box's model provider
28
+ proxy** and use the model `browserTools({ model })` names (STA3-120).
29
+ - **A pinned model call records its vendor.** A call on
30
+ `livekit::google/gemma-4-31b-it` is recorded with the provider `google`,
31
+ not `livekit::google` (PLA-2416).
32
+ - **Test on a webhook trigger with no event yet gives no verdict.** The
33
+ declared sample is another account's example, so a correct mapping no longer
34
+ reads red before the link has its first event. A key or a destination schema
35
+ that does not compile is still refused (STA3-121).
36
+
37
+ Studio shows the LiveKit Inference provider from this release on. Deploy
38
+ Studio before a box runs this version: an older Studio cannot read the
39
+ provider list it answers.
40
+
41
+ ## [0.9.3] - 2026-11-12
42
+
43
+ ### Added
44
+
45
+ - **Call variables in the voice greeting.** The box fills the greeting's
46
+ `{{name}}` placeholders from `placeCall({ variables })` or the variables a
47
+ Studio test call passes, when it opens the room, and gives every model call
48
+ of the call the same variables as data. A missing variable is left out and
49
+ the punctuation around it tidied (PLA-2409).
50
+ - **New voice settings** `speakFirstClause`, `noiseCancellation`,
51
+ `interruptions.mode` and `timeZone`, in the agent's code and in Studio's
52
+ Voice tab. A call's date and knowledge now ride the caller's last message,
53
+ not the system message, so a provider can cache the call's prompt.
54
+ - **A written turn to a voice agent searches its knowledge** the way a call
55
+ turn does: Studio chat, the API, a connected channel and eval cases
56
+ (STA3-104).
57
+ - **Guardrails on replies:** a voice call's reply is judged sentence by
58
+ sentence and the caller's heard text is kept after a cut (STA3-60), the
59
+ decision model judges replies too (STA3-101), and a tool never runs behind a
60
+ blocked reply or holding line (STA3-102).
61
+ - **A webhook trigger link is not judged until its first event** (STA3-112).
62
+
63
+ - **The thinking sound waits for the holding line.** When a voice agent says a
64
+ line right before a box tool, such as "Let me check that", the voice worker,
65
+ the one `stackbone dev` runs too, starts the thinking sound 300 ms after the
66
+ line has played out, so the typing no longer plays under it. It starts at
67
+ once when the line's speech fails, and at most the new
68
+ `backgroundAudio.holdingLineMaxWaitMs` voice setting (0 to 10000 ms,
69
+ default 10000) after the tool start. On an agent with an output guardrail,
70
+ the box judges and releases the line when the tool starts, so the caller
71
+ hears it while the tool runs (STA3-99).
72
+ - **Studio's Voice tab gets a Holding line max wait (ms) field**, after
73
+ **Thinking delay (ms)**. An older box that sends no wait gets 10000 from the
74
+ voice worker. Deploy the worker on LiveKit Cloud before the boxes: an older
75
+ worker refuses a call whose settings carry the wait.
76
+
10
77
  ## [0.9.2] - 2026-11-10
11
78
 
12
79
  ### Added