@yaklabs-ai/plugin-protocol 0.12.2 → 0.12.3

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
@@ -11,7 +11,7 @@ flow.
11
11
  ```json
12
12
  {
13
13
  "dependencies": {
14
- "@kay/plugin-protocol": "npm:@yaklabs-ai/plugin-protocol@^0.12.2"
14
+ "@kay/plugin-protocol": "npm:@yaklabs-ai/plugin-protocol@^0.12.3"
15
15
  }
16
16
  }
17
17
  ```
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "package": "@yaklabs-ai/plugin-protocol",
4
- "version": "0.12.2",
4
+ "version": "0.12.3",
5
5
  "target": "npm",
6
6
  "firstPartyLicense": "MIT",
7
7
  "bundled": [],
package/dist/index.d.ts CHANGED
@@ -1961,7 +1961,7 @@ export declare const KAY_APP_DATA_SNAPSHOT_MAX_BYTES: number;
1961
1961
  export declare const KAY_EVENT_PUBLISHER_ID: "kay";
1962
1962
 
1963
1963
  /** Released SDK contracts still implemented by the host, alongside its current SDK. */
1964
- export declare const KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS: readonly ["0.8.0", "0.8.1", "0.8.2", "0.8.3", "0.8.4", "0.8.5", "0.9.0", "0.9.1", "0.10.0", "0.11.0", "0.11.1", "0.12.0", "0.12.1"];
1964
+ export declare const KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS: readonly ["0.8.0", "0.8.1", "0.8.2", "0.8.3", "0.8.4", "0.8.5", "0.9.0", "0.9.1", "0.10.0", "0.11.0", "0.11.1", "0.12.0", "0.12.1", "0.12.2"];
1965
1965
 
1966
1966
  export declare const KAY_PLUGIN_PROTOCOL_PACKAGE_NAME: "@kay/plugin-protocol";
1967
1967
 
@@ -2142,8 +2142,17 @@ export declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
2142
2142
  * plugin that subscribes to it declares `^0.12.2`, so an older host refuses a directory or
2143
2143
  * repository plugin at load instead of the subscription never firing. That check never runs for a
2144
2144
  * bundled plugin, which ships with the SDK it calls.
2145
+ *
2146
+ * 0.12.3 adds the `page` reference open kind (`{ kind: "page", pageId }` on a
2147
+ * `referencePresentations` entry), and lets a presentation name a `kay.app` URI module as well as a
2148
+ * `kay.agent` one. A plugin's own `scheme://` references then pill with its icon and the module's
2149
+ * `describe` title, and a click opens the plugin's own registered page with the reference URI as
2150
+ * the page's `objectId`. Additive: a `^0.12.2` plugin keeps loading. The value is new schema, so an
2151
+ * older host refuses the whole manifest at parse (`manifest-schema-invalid`), before any range
2152
+ * check runs. A plugin that declares it still declares `^0.12.3`, so the install-time version
2153
+ * checks name the mismatch instead of a schema error.
2145
2154
  */
2146
- export declare const KAY_PLUGIN_SDK_VERSION: "0.12.2";
2155
+ export declare const KAY_PLUGIN_SDK_VERSION: "0.12.3";
2147
2156
 
2148
2157
  export declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
2149
2158
 
@@ -2814,6 +2823,9 @@ export declare const KayPluginManifestV1: z.ZodObject<{
2814
2823
  kind: z.ZodLiteral<"working-document">;
2815
2824
  }, z.core.$strict>, z.ZodObject<{
2816
2825
  kind: z.ZodLiteral<"browser-pane">;
2826
+ }, z.core.$strict>, z.ZodObject<{
2827
+ kind: z.ZodLiteral<"page">;
2828
+ pageId: z.ZodString;
2817
2829
  }, z.core.$strict>], "kind">;
2818
2830
  variants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
2819
2831
  resourceKind: z.ZodString;
@@ -3396,6 +3408,9 @@ export declare const KayUiTargetManifest: z.ZodObject<{
3396
3408
  kind: z.ZodLiteral<"working-document">;
3397
3409
  }, z.core.$strict>, z.ZodObject<{
3398
3410
  kind: z.ZodLiteral<"browser-pane">;
3411
+ }, z.core.$strict>, z.ZodObject<{
3412
+ kind: z.ZodLiteral<"page">;
3413
+ pageId: z.ZodString;
3399
3414
  }, z.core.$strict>], "kind">;
3400
3415
  variants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
3401
3416
  resourceKind: z.ZodString;
@@ -5647,6 +5662,9 @@ export declare const ReferenceOpenBehavior: z.ZodDiscriminatedUnion<[z.ZodObject
5647
5662
  kind: z.ZodLiteral<"working-document">;
5648
5663
  }, z.core.$strict>, z.ZodObject<{
5649
5664
  kind: z.ZodLiteral<"browser-pane">;
5665
+ }, z.core.$strict>, z.ZodObject<{
5666
+ kind: z.ZodLiteral<"page">;
5667
+ pageId: z.ZodString;
5650
5668
  }, z.core.$strict>], "kind">;
5651
5669
 
5652
5670
  export declare type ReferenceOpenBehavior = z.infer<typeof ReferenceOpenBehavior>;
