@vellumai/plugin-api 0.10.11-dev.202607241335.d95a4c6 → 0.10.11-dev.202607241515.ecced08

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 (3) hide show
  1. package/index.d.ts +33 -240
  2. package/index.js +1 -0
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -210,15 +210,6 @@ declare const AssistantActivityStateEventSchema: z.ZodObject<{
210
210
  statusText: z.ZodOptional<z.ZodString>;
211
211
  }, z.core.$strip>;
212
212
 
213
- /** Attention state metadata for a conversation's latest assistant message. */
214
- declare interface AssistantAttention {
215
- hasUnseenLatestAssistantMessage: boolean;
216
- latestAssistantMessageAt?: number;
217
- lastSeenAssistantMessageAt?: number;
218
- lastSeenConfidence?: string;
219
- lastSeenSignalType?: string;
220
- }
221
-
222
213
  declare type AssistantConfig = z.infer<typeof AssistantConfigSchema>;
223
214
 
224
215
  declare const AssistantConfigSchema: z.ZodObject<{
@@ -1641,32 +1632,6 @@ export declare function buildMessageExcerpt(rawContent: string, query: string):
1641
1632
  */
1642
1633
  declare const CHANNEL_IDS: readonly ["telegram", "phone", "vellum", "whatsapp", "slack", "email", "platform", "a2a"];
1643
1634
 
1644
- /** Channel binding metadata exposed in conversation list APIs. */
1645
- declare interface ChannelBinding {
1646
- sourceChannel: ChannelId;
1647
- externalChatId: string;
1648
- externalChatName?: string | null;
1649
- externalThreadId?: string | null;
1650
- externalUserId?: string | null;
1651
- displayName?: string | null;
1652
- username?: string | null;
1653
- slackThread?: {
1654
- channelId: string;
1655
- threadTs: string;
1656
- link?: {
1657
- appUrl?: string;
1658
- webUrl?: string;
1659
- };
1660
- };
1661
- slackChannel?: {
1662
- channelId: string;
1663
- name?: string;
1664
- link?: {
1665
- webUrl?: string;
1666
- };
1667
- };
1668
- }
1669
-
1670
1635
  declare type ChannelId = (typeof CHANNEL_IDS)[number];
1671
1636
 
1672
1637
  declare interface ChannelVerificationSessionResponse {
@@ -2009,12 +1974,6 @@ declare const ConversationErrorEventSchema: z.ZodObject<{
2009
1974
  profileName: z.ZodOptional<z.ZodString>;
2010
1975
  }, z.core.$strip>;
2011
1976
 
2012
- declare interface ConversationForkParent {
2013
- conversationId: string;
2014
- messageId: string;
2015
- title: string;
2016
- }
2017
-
2018
1977
  declare type ConversationInferenceProfileUpdatedEvent = z.infer<typeof ConversationInferenceProfileUpdatedEventSchema>;
2019
1978
 
2020
1979
  declare const ConversationInferenceProfileUpdatedEventSchema: z.ZodObject<{
@@ -2025,19 +1984,6 @@ declare const ConversationInferenceProfileUpdatedEventSchema: z.ZodObject<{
2025
1984
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
2026
1985
  }, z.core.$strip>;
2027
1986
 
2028
- declare interface ConversationInfo {
2029
- type: "conversation_info";
2030
- conversationId: string;
2031
- title: string;
2032
- correlationId?: string;
2033
- conversationType?: ConversationType;
2034
- /**
2035
- * Per-conversation override for the LLM inference profile. `undefined`
2036
- * means the conversation inherits the workspace `llm.activeProfile`.
2037
- */
2038
- inferenceProfile?: string;
2039
- }
2040
-
2041
1987
  declare type ConversationListInvalidatedEvent = z.infer<typeof ConversationListInvalidatedEventSchema>;
2042
1988
 
2043
1989
  declare const ConversationListInvalidatedEventSchema: z.ZodObject<{
@@ -2051,33 +1997,6 @@ declare const ConversationListInvalidatedEventSchema: z.ZodObject<{
2051
1997
  }>;
2052
1998
  }, z.core.$strip>;
2053
1999
 
2054
- declare interface ConversationListResponse {
2055
- type: "conversation_list_response";
2056
- conversations: Array<{
2057
- id: string;
2058
- title: string;
2059
- createdAt?: number;
2060
- updatedAt: number;
2061
- conversationType?: ConversationType;
2062
- source?: string;
2063
- scheduleJobId?: string;
2064
- channelBinding?: ChannelBinding;
2065
- conversationOriginChannel?: ChannelId;
2066
- conversationOriginInterface?: InterfaceId;
2067
- assistantAttention?: AssistantAttention;
2068
- displayOrder?: number;
2069
- isPinned?: boolean;
2070
- forkParent?: ConversationForkParent;
2071
- /**
2072
- * Per-conversation override for the LLM inference profile. Omitted when
2073
- * the conversation inherits the workspace `llm.activeProfile`.
2074
- */
2075
- inferenceProfile?: string;
2076
- }>;
2077
- /** Whether more conversations exist beyond the returned page. */
2078
- hasMore?: boolean;
2079
- }
2080
-
2081
2000
  declare type ConversationNoticeEvent = z.infer<typeof ConversationNoticeEventSchema>;
2082
2001
 
2083
2002
  declare const ConversationNoticeEventSchema: z.ZodObject<{
@@ -2155,7 +2074,7 @@ export declare interface ConversationRow {
2155
2074
  */
2156
2075
  export declare type ConversationsClearedContext = BaseHookContext;
2157
2076
 
2158
- declare type _ConversationsServerMessages = AssistantStatusEvent | GenerationCancelledEvent | GenerationHandoffEvent | ModelInfoEvent | HistoryResponse | UndoComplete | UsageUpdateEvent | UsageProgressEvent | UsageResponse | ContextCompactedEvent | CompactionCircuitOpenEvent | CompactionCircuitClosedEvent | ConversationErrorEvent | ConversationNoticeEvent | ConversationInfo | ConversationTitleUpdatedEvent | ConversationListResponse | ConversationListInvalidatedEvent | ScheduleConversationCreatedEvent | OpenConversationEvent;
2077
+ declare type _ConversationsServerMessages = AssistantStatusEvent | GenerationCancelledEvent | GenerationHandoffEvent | ModelInfoEvent | UsageUpdateEvent | UsageProgressEvent | ContextCompactedEvent | CompactionCircuitOpenEvent | CompactionCircuitClosedEvent | ConversationErrorEvent | ConversationNoticeEvent | ConversationTitleUpdatedEvent | ConversationListInvalidatedEvent | ScheduleConversationCreatedEvent | OpenConversationEvent;
2159
2078
 
2160
2079
  declare type ConversationTitleUpdatedEvent = z.infer<typeof ConversationTitleUpdatedEventSchema>;
2161
2080
 
@@ -2165,10 +2084,8 @@ declare const ConversationTitleUpdatedEventSchema: z.ZodObject<{
2165
2084
  title: z.ZodString;
2166
2085
  }, z.core.$strip>;
2167
2086
 
2168
- declare type ConversationType = "standard" | "background" | "scheduled";
2169
-
2170
2087
  /** Read-side alias of {@link ConversationCreateType}. */
2171
- declare type ConversationType_2 = ConversationCreateType;
2088
+ declare type ConversationType = ConversationCreateType;
2172
2089
 
2173
2090
  /** Create a live voice connection bound to the caller's `send` transport. */
2174
2091
  export declare function createLiveVoiceConnection(options: {
@@ -2506,99 +2423,6 @@ declare const HeartbeatConversationCreatedEventSchema: z.ZodObject<{
2506
2423
  title: z.ZodString;
2507
2424
  }, z.core.$strip>;
2508
2425
 
2509
- declare interface HistoryResponse {
2510
- type: "history_response";
2511
- conversationId: string;
2512
- messages: Array<{
2513
- /** Database ID used by clients for the rendered message. */
2514
- id?: string;
2515
- role: string;
2516
- text: string;
2517
- timestamp: number;
2518
- toolCalls?: HistoryResponseToolCall[];
2519
- /** True when tool_use blocks appeared before any text block in the original content. */
2520
- toolCallsBeforeText?: boolean;
2521
- attachments?: UserMessageAttachment[];
2522
- /** Text segments split by tool-call boundaries. Preserves interleaving order. */
2523
- textSegments?: string[];
2524
- /** Content block ordering using "text:N", "tool:N", "surface:N" encoding. */
2525
- contentOrder?: string[];
2526
- /** UI surfaces (widgets) embedded in the message. */
2527
- surfaces?: HistoryResponseSurface[];
2528
- /** Present when this message is a subagent lifecycle notification (running/completed/failed/aborted). */
2529
- subagentNotification?: {
2530
- subagentId: string;
2531
- label: string;
2532
- status: "running" | "completed" | "failed" | "aborted";
2533
- error?: string;
2534
- conversationId?: string;
2535
- objective?: string;
2536
- };
2537
- /** True when text or tool result content was truncated due to maxTextChars/maxToolResultChars. */
2538
- wasTruncated?: boolean;
2539
- }>;
2540
- /** Whether older messages exist beyond the returned page. */
2541
- hasMore: boolean;
2542
- /** Timestamp of the oldest message in the response (client uses as next pagination cursor). */
2543
- oldestTimestamp?: number;
2544
- /** ID of the oldest message in the response (tie-breaker for same-millisecond cursors). */
2545
- oldestMessageId?: string;
2546
- }
2547
-
2548
- declare interface HistoryResponseSurface {
2549
- surfaceId: string;
2550
- surfaceType: string;
2551
- title?: string;
2552
- data: Record<string, unknown>;
2553
- actions?: Array<{
2554
- id: string;
2555
- label: string;
2556
- style?: string;
2557
- data?: Record<string, unknown>;
2558
- }>;
2559
- display?: string;
2560
- /** True when the surface was completed (e.g. form submitted, action taken). */
2561
- completed?: boolean;
2562
- /** Human-readable summary shown in the completion chip. */
2563
- completionSummary?: string;
2564
- }
2565
-
2566
- declare interface HistoryResponseToolCall {
2567
- name: string;
2568
- input: Record<string, unknown>;
2569
- result?: string;
2570
- isError?: boolean;
2571
- /** Base64-encoded image data from tool contentBlocks (e.g. browser_screenshot). @deprecated Use imageDataList. */
2572
- imageData?: string;
2573
- /** Base64-encoded image data from tool contentBlocks (e.g. browser_screenshot, image generation). */
2574
- imageDataList?: string[];
2575
- /** Workspace attachment ids for tool-result images persisted as references; clients fetch bytes by id on render instead of embedding base64. */
2576
- imageAttachmentIds?: string[];
2577
- /** Unix ms when the tool started executing. */
2578
- startedAt?: number;
2579
- /** Unix ms when the tool completed. */
2580
- completedAt?: number;
2581
- /** Confirmation decision for this tool call: "approved" | "denied" | "timed_out". */
2582
- confirmationDecision?: string;
2583
- /** Friendly label for the confirmation (e.g. "Edit File", "Run Command"). */
2584
- confirmationLabel?: string;
2585
- /** Risk level at the time of invocation ("low" | "medium" | "high" | "unknown"). */
2586
- riskLevel?: string;
2587
- /** Human-readable reason for the risk classification. */
2588
- riskReason?: string;
2589
- /**
2590
- * @deprecated Use `approvalMode` and `approvalReason` instead.
2591
- * Kept for backward compatibility during the migration window.
2592
- */
2593
- autoApproved?: boolean;
2594
- /** How the approval decision was reached: prompted, auto, blocked, or unknown (legacy). */
2595
- approvalMode?: string;
2596
- /** Why the approval decision was reached (stable enum for client display). */
2597
- approvalReason?: string;
2598
- /** Snapshot of the auto-approve threshold at execution time. */
2599
- riskThreshold?: string;
2600
- }
2601
-
2602
2426
  declare type HomeFeedUpdatedEvent = z.infer<typeof HomeFeedUpdatedEventSchema>;
2603
2427
 
2604
2428
  declare const HomeFeedUpdatedEventSchema: z.ZodObject<{
@@ -3140,7 +2964,7 @@ export declare function lastToolResultUserMessageIndex(history: Message[]): numb
3140
2964
  export declare function listCatalogSkills(): Promise<ResolvedSkillEntry[]>;
3141
2965
 
3142
2966
  /** List conversation rows, newest first. */
3143
- export declare function listConversations(limit?: number, conversationType?: ConversationType_2, offset?: number, archiveStatus?: ArchiveStatusFilter, originChannel?: string): Promise<ConversationRow[]>;
2967
+ export declare function listConversations(limit?: number, conversationType?: ConversationType, offset?: number, archiveStatus?: ArchiveStatusFilter, originChannel?: string): Promise<ConversationRow[]>;
3144
2968
 
3145
2969
  /**
3146
2970
  * The locally installed skill catalog with resolved states. Includes every
@@ -4333,6 +4157,17 @@ declare interface ProxyApprovalRequest {
4333
4157
 
4334
4158
  declare type ProxyToolResolver = (toolName: string, input: Record<string, unknown>) => Promise<ToolExecutionResult>;
4335
4159
 
4160
+ /**
4161
+ * Publish a runtime event to the assistant's event hub. Resolves once fanout to
4162
+ * all subscribers has been attempted (a throwing subscriber never aborts
4163
+ * delivery to the rest). Rejects if the event is non-serializable or is a
4164
+ * host-proxy control event, which plugins may not publish.
4165
+ */
4166
+ export declare function publishEvent(event: AssistantEvent, options?: PublishEventOptions): Promise<void>;
4167
+
4168
+ /** Publish options, mirroring the hub's `publish` options (targeting, self-echo suppression). */
4169
+ export declare type PublishEventOptions = NonNullable<Parameters<PluginEventHub["publish"]>[1]>;
4170
+
4336
4171
  /**
4337
4172
  * Remove every previously-refused exchange from a working history: for each
4338
4173
  * assistant message that is exactly the refusal fallback, drop it together with
@@ -4891,7 +4726,7 @@ declare interface SensitiveOutputBinding {
4891
4726
 
4892
4727
  declare type SensitiveOutputKind = "invite_code";
4893
4728
 
4894
- declare type ServerMessage = _ConversationsServerMessages | _MessagesServerMessages | _SurfacesServerMessages | _SkillsServerMessages | _AppsServerMessages | _IntegrationsServerMessages | _ComputerUseServerMessages | _ContactsServerMessages | _SubagentsServerMessages | _DocumentsServerMessages | _DocumentCommentsServerMessages | _SyncInvalidationServerMessages | _HomeServerMessages | _HostAppControlServerMessages | _HostBashServerMessages | _HostBrowserServerMessages | _HostCuServerMessages | _HostFileServerMessages | _HostTransferServerMessages | _HostUiSnapshotServerMessages | _MemoryServerMessages | _WorkspaceServerMessages | _SchedulesServerMessages | _SettingsServerMessages | _NotificationsServerMessages | _UpgradesServerMessages | _AcpServerMessages | _BackgroundToolsServerMessages | _BookmarksServerMessages | _WorkflowsServerMessages | DiskPressureStatusChangedEvent | HookEvent | SubagentEvent;
4729
+ declare type ServerMessage = _ConversationsServerMessages | _MessagesServerMessages | _SurfacesServerMessages | _SkillsServerMessages | _AppsServerMessages | _IntegrationsServerMessages | _ComputerUseServerMessages | _ContactsServerMessages | _SubagentsServerMessages | _DocumentsServerMessages | _DocumentCommentsServerMessages | _SyncInvalidationServerMessages | _HomeServerMessages | _HostAppControlServerMessages | _HostBashServerMessages | _HostBrowserServerMessages | _HostCuServerMessages | _HostFileServerMessages | _HostTransferServerMessages | _HostUiSnapshotServerMessages | _MemoryServerMessages | _WorkspaceServerMessages | _SchedulesServerMessages | _SettingsServerMessages | _NotificationsServerMessages | _UpgradesServerMessages | _AcpServerMessages | _BackgroundToolsServerMessages | _BookmarksServerMessages | _WorkflowsServerMessages | DiskPressureStatusChangedEvent | HookEvent | SubagentEventEvent;
4895
4730
 
4896
4731
  export declare interface ServerToolUseContent {
4897
4732
  type: "server_tool_use";
@@ -5254,27 +5089,23 @@ export declare interface SttStreamServerPartialEvent {
5254
5089
  readonly confidence?: number;
5255
5090
  }
5256
5091
 
5257
- declare interface SubagentDetailResponse {
5258
- type: "subagent_detail_response";
5259
- subagentId: string;
5260
- objective?: string;
5261
- usage?: UsageStats;
5262
- events: Array<{
5263
- type: string;
5264
- content: string;
5265
- toolName?: string;
5266
- isError?: boolean;
5267
- messageId?: string;
5268
- }>;
5269
- }
5092
+ declare type SubagentEventEvent = z.infer<typeof SubagentEventEventSchema>;
5270
5093
 
5271
- /** Wraps any ServerMessage emitted by a subagent conversation for routing to the client. */
5272
- declare interface SubagentEvent {
5273
- type: "subagent_event";
5274
- subagentId: string;
5275
- conversationId: string;
5276
- event: ServerMessage;
5277
- }
5094
+ declare const SubagentEventEventSchema: z.ZodObject<{
5095
+ type: z.ZodLiteral<"subagent_event">;
5096
+ conversationId: z.ZodString;
5097
+ subagentId: z.ZodString;
5098
+ event: z.ZodObject<{
5099
+ type: z.ZodString;
5100
+ content: z.ZodOptional<z.ZodString>;
5101
+ text: z.ZodOptional<z.ZodString>;
5102
+ result: z.ZodOptional<z.ZodString>;
5103
+ input: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5104
+ toolName: z.ZodOptional<z.ZodString>;
5105
+ isError: z.ZodOptional<z.ZodBoolean>;
5106
+ toolUseId: z.ZodOptional<z.ZodString>;
5107
+ }, z.core.$loose>;
5108
+ }, z.core.$strict>;
5278
5109
 
5279
5110
  declare type SubagentSpawnedEvent = z.infer<typeof SubagentSpawnedEventSchema>;
5280
5111
 
@@ -5288,7 +5119,7 @@ declare const SubagentSpawnedEventSchema: z.ZodObject<{
5288
5119
  parentToolUseId: z.ZodOptional<z.ZodString>;
5289
5120
  }, z.core.$strict>;
5290
5121
 
5291
- declare type _SubagentsServerMessages = SubagentSpawnedEvent | SubagentStatusChangedEvent | SubagentDetailResponse;
5122
+ declare type _SubagentsServerMessages = SubagentSpawnedEvent | SubagentStatusChangedEvent;
5292
5123
 
5293
5124
  declare type SubagentStatusChangedEvent = z.infer<typeof SubagentStatusChangedEventSchema>;
5294
5125
 
@@ -5299,9 +5130,9 @@ declare const SubagentStatusChangedEventSchema: z.ZodObject<{
5299
5130
  completed: "completed";
5300
5131
  failed: "failed";
5301
5132
  running: "running";
5302
- aborted: "aborted";
5303
5133
  pending: "pending";
5304
5134
  awaiting_input: "awaiting_input";
5135
+ aborted: "aborted";
5305
5136
  interrupted: "interrupted";
5306
5137
  }>;
5307
5138
  error: z.ZodOptional<z.ZodString>;
@@ -6144,12 +5975,6 @@ declare const UISurfaceUpdateEventSchema: z.ZodObject<{
6144
5975
  data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
6145
5976
  }, z.core.$strip>;
6146
5977
 
6147
- declare interface UndoComplete {
6148
- type: "undo_complete";
6149
- removedCount: number;
6150
- conversationId?: string;
6151
- }
6152
-
6153
5978
  /** Merge the given keys into a message's metadata JSON. */
6154
5979
  export declare function updateMessageMetadata(messageId: string, updates: Record<string, unknown>): Promise<void>;
6155
5980
 
@@ -6185,20 +6010,6 @@ declare const UsageProgressEventSchema: z.ZodObject<{
6185
6010
  model: z.ZodString;
6186
6011
  }, z.core.$strip>;
6187
6012
 
6188
- declare interface UsageResponse {
6189
- type: "usage_response";
6190
- totalInputTokens: number;
6191
- totalOutputTokens: number;
6192
- estimatedCost: number;
6193
- model: string;
6194
- }
6195
-
6196
- declare interface UsageStats {
6197
- inputTokens: number;
6198
- outputTokens: number;
6199
- estimatedCost: number;
6200
- }
6201
-
6202
6013
  declare type UsageUpdateEvent = z.infer<typeof UsageUpdateEventSchema>;
6203
6014
 
6204
6015
  declare const UsageUpdateEventSchema: z.ZodObject<{
@@ -6216,24 +6027,6 @@ declare const UsageUpdateEventSchema: z.ZodObject<{
6216
6027
  contextWindowMaxTokens: z.ZodOptional<z.ZodNumber>;
6217
6028
  }, z.core.$strip>;
6218
6029
 
6219
- declare interface UserMessageAttachment {
6220
- id?: string;
6221
- filename: string;
6222
- mimeType: string;
6223
- data: string;
6224
- /** Origin of the attachment on the daemon side, when known. */
6225
- sourceType?: "sandbox_file" | "host_file" | "tool_block";
6226
- extractedText?: string;
6227
- /** Original file size in bytes. Present when data was omitted from history_response to reduce payload size. */
6228
- sizeBytes?: number;
6229
- /** Base64-encoded JPEG thumbnail. Generated server-side for video attachments. */
6230
- thumbnailData?: string;
6231
- /** Absolute path to the local file on disk. Present for file-backed attachments (e.g. recordings). */
6232
- filePath?: string;
6233
- /** True when the attachment is file-backed and clients should hydrate via the /content endpoint. */
6234
- fileBacked?: boolean;
6235
- }
6236
-
6237
6030
  declare type UserMessageEchoEvent = z.infer<typeof UserMessageEchoEventSchema>;
6238
6031
 
6239
6032
  declare const UserMessageEchoEventSchema: z.ZodObject<{
package/index.js CHANGED
@@ -33,6 +33,7 @@ export const listConversations = api.listConversations;
33
33
  export const listInstalledSkills = api.listInstalledSkills;
34
34
  export const openTranscriptionSession = api.openTranscriptionSession;
35
35
  export const parseMessageMetadata = api.parseMessageMetadata;
36
+ export const publishEvent = api.publishEvent;
36
37
  export const quarantineRefusedExchanges = api.quarantineRefusedExchanges;
37
38
  export const resolveCredential = api.resolveCredential;
38
39
  export const resolveMediaSourceData = api.resolveMediaSourceData;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vellumai/plugin-api",
3
- "version": "0.10.11-dev.202607241335.d95a4c6",
3
+ "version": "0.10.11-dev.202607241515.ecced08",
4
4
  "description": "Public TypeScript authoring contract for Vellum assistant plugins.",
5
5
  "license": "MIT",
6
6
  "type": "module",