@vellumai/plugin-api 0.11.8 → 0.11.9-dev.202609041316.d96b917

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 (2) hide show
  1. package/index.d.ts +75 -35
  2. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -31,6 +31,17 @@ declare interface AddMessageOptions {
31
31
  * internally. Pass the same value as `requestId` for user turns so
32
32
  * the persisted row ID matches the runtime correlation ID. */
33
33
  id?: string;
34
+ /**
35
+ * Answered synchronously at the top of every insert attempt, immediately
36
+ * before that attempt's statement. False aborts with a
37
+ * {@link MessageInsertPreconditionError} and writes nothing.
38
+ *
39
+ * For a caller whose right to write can lapse while the insert is in
40
+ * flight. Per attempt rather than per call because contention retries the
41
+ * insert after an awaited backoff, and the world can move under a caller
42
+ * during that sleep.
43
+ */
44
+ insertPrecondition?: () => boolean;
34
45
  }
35
46
 
36
47
  declare type AddMessageResult = Awaited<ReturnType<addMessage_2>>;
@@ -301,6 +312,12 @@ declare const AssistantConfigSchema: z.ZodObject<{
301
312
  "your-own": "your-own";
302
313
  }>>;
303
314
  }, z.core.$strip>>;
315
+ "figma-oauth": z.ZodDefault<z.ZodObject<{
316
+ mode: z.ZodDefault<z.ZodEnum<{
317
+ managed: "managed";
318
+ "your-own": "your-own";
319
+ }>>;
320
+ }, z.core.$strip>>;
304
321
  "eventbrite-oauth": z.ZodDefault<z.ZodObject<{
305
322
  mode: z.ZodDefault<z.ZodEnum<{
306
323
  managed: "managed";
@@ -705,7 +722,7 @@ declare const AssistantConfigSchema: z.ZodObject<{
705
722
  fallbackProfile: z.ZodOptional<z.ZodString>;
706
723
  }, z.core.$strip>>>;
707
724
  profileOrder: z.ZodDefault<z.ZodArray<z.ZodString>>;
708
- callSites: z.ZodDefault<z.ZodRecord<z.ZodEnum<{
725
+ callSites: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodDefault<z.ZodRecord<z.ZodEnum<{
709
726
  mainAgent: "mainAgent";
710
727
  subagentSpawn: "subagentSpawn";
711
728
  heartbeatAgent: "heartbeatAgent";
@@ -811,7 +828,7 @@ declare const AssistantConfigSchema: z.ZodObject<{
811
828
  }>>;
812
829
  disableCache: z.ZodOptional<z.ZodBoolean>;
813
830
  profile: z.ZodOptional<z.ZodString>;
814
- }, z.core.$strip>>>;
831
+ }, z.core.$strip>>>>;
815
832
  activeProfile: z.ZodOptional<z.ZodString>;
816
833
  advisorProfile: z.ZodOptional<z.ZodString>;
817
834
  defaultProvider: z.ZodCatch<z.ZodOptional<z.ZodObject<{
@@ -1498,6 +1515,7 @@ declare const AssistantEventEnvelopeSchema: z.ZodObject<{
1498
1515
  delete: "delete";
1499
1516
  create: "create";
1500
1517
  update: "update";
1518
+ merge: "merge";
1501
1519
  }>;
1502
1520
  contactId: z.ZodOptional<z.ZodString>;
1503
1521
  currentDisplayName: z.ZodOptional<z.ZodString>;
@@ -1506,6 +1524,12 @@ declare const AssistantEventEnvelopeSchema: z.ZodObject<{
1506
1524
  type: z.ZodString;
1507
1525
  address: z.ZodString;
1508
1526
  }, z.core.$strip>>>;
1527
+ donorContactId: z.ZodOptional<z.ZodString>;
1528
+ donorDisplayName: z.ZodOptional<z.ZodString>;
1529
+ donorChannels: z.ZodOptional<z.ZodArray<z.ZodObject<{
1530
+ type: z.ZodString;
1531
+ address: z.ZodString;
1532
+ }, z.core.$strip>>>;
1509
1533
  displayName: z.ZodOptional<z.ZodString>;
1510
1534
  notes: z.ZodOptional<z.ZodString>;
1511
1535
  notesProposed: z.ZodOptional<z.ZodBoolean>;
@@ -1521,6 +1545,10 @@ declare const AssistantEventEnvelopeSchema: z.ZodObject<{
1521
1545
  description: z.ZodOptional<z.ZodString>;
1522
1546
  role: z.ZodOptional<z.ZodString>;
1523
1547
  verify: z.ZodOptional<z.ZodBoolean>;
1548
+ contactId: z.ZodOptional<z.ZodString>;
1549
+ contactDisplayName: z.ZodOptional<z.ZodString>;
1550
+ displayName: z.ZodOptional<z.ZodString>;
1551
+ notes: z.ZodOptional<z.ZodString>;
1524
1552
  }, z.core.$strip>, z.ZodObject<{
1525
1553
  type: z.ZodLiteral<"contacts_changed">;
1526
1554
  }, z.core.$strip>, z.ZodObject<{
@@ -1579,15 +1607,6 @@ declare const AssistantEventEnvelopeSchema: z.ZodObject<{
1579
1607
  profile: z.ZodNullable<z.ZodString>;
1580
1608
  sessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1581
1609
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
1582
- }, z.core.$strip>, z.ZodObject<{
1583
- type: z.ZodLiteral<"conversation_list_invalidated">;
1584
- reason: z.ZodEnum<{
1585
- deleted: "deleted";
1586
- created: "created";
1587
- renamed: "renamed";
1588
- reordered: "reordered";
1589
- seen_changed: "seen_changed";
1590
- }>;
1591
1610
  }, z.core.$strip>, z.ZodObject<{
1592
1611
  type: z.ZodLiteral<"conversation_notice">;
1593
1612
  conversationId: z.ZodString;
@@ -2617,9 +2636,7 @@ export declare class AssistantEventHub {
2617
2636
  * it receive the event; untargeted events go to all
2618
2637
  * - if `targetInterfaceId` is set, only client subscribers whose
2619
2638
  * `interfaceId` matches receive the event; process subscribers and
2620
- * non-matching clients are skipped. Used to narrow legacy
2621
- * broadcasts (e.g. `conversation_list_invalidated`) to a specific
2622
- * client surface during a migration window.
2639
+ * non-matching clients are skipped.
2623
2640
  *
2624
2641
  * Fanout is isolated: a throwing or rejecting subscriber does not abort
2625
2642
  * delivery to remaining subscribers.
@@ -2752,6 +2769,7 @@ declare const AssistantEventPublishOptionsSchema: z.ZodObject<{
2752
2769
  ios: "ios";
2753
2770
  macos: "macos";
2754
2771
  windows: "windows";
2772
+ linux: "linux";
2755
2773
  cli: "cli";
2756
2774
  "chrome-extension": "chrome-extension";
2757
2775
  route: "route";
@@ -3018,6 +3036,7 @@ declare const AssistantEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3018
3036
  delete: "delete";
3019
3037
  create: "create";
3020
3038
  update: "update";
3039
+ merge: "merge";
3021
3040
  }>;
3022
3041
  contactId: z.ZodOptional<z.ZodString>;
3023
3042
  currentDisplayName: z.ZodOptional<z.ZodString>;
@@ -3026,6 +3045,12 @@ declare const AssistantEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3026
3045
  type: z.ZodString;
3027
3046
  address: z.ZodString;
3028
3047
  }, z.core.$strip>>>;
3048
+ donorContactId: z.ZodOptional<z.ZodString>;
3049
+ donorDisplayName: z.ZodOptional<z.ZodString>;
3050
+ donorChannels: z.ZodOptional<z.ZodArray<z.ZodObject<{
3051
+ type: z.ZodString;
3052
+ address: z.ZodString;
3053
+ }, z.core.$strip>>>;
3029
3054
  displayName: z.ZodOptional<z.ZodString>;
3030
3055
  notes: z.ZodOptional<z.ZodString>;
3031
3056
  notesProposed: z.ZodOptional<z.ZodBoolean>;
@@ -3041,6 +3066,10 @@ declare const AssistantEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3041
3066
  description: z.ZodOptional<z.ZodString>;
3042
3067
  role: z.ZodOptional<z.ZodString>;
3043
3068
  verify: z.ZodOptional<z.ZodBoolean>;
3069
+ contactId: z.ZodOptional<z.ZodString>;
3070
+ contactDisplayName: z.ZodOptional<z.ZodString>;
3071
+ displayName: z.ZodOptional<z.ZodString>;
3072
+ notes: z.ZodOptional<z.ZodString>;
3044
3073
  }, z.core.$strip>, z.ZodObject<{
3045
3074
  type: z.ZodLiteral<"contacts_changed">;
3046
3075
  }, z.core.$strip>, z.ZodObject<{
@@ -3099,15 +3128,6 @@ declare const AssistantEventSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3099
3128
  profile: z.ZodNullable<z.ZodString>;
3100
3129
  sessionId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3101
3130
  expiresAt: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
3102
- }, z.core.$strip>, z.ZodObject<{
3103
- type: z.ZodLiteral<"conversation_list_invalidated">;
3104
- reason: z.ZodEnum<{
3105
- deleted: "deleted";
3106
- created: "created";
3107
- renamed: "renamed";
3108
- reordered: "reordered";
3109
- seen_changed: "seen_changed";
3110
- }>;
3111
3131
  }, z.core.$strip>, z.ZodObject<{
3112
3132
  type: z.ZodLiteral<"conversation_notice">;
3113
3133
  conversationId: z.ZodString;
@@ -4286,7 +4306,7 @@ declare interface CliCommandHelp {
4286
4306
  * than polluting the interface vocabulary. Drives only the per-turn
4287
4307
  * `client_os` context line (e.g. app-builder mobile-first for `ios`/`android`).
4288
4308
  */
4289
- declare const CLIENT_OS_VALUES: readonly ["web", "ios", "macos", "windows", "android"];
4309
+ declare const CLIENT_OS_VALUES: readonly ["web", "ios", "macos", "windows", "linux", "android"];
4290
4310
 
4291
4311
  declare interface ClientEntry extends BaseSubscriberEntry {
4292
4312
  type: "client";
@@ -4573,8 +4593,12 @@ export declare class CredentialStoreError extends Error {
4573
4593
  export declare function deleteConversation(id: string): Promise<void>;
4574
4594
 
4575
4595
  /**
4576
- * The presence states a desktop client may report. Single runtime source: the
4577
- * stored type and the route's wire enum both derive from this tuple.
4596
+ * The presence states a desktop client may report. Single runtime source for
4597
+ * the daemon's stored type, the client route's wire enum, and the Electron
4598
+ * presence monitor.
4599
+ *
4600
+ * Member order is load-bearing: the route feeds this tuple to `z.enum`, so
4601
+ * reordering rewrites the generated `assistant/openapi.yaml`.
4578
4602
  */
4579
4603
  declare const DESKTOP_PRESENCE_STATES: readonly ["active", "idle", "away"];
4580
4604
 
@@ -4816,8 +4840,8 @@ export declare const HOOKS: {
4816
4840
 
4817
4841
  /**
4818
4842
  * Host proxy capabilities that an interface can support. macOS supports all
4819
- * of them, Windows withholds app control, and chrome-extension supports only
4820
- * host_browser through the Chrome DevTools Protocol proxy.
4843
+ * of them, Windows and Linux withhold app control, and chrome-extension
4844
+ * supports only host_browser through the Chrome DevTools Protocol proxy.
4821
4845
  */
4822
4846
  declare const HOST_PROXY_CAPABILITIES: readonly ["host_bash", "host_file", "host_cu", "host_browser", "host_app_control", "host_ui_snapshot"];
4823
4847
 
@@ -4935,7 +4959,7 @@ declare interface InsertedMessage {
4935
4959
  deduplicated: boolean;
4936
4960
  }
4937
4961
 
4938
- declare const INTERFACE_IDS: readonly ["macos", "windows", "ios", "cli", "telegram", "phone", "web", "whatsapp", "slack", "email", "chrome-extension", "a2a", "discord", "route", "plugin"];
4962
+ declare const INTERFACE_IDS: readonly ["macos", "windows", "linux", "ios", "cli", "telegram", "phone", "web", "whatsapp", "slack", "email", "chrome-extension", "a2a", "discord", "route", "plugin"];
4939
4963
 
4940
4964
  declare type InterfaceId = (typeof INTERFACE_IDS)[number];
4941
4965
 
@@ -5141,6 +5165,23 @@ declare interface LiveVoiceErrorServerFrame extends LiveVoiceServerFrameBase {
5141
5165
  * from older daemons) means the error is terminal for the session.
5142
5166
  */
5143
5167
  readonly recoverable?: boolean;
5168
+ /**
5169
+ * The attachment the refused frame named, present on `sight_frame`
5170
+ * rejections so the client can retire the exact keep that failed.
5171
+ *
5172
+ * `frameType` alone only narrows a rejection to the keep stream, and that
5173
+ * stream is the one place several sends are routinely outstanding at once:
5174
+ * the camera keeps shooting while a persist waits out a running turn, so a
5175
+ * client holding three unacknowledged keeps cannot tell which of them this
5176
+ * error is about. Naming the id is what turns "a frame failed" into "this
5177
+ * preview comes down".
5178
+ *
5179
+ * Optional, and no other error path populates it: a parse failure has no
5180
+ * id to name, and the other frames carrying an attachment have at most one
5181
+ * in flight, which `frameType` already identifies. Clients must tolerate
5182
+ * an absent id and must not gate any behavior on its presence.
5183
+ */
5184
+ readonly attachmentId?: string;
5144
5185
  }
5145
5186
 
5146
5187
  /**
@@ -5484,8 +5525,8 @@ declare const messageMetadataSchema: z.ZodObject<{
5484
5525
  discord: "discord";
5485
5526
  plugin: "plugin";
5486
5527
  }>>;
5487
- userMessageInterface: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "cli" | "chrome-extension" | "route" | null, string>> & z.ZodType<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "cli" | "chrome-extension" | "route", string, z.core.$ZodTypeInternals<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "cli" | "chrome-extension" | "route", string>>>;
5488
- assistantMessageInterface: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "cli" | "chrome-extension" | "route" | null, string>> & z.ZodType<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "cli" | "chrome-extension" | "route", string, z.core.$ZodTypeInternals<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "cli" | "chrome-extension" | "route", string>>>;
5528
+ userMessageInterface: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "linux" | "cli" | "chrome-extension" | "route" | null, string>> & z.ZodType<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "linux" | "cli" | "chrome-extension" | "route", string, z.core.$ZodTypeInternals<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "linux" | "cli" | "chrome-extension" | "route", string>>>;
5529
+ assistantMessageInterface: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "linux" | "cli" | "chrome-extension" | "route" | null, string>> & z.ZodType<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "linux" | "cli" | "chrome-extension" | "route", string, z.core.$ZodTypeInternals<"phone" | "telegram" | "whatsapp" | "slack" | "email" | "a2a" | "discord" | "plugin" | "web" | "ios" | "macos" | "windows" | "linux" | "cli" | "chrome-extension" | "route", string>>>;
5489
5530
  client: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5490
5531
  clientOsFromRequest: z.ZodOptional<z.ZodBoolean>;
5491
5532
  subagentNotification: z.ZodOptional<z.ZodObject<{
@@ -5552,6 +5593,7 @@ declare const messageMetadataSchema: z.ZodObject<{
5552
5593
  attachmentStoredPaths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
5553
5594
  memoryInjectedBlock: z.ZodOptional<z.ZodString>;
5554
5595
  memoryV3InjectedBlock: z.ZodOptional<z.ZodString>;
5596
+ memoryV3SpotlightBlock: z.ZodOptional<z.ZodString>;
5555
5597
  turnContextBlock: z.ZodOptional<z.ZodString>;
5556
5598
  pkbSystemReminderBlock: z.ZodOptional<z.ZodString>;
5557
5599
  workspaceBlock: z.ZodOptional<z.ZodString>;
@@ -6735,10 +6777,7 @@ export declare interface SendMessageConfig {
6735
6777
  /**
6736
6778
  * When true, the TURN-STARTING user message carries content that will not
6737
6779
  * recur byte-identically on the next turn, so a long-TTL breakpoint placed
6738
- * on it could never be read back across turns. The agent loop is the only
6739
- * producer: it sets the flag from the history it is about to send, when the
6740
- * turn-starting message carries a memory-v3 `<memory_spotlight>` block (the
6741
- * one injected block strip-and-replaced from every user message each turn).
6780
+ * on it could never be read back across turns.
6742
6781
  *
6743
6782
  * The flag describes the turn, not the request, so it holds for every
6744
6783
  * request the turn makes, including tool-loop iterations, whose trailing
@@ -7683,6 +7722,7 @@ declare const ToolDefinitionSchema: z.ZodObject<{
7683
7722
  macos: "macos";
7684
7723
  windows: "windows";
7685
7724
  android: "android";
7725
+ linux: "linux";
7686
7726
  }>>>;
7687
7727
  execute: z.ZodOptional<z.ZodCustom<(input: Record<string, unknown>, context: ToolContext) => Promise<ToolExecutionResult>, (input: Record<string, unknown>, context: ToolContext) => Promise<ToolExecutionResult>>>;
7688
7728
  exclusive: z.ZodOptional<z.ZodBoolean>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vellumai/plugin-api",
3
- "version": "0.11.8",
3
+ "version": "0.11.9-dev.202609041316.d96b917",
4
4
  "description": "Public TypeScript authoring contract for Vellum assistant plugins.",
5
5
  "license": "MIT",
6
6
  "type": "module",