@@ -5659,6 +5677,9 @@ export declare const ReferencePresentationContribution: z.ZodObject<{
5659
5677
  kind: z.ZodLiteral<"working-document">;
5660
5678
  }, z.core.$strict>, z.ZodObject<{
5661
5679
  kind: z.ZodLiteral<"browser-pane">;
5680
+ }, z.core.$strict>, z.ZodObject<{
5681
+ kind: z.ZodLiteral<"page">;
5682
+ pageId: z.ZodString;
5662
5683
  }, z.core.$strict>], "kind">;
5663
5684
  variants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
5664
5685
  resourceKind: z.ZodString;
@@ -6850,6 +6871,9 @@ export declare const ResolvedPluginContractV1: z.ZodObject<{
6850
6871
  kind: z.ZodLiteral<"working-document">;
6851
6872
  }, z.core.$strict>, z.ZodObject<{
6852
6873
  kind: z.ZodLiteral<"browser-pane">;
6874
+ }, z.core.$strict>, z.ZodObject<{
6875
+ kind: z.ZodLiteral<"page">;
6876
+ pageId: z.ZodString;
6853
6877
  }, z.core.$strict>], "kind">;
6854
6878
  variants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
6855
6879
  resourceKind: z.ZodString;
@@ -7283,6 +7307,9 @@ export declare const ResolvedReferencePresentation: z.ZodObject<{
7283
7307
  kind: z.ZodLiteral<"working-document">;
7284
7308
  }, z.core.$strict>, z.ZodObject<{
7285
7309
  kind: z.ZodLiteral<"browser-pane">;
7310
+ }, z.core.$strict>, z.ZodObject<{
7311
+ kind: z.ZodLiteral<"page">;
7312
+ pageId: z.ZodString;
7286
7313
  }, z.core.$strict>], "kind">;
7287
7314
  variants: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
7288
7315
  resourceKind: z.ZodString;
package/dist/index.js CHANGED
@@ -115,7 +115,7 @@ import { z as z2 } from "zod";
115
115
  import { z } from "zod";
116
116
  var KAY_PLUGIN_PROTOCOL_VERSION = "kay.plugin.v1";
117
117
  var KAY_PLUGIN_PROTOCOL_PACKAGE_NAME = "@kay/plugin-protocol";
118
- var KAY_PLUGIN_SDK_VERSION = "0.12.2";
118
+ var KAY_PLUGIN_SDK_VERSION = "0.12.3";
119
119
  var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
120
120
  "0.8.0",
121
121
  "0.8.1",
@@ -129,7 +129,8 @@ var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
129
129
  "0.11.0",
130
130
  "0.11.1",
131
131
  "0.12.0",
132
- "0.12.1"
132
+ "0.12.1",
133
+ "0.12.2"
133
134
  ];
134
135
  var KAY_PLUGIN_TARGET_NAMES = [
135
136
  "kay.agent",
@@ -2540,7 +2541,13 @@ var ResultRendererContribution = z7.strictObject({
2540
2541
  });
2541
2542
  var ReferenceOpenBehavior = z7.discriminatedUnion("kind", [
2542
2543
  z7.strictObject({ kind: z7.literal("working-document") }),
2543
- z7.strictObject({ kind: z7.literal("browser-pane") })
2544
+ z7.strictObject({ kind: z7.literal("browser-pane") }),
2545
+ /**
2546
+ * Open one of the presenting plugin's OWN registered pages (`registerPage`'s
2547
+ * descriptor id) with the reference's canonical URI as the page's `objectId`.
2548
+ * Needs no web address, so a plugin-only resource (`user-todo://items/3`) can pill.
2549
+ */
2550
+ z7.strictObject({ kind: z7.literal("page"), pageId: NonEmptyString })
2544
2551
  ]);
2545
2552
  var ReferencePresentationVariant = z7.strictObject({
2546
2553
  resourceKind: NonEmptyString,
@@ -3250,7 +3257,10 @@ var KayPluginManifestV1 = z8.strictObject({
3250
3257
  }
3251
3258
  const subscribedUiEvents = new Set(manifest.targets?.kay?.ui?.contributes?.eventSubscriptions?.map((subscription) => subscription.event) ?? []);
3252
3259
  const invokedUiEndpoints = new Set(manifest.permissions?.byTarget["kay.ui"]?.endpoints?.filter((grant) => grant.operations.includes("invoke")).map((grant) => grant.endpoint) ?? []);
3253
- const uriModuleIds = new Set(manifest.targets?.kay?.agent?.contributes?.uriModules?.map((module) => module.localId) ?? []);
3260
+ const uriModuleIds = new Set([
3261
+ ...manifest.targets?.kay?.agent?.contributes?.uriModules ?? [],
3262
+ ...manifest.targets?.kay?.app?.contributes?.uriModules ?? []
3263
+ ].map((module) => module.localId));
3254
3264
  const presentationByUriModule = /* @__PURE__ */ new Map();
3255
3265
  for (const [index, presentation] of (manifest.targets?.kay?.ui?.contributes?.referencePresentations ?? []).entries()) {
3256
3266
  const path = [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yaklabs-ai/plugin-protocol",
3
- "version": "0.12.2",
3
+ "version": "0.12.3",
4
4
  "description": "The Kay plugin manifest schema (`kay.plugin.v1`) — parse and validate a kay-plugin.json.",
5
5
  "author": "YakLabs",
6
6
  "type": "module",