@vellumai/plugin-api 0.11.6-dev.202608252309.48526e7 → 0.11.6-staging.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.
- package/index.d.ts +24 -127
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -148,9 +148,10 @@ declare const AssistantConfigSchema: z.ZodObject<{
|
|
|
148
148
|
stt: z.ZodDefault<z.ZodObject<{
|
|
149
149
|
provider: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodEnum<{
|
|
150
150
|
vellum: "vellum";
|
|
151
|
-
"openai-whisper": "openai-whisper";
|
|
152
151
|
deepgram: "deepgram";
|
|
152
|
+
"deepgram-flux": "deepgram-flux";
|
|
153
153
|
"google-gemini": "google-gemini";
|
|
154
|
+
"openai-whisper": "openai-whisper";
|
|
154
155
|
xai: "xai";
|
|
155
156
|
}>>;
|
|
156
157
|
language: z.ZodDefault<z.ZodString>;
|
|
@@ -279,24 +280,6 @@ declare const AssistantConfigSchema: z.ZodObject<{
|
|
|
279
280
|
"your-own": "your-own";
|
|
280
281
|
}>>;
|
|
281
282
|
}, z.core.$strip>>;
|
|
282
|
-
"monday-oauth": z.ZodDefault<z.ZodObject<{
|
|
283
|
-
mode: z.ZodDefault<z.ZodEnum<{
|
|
284
|
-
managed: "managed";
|
|
285
|
-
"your-own": "your-own";
|
|
286
|
-
}>>;
|
|
287
|
-
}, z.core.$strip>>;
|
|
288
|
-
"eventbrite-oauth": z.ZodDefault<z.ZodObject<{
|
|
289
|
-
mode: z.ZodDefault<z.ZodEnum<{
|
|
290
|
-
managed: "managed";
|
|
291
|
-
"your-own": "your-own";
|
|
292
|
-
}>>;
|
|
293
|
-
}, z.core.$strip>>;
|
|
294
|
-
"calendly-oauth": z.ZodDefault<z.ZodObject<{
|
|
295
|
-
mode: z.ZodDefault<z.ZodEnum<{
|
|
296
|
-
managed: "managed";
|
|
297
|
-
"your-own": "your-own";
|
|
298
|
-
}>>;
|
|
299
|
-
}, z.core.$strip>>;
|
|
300
283
|
}, z.core.$strip>>;
|
|
301
284
|
memory: z.ZodDefault<z.ZodObject<{
|
|
302
285
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
@@ -617,10 +600,10 @@ declare const AssistantConfigSchema: z.ZodObject<{
|
|
|
617
600
|
model: z.ZodOptional<z.ZodString>;
|
|
618
601
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
619
602
|
effort: z.ZodOptional<z.ZodEnum<{
|
|
620
|
-
none: "none";
|
|
621
603
|
low: "low";
|
|
622
604
|
medium: "medium";
|
|
623
605
|
high: "high";
|
|
606
|
+
none: "none";
|
|
624
607
|
xhigh: "xhigh";
|
|
625
608
|
max: "max";
|
|
626
609
|
}>>;
|
|
@@ -690,7 +673,6 @@ declare const AssistantConfigSchema: z.ZodObject<{
|
|
|
690
673
|
profile: z.ZodString;
|
|
691
674
|
weight: z.ZodNumber;
|
|
692
675
|
}, z.core.$strip>>>;
|
|
693
|
-
fallbackProfile: z.ZodOptional<z.ZodString>;
|
|
694
676
|
}, z.core.$strip>>>;
|
|
695
677
|
profileOrder: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
696
678
|
callSites: z.ZodDefault<z.ZodRecord<z.ZodEnum<{
|
|
@@ -741,10 +723,10 @@ declare const AssistantConfigSchema: z.ZodObject<{
|
|
|
741
723
|
model: z.ZodOptional<z.ZodString>;
|
|
742
724
|
maxTokens: z.ZodOptional<z.ZodNumber>;
|
|
743
725
|
effort: z.ZodOptional<z.ZodEnum<{
|
|
744
|
-
none: "none";
|
|
745
726
|
low: "low";
|
|
746
727
|
medium: "medium";
|
|
747
728
|
high: "high";
|
|
729
|
+
none: "none";
|
|
748
730
|
xhigh: "xhigh";
|
|
749
731
|
max: "max";
|
|
750
732
|
}>>;
|
|
@@ -1078,7 +1060,7 @@ declare const AssistantConfigSchema: z.ZodObject<{
|
|
|
1078
1060
|
turnEnd: z.ZodDefault<z.ZodObject<{
|
|
1079
1061
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1080
1062
|
}, z.core.$strip>>;
|
|
1081
|
-
model: z.
|
|
1063
|
+
model: z.ZodDefault<z.ZodString>;
|
|
1082
1064
|
eotThreshold: z.ZodDefault<z.ZodNumber>;
|
|
1083
1065
|
eagerEotThreshold: z.ZodOptional<z.ZodNumber>;
|
|
1084
1066
|
eotTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
@@ -4175,19 +4157,6 @@ declare interface CliCommandHelp {
|
|
|
4175
4157
|
subcommands?: CliSubcommandHelp[];
|
|
4176
4158
|
}
|
|
4177
4159
|
|
|
4178
|
-
/**
|
|
4179
|
-
* Client OS surfaces — the value set for the message-body `clientOs` field.
|
|
4180
|
-
*
|
|
4181
|
-
* This is deliberately SEPARATE from {@link INTERFACE_IDS}: `clientOs`
|
|
4182
|
-
* describes which OS the user's device runs, not which transport the turn
|
|
4183
|
-
* arrived on. `"android"` (and `"ios"` for a mobile browser) are real OS
|
|
4184
|
-
* surfaces but not transports — they must never answer transport questions
|
|
4185
|
-
* (`supportsHostProxy`, `isInteractiveInterface`), so they live here rather
|
|
4186
|
-
* than polluting the interface vocabulary. Drives only the per-turn
|
|
4187
|
-
* `client_os` context line (e.g. app-builder mobile-first for `ios`/`android`).
|
|
4188
|
-
*/
|
|
4189
|
-
declare const CLIENT_OS_VALUES: readonly ["web", "ios", "macos", "windows", "android"];
|
|
4190
|
-
|
|
4191
4160
|
declare interface ClientEntry extends BaseSubscriberEntry {
|
|
4192
4161
|
type: "client";
|
|
4193
4162
|
clientId: string;
|
|
@@ -4216,8 +4185,6 @@ declare interface ClientEntry extends BaseSubscriberEntry {
|
|
|
4216
4185
|
webPresence?: ClientWebPresence;
|
|
4217
4186
|
}
|
|
4218
4187
|
|
|
4219
|
-
declare type ClientOs = (typeof CLIENT_OS_VALUES)[number];
|
|
4220
|
-
|
|
4221
4188
|
declare interface ClientPresence {
|
|
4222
4189
|
state: DesktopPresenceState;
|
|
4223
4190
|
/** When the daemon last heard from the client. Drives staleness. */
|
|
@@ -4583,11 +4550,11 @@ export declare function getDocument(documentId: string): Promise<IndexedDocument
|
|
|
4583
4550
|
export declare function getMessages(conversationId: string): Promise<MessageRow[]>;
|
|
4584
4551
|
|
|
4585
4552
|
/**
|
|
4586
|
-
* List the workspace inference profiles a plugin can route to, in the order
|
|
4587
|
-
*
|
|
4588
|
-
*
|
|
4589
|
-
*
|
|
4590
|
-
*
|
|
4553
|
+
* List the workspace inference profiles a plugin can route to, in the order the
|
|
4554
|
+
* `/model` picker presents them (`llm.profileOrder` first, then the rest
|
|
4555
|
+
* alphabetically). Metadata-only entries without a provider, model, or mix are
|
|
4556
|
+
* not routing targets, so plugins never see them. Disabled profiles are
|
|
4557
|
+
* included and flagged via
|
|
4591
4558
|
* {@link ModelProfileInfo.isDisabled}; weighted "mix" profiles are included and
|
|
4592
4559
|
* flagged via {@link ModelProfileInfo.isMix}, since a mix is itself a valid
|
|
4593
4560
|
* routing target (it resolves to one constituent per conversation).
|
|
@@ -4976,12 +4943,6 @@ declare interface LiveVoiceAssistantTextDeltaServerFrame extends LiveVoiceServer
|
|
|
4976
4943
|
declare interface LiveVoiceBusyServerFrame extends LiveVoiceServerFrameBase {
|
|
4977
4944
|
readonly type: "busy";
|
|
4978
4945
|
readonly activeSessionId: string;
|
|
4979
|
-
/**
|
|
4980
|
-
* Absent from daemons that predate it, and from a holder that revealed
|
|
4981
|
-
* neither field, so a client must degrade to the unspecific copy rather
|
|
4982
|
-
* than assume.
|
|
4983
|
-
*/
|
|
4984
|
-
readonly holder?: LiveVoiceSessionHolder;
|
|
4985
4946
|
}
|
|
4986
4947
|
|
|
4987
4948
|
export declare interface LiveVoiceConnection {
|
|
@@ -5126,23 +5087,6 @@ declare interface LiveVoiceReadyServerFrame extends LiveVoiceServerFrameBase {
|
|
|
5126
5087
|
* (older daemons) means "manual".
|
|
5127
5088
|
*/
|
|
5128
5089
|
readonly turnDetection?: LiveVoiceTurnDetectionMode;
|
|
5129
|
-
/**
|
|
5130
|
-
* Whether this daemon will accept `text` frames on the session. Absent
|
|
5131
|
-
* (older daemons) means no, which is what lets a client that asked for
|
|
5132
|
-
* `textInput` fall back rather than type into a socket that would answer
|
|
5133
|
-
* every typed turn with an `unknown_type` error.
|
|
5134
|
-
*/
|
|
5135
|
-
readonly textInput?: boolean;
|
|
5136
|
-
/**
|
|
5137
|
-
* Whether the session's speech-to-text leg is live. Absent means yes, which
|
|
5138
|
-
* is the only thing an older daemon can have meant: it rejects a session it
|
|
5139
|
-
* cannot transcribe, so every session it readies can hear.
|
|
5140
|
-
*
|
|
5141
|
-
* False is reachable only for a client that declared `textInput`, and tells
|
|
5142
|
-
* it to present the session as typed rather than draw a microphone that
|
|
5143
|
-
* will never hear anything.
|
|
5144
|
-
*/
|
|
5145
|
-
readonly audioInput?: boolean;
|
|
5146
5090
|
}
|
|
5147
5091
|
|
|
5148
5092
|
export declare type LiveVoiceServerFrame = LiveVoiceReadyServerFrame | LiveVoiceBusyServerFrame | LiveVoiceSpeechStartedServerFrame | LiveVoiceUtteranceEndServerFrame | LiveVoiceUtteranceDiscardedServerFrame | LiveVoiceSttPartialServerFrame | LiveVoiceSttFinalServerFrame | LiveVoiceThinkingServerFrame | LiveVoiceActivityServerFrame | LiveVoiceAssistantTextDeltaServerFrame | LiveVoiceTtsAudioServerFrame | LiveVoiceTtsDoneServerFrame | LiveVoiceTurnCancelledServerFrame | LiveVoiceMinimizeRoomServerFrame | LiveVoiceMetricsServerFrame | LiveVoiceArchivedServerFrame | LiveVoiceErrorServerFrame;
|
|
@@ -5156,27 +5100,6 @@ declare type LiveVoiceServerFrameType = (typeof _LIVE_VOICE_SERVER_FRAME_TYPES)[
|
|
|
5156
5100
|
|
|
5157
5101
|
export declare type LiveVoiceSessionCloseReason = "client_end" | "error" | "websocket_close" | "transport_closed" | "client_timeout" | "forced_end" | "manager_shutdown";
|
|
5158
5102
|
|
|
5159
|
-
/**
|
|
5160
|
-
* Where the session holding the daemon's single live-voice slot is running,
|
|
5161
|
-
* as much of it as the daemon knows.
|
|
5162
|
-
*
|
|
5163
|
-
* Display only: it is what lets a client refused a session say where the one
|
|
5164
|
-
* that blocked it is. Nothing routes, authorizes, or decides capability on
|
|
5165
|
-
* it, and every field is optional, so a holder that names neither its surface
|
|
5166
|
-
* nor a conversation is simply less specific.
|
|
5167
|
-
*/
|
|
5168
|
-
declare interface LiveVoiceSessionHolder {
|
|
5169
|
-
/**
|
|
5170
|
-
* The OS surface the holder is running on, from its `start` frame. A
|
|
5171
|
-
* {@link ClientOs} carries no transport meaning by contract (see
|
|
5172
|
-
* `channels/types.ts`), which is exactly right for a label: it says which
|
|
5173
|
-
* device the user should go looking on, and answers nothing else.
|
|
5174
|
-
*/
|
|
5175
|
-
readonly client?: ClientOs;
|
|
5176
|
-
/** The conversation the holder is talking in, once it has one. */
|
|
5177
|
-
readonly conversationId?: string;
|
|
5178
|
-
}
|
|
5179
|
-
|
|
5180
5103
|
/**
|
|
5181
5104
|
* Emitted when the server VAD detects user speech. The client MUST
|
|
5182
5105
|
* immediately stop local TTS playback — this doubles as the flush-tail-audio
|
|
@@ -6002,15 +5925,6 @@ export declare interface ProviderResponse {
|
|
|
6002
5925
|
model: string;
|
|
6003
5926
|
/** Provider that actually produced this response, which may differ from a wrapper provider name. */
|
|
6004
5927
|
actualProvider?: string;
|
|
6005
|
-
/**
|
|
6006
|
-
* Inference profile key that actually governed this response when a
|
|
6007
|
-
* wrapper re-routed the request away from the caller's own resolution
|
|
6008
|
-
* (`RetryProvider`'s fallback-route escalation). `UsageTrackingProvider`
|
|
6009
|
-
* prefers this over re-resolving from the original request options, so a
|
|
6010
|
-
* successful fallback serve is attributed to the backup profile rather
|
|
6011
|
-
* than the failed primary's. Absent on the normal (non-rerouted) path.
|
|
6012
|
-
*/
|
|
6013
|
-
actualInferenceProfile?: string;
|
|
6014
5928
|
/**
|
|
6015
5929
|
* Base URL the provider's HTTP client actually resolved to for this request,
|
|
6016
5930
|
* read from the live SDK client instance rather than re-derived from config.
|
|
@@ -6531,18 +6445,6 @@ export declare interface SendMessageConfig {
|
|
|
6531
6445
|
* request.
|
|
6532
6446
|
*/
|
|
6533
6447
|
forceOverrideProfile?: boolean;
|
|
6534
|
-
/**
|
|
6535
|
-
* True when the caller appended {@link NATIVE_WEB_SEARCH_TOOL_NAME} purely
|
|
6536
|
-
* to activate the route's provider-native web search, rather than passing an
|
|
6537
|
-
* app-executed search tool of the same name (which is what runs when a
|
|
6538
|
-
* search backend like Brave or the platform search proxy is configured).
|
|
6539
|
-
* Only the caller can tell those apart, and a route change after that
|
|
6540
|
-
* decision has to: `RetryProvider` drops the tool on a backup that runs no
|
|
6541
|
-
* native search, and must not touch it when the daemon executes it itself.
|
|
6542
|
-
* A resolution/routing-time concern only; stripped before any provider wire
|
|
6543
|
-
* request.
|
|
6544
|
-
*/
|
|
6545
|
-
nativeWebSearchSentinel?: boolean;
|
|
6546
6448
|
/**
|
|
6547
6449
|
* Per-conversation seed for deterministic `mix`-profile expansion. The agent
|
|
6548
6450
|
* loop sets this to the conversation id so every resolver call this send
|
|
@@ -6915,33 +6817,28 @@ export declare type SttErrorCategory =
|
|
|
6915
6817
|
| "provider-error";
|
|
6916
6818
|
|
|
6917
6819
|
/**
|
|
6918
|
-
*
|
|
6820
|
+
* Provider-agnostic speech-to-text domain types for daemon transcription.
|
|
6919
6821
|
*
|
|
6920
|
-
*
|
|
6921
|
-
*
|
|
6922
|
-
*
|
|
6923
|
-
*
|
|
6924
|
-
* select the family with `services.stt.providers.<id>.model`, and
|
|
6925
|
-
* {@link resolveSttCatalogKey} maps that pair onto the row.
|
|
6822
|
+
* These types define the boundary between callers that need audio transcription
|
|
6823
|
+
* and the concrete STT provider implementations. The goal is to let daemon
|
|
6824
|
+
* callsites program against a single typed interface so that provider swaps are
|
|
6825
|
+
* localized to the adapter layer.
|
|
6926
6826
|
*
|
|
6927
|
-
*
|
|
6928
|
-
*
|
|
6929
|
-
*
|
|
6930
|
-
*
|
|
6827
|
+
* Two execution modes are supported:
|
|
6828
|
+
* - **Batch** — a single audio buffer is sent and a final transcript returned.
|
|
6829
|
+
* - **Streaming** — audio chunks are sent over a persistent session, and the
|
|
6830
|
+
* provider emits partial/final transcript events in real time.
|
|
6831
|
+
*/
|
|
6832
|
+
/**
|
|
6833
|
+
* Canonical provider identifiers for daemon-hosted STT backends.
|
|
6834
|
+
* Extend this union as new providers are integrated.
|
|
6931
6835
|
*/
|
|
6932
6836
|
export declare type SttProviderId = "openai-whisper" | "deepgram"
|
|
6933
6837
|
/**
|
|
6934
6838
|
* Deepgram's Flux conversational speech model. Shares the `deepgram`
|
|
6935
6839
|
* credential and is streaming-only: Flux has no batch endpoint.
|
|
6936
6840
|
*/
|
|
6937
|
-
| "deepgram-flux" | "google-gemini" | "xai" | "vellum"
|
|
6938
|
-
/**
|
|
6939
|
-
* Managed Flux: the same conversational model as `deepgram-flux`, reached
|
|
6940
|
-
* through the platform's speech relay instead of a Deepgram key. Dials the
|
|
6941
|
-
* relay's STT v2 endpoint asking for native Flux frames, so it keeps the
|
|
6942
|
-
* turn events the relay's default v1-shaped translation drops.
|
|
6943
|
-
*/
|
|
6944
|
-
| "vellum-flux";
|
|
6841
|
+
| "deepgram-flux" | "google-gemini" | "xai" | "vellum";
|
|
6945
6842
|
|
|
6946
6843
|
/** The streaming session has closed (no more events will be emitted). */
|
|
6947
6844
|
export declare interface SttStreamServerClosedEvent {
|
package/package.json
CHANGED