@yaklabs-ai/plugin-sdk 0.31.0 → 0.32.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/README.md CHANGED
@@ -13,7 +13,7 @@ it under the name your plugin code actually imports:
13
13
  ```json
14
14
  {
15
15
  "dependencies": {
16
- "@bonsai/plugin-sdk": "npm:@yaklabs-ai/plugin-sdk@^0.31.0"
16
+ "@bonsai/plugin-sdk": "npm:@yaklabs-ai/plugin-sdk@^0.32.0"
17
17
  }
18
18
  }
19
19
  ```
@@ -62,7 +62,7 @@ Every tool the entrypoint registers is declared in the manifest too:
62
62
  "description": "Greets people by name.",
63
63
  "version": "0.1.0",
64
64
  "namespace": "widgets",
65
- "compatibility": { "sdk": "^0.31.0" },
65
+ "compatibility": { "sdk": "^0.32.0" },
66
66
  "targets": {
67
67
  "kay": {
68
68
  "agent": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "package": "@yaklabs-ai/plugin-sdk",
4
- "version": "0.31.0",
4
+ "version": "0.32.0",
5
5
  "target": "npm",
6
6
  "firstPartyLicense": "MIT",
7
7
  "bundled": [
@@ -2362,8 +2362,12 @@ declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
2362
2362
  * `contributes` names each entry's title, page, shortcut and icon file. It replaces `activityRail` on a
2363
2363
  * UI app, which is stripped from a manifest that still carries it, so that manifest loses only the
2364
2364
  * rail button. A plugin that declares a rail entry declares ^0.31.0.
2365
+ *
2366
+ * 0.32.0 lets an app-data source declare its window store as data (#15891). `store` under
2367
+ * `contributes.dataSources` replaces a `kay.ui` data materializer, and a change too big for a live
2368
+ * update becomes a re-read of the snapshot. A plugin that declares a store declares ^0.32.0.
2365
2369
  */
2366
- declare const KAY_PLUGIN_SDK_VERSION: "0.31.0";
2370
+ declare const KAY_PLUGIN_SDK_VERSION: "0.32.0";
2367
2371
 
2368
2372
  declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
2369
2373
 
@@ -2416,8 +2416,12 @@ declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
2416
2416
  * `contributes` names each entry's title, page, shortcut and icon file. It replaces `activityRail` on a
2417
2417
  * UI app, which is stripped from a manifest that still carries it, so that manifest loses only the
2418
2418
  * rail button. A plugin that declares a rail entry declares ^0.31.0.
2419
+ *
2420
+ * 0.32.0 lets an app-data source declare its window store as data (#15891). `store` under
2421
+ * `contributes.dataSources` replaces a `kay.ui` data materializer, and a change too big for a live
2422
+ * update becomes a re-read of the snapshot. A plugin that declares a store declares ^0.32.0.
2419
2423
  */
2420
- declare const KAY_PLUGIN_SDK_VERSION: "0.31.0";
2424
+ declare const KAY_PLUGIN_SDK_VERSION: "0.32.0";
2421
2425
 
2422
2426
  declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
2423
2427
 
@@ -5577,6 +5581,13 @@ declare const ResolvedPluginContractV1: z.ZodObject<{
5577
5581
  schema: z.ZodRecord<z.ZodString, z.ZodType<authoringCommonSchemas.JsonValue, unknown, z.core.$ZodTypeInternals<authoringCommonSchemas.JsonValue, unknown>>>;
5578
5582
  }, z.core.$strict>;
5579
5583
  }, z.core.$strict>>;
5584
+ store: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
5585
+ shape: z.ZodLiteral<"rows">;
5586
+ rowsField: z.ZodString;
5587
+ key: z.ZodArray<z.ZodString>;
5588
+ }, z.core.$strict>, z.ZodObject<{
5589
+ shape: z.ZodLiteral<"value">;
5590
+ }, z.core.$strict>], "shape">>;
5580
5591
  }, z.core.$strict>>>;
5581
5592
  kayAppWhiteboardTypes: z.ZodOptional<z.ZodArray<z.ZodObject<{
5582
5593
  localId: z.ZodString;
@@ -2691,8 +2691,12 @@ declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
2691
2691
  * `contributes` names each entry's title, page, shortcut and icon file. It replaces `activityRail` on a
2692
2692
  * UI app, which is stripped from a manifest that still carries it, so that manifest loses only the
2693
2693
  * rail button. A plugin that declares a rail entry declares ^0.31.0.
2694
+ *
2695
+ * 0.32.0 lets an app-data source declare its window store as data (#15891). `store` under
2696
+ * `contributes.dataSources` replaces a `kay.ui` data materializer, and a change too big for a live
2697
+ * update becomes a re-read of the snapshot. A plugin that declares a store declares ^0.32.0.
2694
2698
  */
2695
- declare const KAY_PLUGIN_SDK_VERSION: "0.31.0";
2699
+ declare const KAY_PLUGIN_SDK_VERSION: "0.32.0";
2696
2700
 
2697
2701
  declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
2698
2702
 
package/dist/kay-app.d.ts CHANGED
@@ -2646,8 +2646,12 @@ declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
2646
2646
  * `contributes` names each entry's title, page, shortcut and icon file. It replaces `activityRail` on a
2647
2647
  * UI app, which is stripped from a manifest that still carries it, so that manifest loses only the
2648
2648
  * rail button. A plugin that declares a rail entry declares ^0.31.0.
2649
+ *
2650
+ * 0.32.0 lets an app-data source declare its window store as data (#15891). `store` under
2651
+ * `contributes.dataSources` replaces a `kay.ui` data materializer, and a change too big for a live
2652
+ * update becomes a re-read of the snapshot. A plugin that declares a store declares ^0.32.0.
2649
2653
  */
2650
- declare const KAY_PLUGIN_SDK_VERSION: "0.31.0";
2654
+ declare const KAY_PLUGIN_SDK_VERSION: "0.32.0";
2651
2655
 
2652
2656
  declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
2653
2657
 
@@ -4791,17 +4795,6 @@ export declare interface KayAppModelSelectionEntry extends TranscriptEntryLike {
4791
4795
  readonly message?: unknown;
4792
4796
  }
4793
4797
 
4794
- /** How a helper's settled result reaches the session. */
4795
- export declare interface KayAppModelSelectionHelperHandBack {
4796
- /**
4797
- * Wake the session's own model when the helper fails, or ends its run without stamping its
4798
- * work completed (it stopped short, or reported itself blocked).
4799
- */
4800
- readonly wakeOnFailure: boolean;
4801
- /** Wake it when the helper's answer starts with this marker (the helper handing the work back). */
4802
- readonly wakeOnReplyPrefix?: string;
4803
- }
4804
-
4805
4798
  /** What the daemon shows the person when a change lands, as a visible message the model also reads. */
4806
4799
  export declare interface KayAppModelSelectionNotice {
4807
4800
  readonly kind: "tier-up" | "tier-down" | "thinking-down";
@@ -4857,41 +4850,12 @@ export declare interface KayAppModelSelectionResponseFacts extends KayAppModelSe
4857
4850
  readonly contextTokens: number;
4858
4851
  }
4859
4852
 
4860
- export declare type KayAppModelSelectionSendAnswer = {
4861
- /** The session's own model answers, after `change` when there is one. */
4853
+ /** The policy's answer to a follow-up: the session's own model answers, after `change` when there is one. */
4854
+ export declare interface KayAppModelSelectionSendAnswer {
4862
4855
  readonly kind: "main";
4863
4856
  readonly change?: KayAppModelSelectionChange;
4864
4857
  readonly records?: readonly KayAppModelSelectionRecord[];
4865
- } | {
4866
- /** A helper subagent answers instead, and the session's own model does not run. */
4867
- readonly kind: "helper";
4868
- readonly tier: Exclude<KayAppModelTierId, "small">;
4869
- /**
4870
- * Continue this existing helper of the session (a child the session's earlier hand-offs
4871
- * spawned) instead of starting a new one: `continueHelper.brief` becomes its next message,
4872
- * written for a helper that already holds its earlier request, work and answer. The daemon
4873
- * starts a new helper on the top-level `brief` instead when that child is not this
4874
- * session's, is still working, or cannot take a message; `continueHelper.brief` is used
4875
- * only when the child is actually continued.
4876
- */
4877
- readonly continueHelper?: {
4878
- readonly sessionId: string;
4879
- readonly brief: string;
4880
- };
4881
- /**
4882
- * A new helper's first message, its complete context (the previous reply and the
4883
- * follow-up). Always present: it is what the daemon sends whenever it starts a new helper,
4884
- * including when a `continueHelper` cannot be continued.
4885
- */
4886
- readonly brief: string;
4887
- readonly displayName: string;
4888
- /** Who took the request, for the person's request row ("Quick helper on the medium model"). */
4889
- readonly caption: string;
4890
- /** The full line under the helper's reply ("Answered by Quick helper on the medium model"). */
4891
- readonly replyCaption: string;
4892
- readonly handBack: KayAppModelSelectionHelperHandBack;
4893
- readonly records?: readonly KayAppModelSelectionRecord[];
4894
- };
4858
+ }
4895
4859
 
4896
4860
  /** A person's plain-text follow-up to an idle session, before its model runs. */
4897
4861
  export declare interface KayAppModelSelectionSendFacts extends KayAppModelSelectionSessionFacts {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yaklabs-ai/plugin-sdk",
3
- "version": "0.31.0",
3
+ "version": "0.32.0",
4
4
  "description": "The Kay plugin SDK — types and helpers for authoring a Kay directory plugin.",
5
5
  "author": "YakLabs",
6
6
  "type": "module",