@yaklabs-ai/plugin-protocol 0.48.1 → 0.49.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
@@ -11,7 +11,7 @@ flow.
11
11
  ```json
12
12
  {
13
13
  "dependencies": {
14
- "@bonsai/plugin-protocol": "npm:@yaklabs-ai/plugin-protocol@^0.48.1"
14
+ "@bonsai/plugin-protocol": "npm:@yaklabs-ai/plugin-protocol@^0.49.0"
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.48.1",
4
+ "version": "0.49.0",
5
5
  "target": "npm",
6
6
  "firstPartyLicense": "MIT",
7
7
  "bundled": [
package/dist/index.d.ts CHANGED
@@ -4736,8 +4736,13 @@ export declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
4736
4736
  * 0.48.0 adds the models.complete UI capability.
4737
4737
  *
4738
4738
  * 0.48.1 adds app-tool metadata, conditional tool permissions and screen-action declarations.
4739
+ *
4740
+ * 0.49.0 adds sessionless URI calls on both backend targets. It removes app.memory and its note
4741
+ * types; callers use the resource surface instead. Previously admitted SDK contracts are no
4742
+ * longer served because they included app.memory on notebook hosts. No compatibility alias
4743
+ * restores it; callers migrate and declare ^0.49.0.
4739
4744
  */
4740
- export declare const KAY_PLUGIN_SDK_VERSION: "0.48.1";
4745
+ export declare const KAY_PLUGIN_SDK_VERSION: "0.49.0";
4741
4746
 
4742
4747
  export declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
4743
4748
 
@@ -8122,7 +8127,7 @@ export declare function parseSemver(value: string): ParsedSemver | undefined;
8122
8127
  export declare function parseWhere(source: string, keyTypes?: WhereKeyTypes): WhereParseResult;
8123
8128
 
8124
8129
  /** Every capability slug {@link PluginCapabilityClaimV1} can express, for exhaustive table checks. */
8125
- export declare const PLUGIN_CAPABILITY_SLUGS: readonly ["sessions.run", "network.connect", "web-session.request", "web-session.download", "process.spawn", "sessions.read", "signals.read", "memory.read", "memory.write", "skills.read", "skills.write", "skills.share", "plugins.set-enabled", "sessions.annotate", "sessions.compact", "soul.write", "tools.describe", "workspace.command", "sessions.create", "sessions.update", "models.complete", "systemOne.use", "automations.write", "automations.run", "workflows.define", "workflows.signals", "session-events.subscribe", "agents.run", "dynamic-context.register", "app-data.register", "knowledge-source.register", "artifacts.read", "session-artifacts.read", "session-artifacts.create", "account.assert", "account.update", "agents.permissions", "tool-interception.register", "interaction.surface", "config.declare-section", "auth.own-service", "auth.shared-identity", "cli.bind", "mcp.host-server", "prompt.resident", "skills.declared-source", "whiteboard.discover", "whiteboard.read", "whiteboard.create", "whiteboard.update", "whiteboard.remove", "model-selection.register", "system-prompt.register"];
8130
+ export declare const PLUGIN_CAPABILITY_SLUGS: readonly ["sessions.run", "network.connect", "web-session.request", "web-session.download", "process.spawn", "sessions.read", "signals.read", "uri.call", "skills.read", "skills.write", "skills.share", "plugins.set-enabled", "sessions.annotate", "sessions.compact", "soul.write", "tools.describe", "workspace.command", "sessions.create", "sessions.update", "models.complete", "systemOne.use", "automations.write", "automations.run", "workflows.define", "workflows.signals", "session-events.subscribe", "agents.run", "dynamic-context.register", "app-data.register", "knowledge-source.register", "artifacts.read", "session-artifacts.read", "session-artifacts.create", "account.assert", "account.update", "agents.permissions", "tool-interception.register", "interaction.surface", "config.declare-section", "auth.own-service", "auth.shared-identity", "cli.bind", "mcp.host-server", "prompt.resident", "skills.declared-source", "whiteboard.discover", "whiteboard.read", "whiteboard.create", "whiteboard.update", "whiteboard.remove", "model-selection.register", "system-prompt.register"];
8126
8131
 
8127
8132
  /** Diagnostic messages carry plugin-controlled text (parse errors, module errors); bound it so a
8128
8133
  * hostile or accidental multi-megabyte error can never blow up a log line or a render surface. */
@@ -8681,13 +8686,12 @@ export declare const PluginCapabilityClaimInputV1: z.ZodCustom<{
8681
8686
  slug: "signals.read";
8682
8687
  envelope: Record<string, never>;
8683
8688
  } | {
8684
- target: "kay.app";
8685
- slug: "memory.read";
8686
- envelope: Record<string, never>;
8687
- } | {
8688
- target: "kay.app";
8689
- slug: "memory.write";
8690
- envelope: Record<string, never>;
8689
+ target: "kay.agent" | "kay.app";
8690
+ slug: "uri.call";
8691
+ envelope: {
8692
+ scheme: string;
8693
+ verb: "search" | "list" | "read" | "write" | "edit" | "delete";
8694
+ };
8691
8695
  } | {
8692
8696
  target: "kay.app";
8693
8697
  slug: "skills.read";
@@ -8942,13 +8946,12 @@ export declare const PluginCapabilityClaimInputV1: z.ZodCustom<{
8942
8946
  slug: "signals.read";
8943
8947
  envelope: Record<string, never>;
8944
8948
  } | {
8945
- target: "kay.app";
8946
- slug: "memory.read";
8947
- envelope: Record<string, never>;
8948
- } | {
8949
- target: "kay.app";
8950
- slug: "memory.write";
8951
- envelope: Record<string, never>;
8949
+ target: "kay.agent" | "kay.app";
8950
+ slug: "uri.call";
8951
+ envelope: {
8952
+ scheme: string;
8953
+ verb: "search" | "list" | "read" | "write" | "edit" | "delete";
8954
+ };
8952
8955
  } | {
8953
8956
  target: "kay.app";
8954
8957
  slug: "skills.read";
@@ -9199,13 +9202,22 @@ export declare const PluginCapabilityClaimV1: z.ZodDiscriminatedUnion<[z.ZodObje
9199
9202
  slug: z.ZodLiteral<"signals.read">;
9200
9203
  envelope: z.ZodObject<{}, z.core.$strict>;
9201
9204
  }, z.core.$strict>, z.ZodObject<{
9202
- target: z.ZodLiteral<"kay.app">;
9203
- slug: z.ZodLiteral<"memory.read">;
9204
- envelope: z.ZodObject<{}, z.core.$strict>;
9205
- }, z.core.$strict>, z.ZodObject<{
9206
- target: z.ZodLiteral<"kay.app">;
9207
- slug: z.ZodLiteral<"memory.write">;
9208
- envelope: z.ZodObject<{}, z.core.$strict>;
9205
+ target: z.ZodEnum<{
9206
+ "kay.agent": "kay.agent";
9207
+ "kay.app": "kay.app";
9208
+ }>;
9209
+ slug: z.ZodLiteral<"uri.call">;
9210
+ envelope: z.ZodObject<{
9211
+ scheme: z.ZodString;
9212
+ verb: z.ZodEnum<{
9213
+ search: "search";
9214
+ list: "list";
9215
+ read: "read";
9216
+ write: "write";
9217
+ edit: "edit";
9218
+ delete: "delete";
9219
+ }>;
9220
+ }, z.core.$strict>;
9209
9221
  }, z.core.$strict>, z.ZodObject<{
9210
9222
  target: z.ZodLiteral<"kay.app">;
9211
9223
  slug: z.ZodLiteral<"skills.read">;
@@ -9502,13 +9514,22 @@ export declare const PluginCapabilityDecisionV1: z.ZodDiscriminatedUnion<[z.ZodO
9502
9514
  slug: z.ZodLiteral<"signals.read">;
9503
9515
  envelope: z.ZodObject<{}, z.core.$strict>;
9504
9516
  }, z.core.$strict>, z.ZodObject<{
9505
- target: z.ZodLiteral<"kay.app">;
9506
- slug: z.ZodLiteral<"memory.read">;
9507
- envelope: z.ZodObject<{}, z.core.$strict>;
9508
- }, z.core.$strict>, z.ZodObject<{
9509
- target: z.ZodLiteral<"kay.app">;
9510
- slug: z.ZodLiteral<"memory.write">;
9511
- envelope: z.ZodObject<{}, z.core.$strict>;
9517
+ target: z.ZodEnum<{
9518
+ "kay.agent": "kay.agent";
9519
+ "kay.app": "kay.app";
9520
+ }>;
9521
+ slug: z.ZodLiteral<"uri.call">;
9522
+ envelope: z.ZodObject<{
9523
+ scheme: z.ZodString;
9524
+ verb: z.ZodEnum<{
9525
+ search: "search";
9526
+ list: "list";
9527
+ read: "read";
9528
+ write: "write";
9529
+ edit: "edit";
9530
+ delete: "delete";
9531
+ }>;
9532
+ }, z.core.$strict>;
9512
9533
  }, z.core.$strict>, z.ZodObject<{
9513
9534
  target: z.ZodLiteral<"kay.app">;
9514
9535
  slug: z.ZodLiteral<"skills.read">;
@@ -9804,13 +9825,22 @@ export declare const PluginCapabilityDecisionV1: z.ZodDiscriminatedUnion<[z.ZodO
9804
9825
  slug: z.ZodLiteral<"signals.read">;
9805
9826
  envelope: z.ZodObject<{}, z.core.$strict>;
9806
9827
  }, z.core.$strict>, z.ZodObject<{
9807
- target: z.ZodLiteral<"kay.app">;
9808
- slug: z.ZodLiteral<"memory.read">;
9809
- envelope: z.ZodObject<{}, z.core.$strict>;
9810
- }, z.core.$strict>, z.ZodObject<{
9811
- target: z.ZodLiteral<"kay.app">;
9812
- slug: z.ZodLiteral<"memory.write">;
9813
- envelope: z.ZodObject<{}, z.core.$strict>;
9828
+ target: z.ZodEnum<{
9829
+ "kay.agent": "kay.agent";
9830
+ "kay.app": "kay.app";
9831
+ }>;
9832
+ slug: z.ZodLiteral<"uri.call">;
9833
+ envelope: z.ZodObject<{
9834
+ scheme: z.ZodString;
9835
+ verb: z.ZodEnum<{
9836
+ search: "search";
9837
+ list: "list";
9838
+ read: "read";
9839
+ write: "write";
9840
+ edit: "edit";
9841
+ delete: "delete";
9842
+ }>;
9843
+ }, z.core.$strict>;
9814
9844
  }, z.core.$strict>, z.ZodObject<{
9815
9845
  target: z.ZodLiteral<"kay.app">;
9816
9846
  slug: z.ZodLiteral<"skills.read">;
@@ -10140,13 +10170,22 @@ export declare const PluginCapabilityRefusalV1: z.ZodObject<{
10140
10170
  slug: z.ZodLiteral<"signals.read">;
10141
10171
  envelope: z.ZodObject<{}, z.core.$strict>;
10142
10172
  }, z.core.$strict>, z.ZodObject<{
10143
- target: z.ZodLiteral<"kay.app">;
10144
- slug: z.ZodLiteral<"memory.read">;
10145
- envelope: z.ZodObject<{}, z.core.$strict>;
10146
- }, z.core.$strict>, z.ZodObject<{
10147
- target: z.ZodLiteral<"kay.app">;
10148
- slug: z.ZodLiteral<"memory.write">;
10149
- envelope: z.ZodObject<{}, z.core.$strict>;
10173
+ target: z.ZodEnum<{
10174
+ "kay.agent": "kay.agent";
10175
+ "kay.app": "kay.app";
10176
+ }>;
10177
+ slug: z.ZodLiteral<"uri.call">;
10178
+ envelope: z.ZodObject<{
10179
+ scheme: z.ZodString;
10180
+ verb: z.ZodEnum<{
10181
+ search: "search";
10182
+ list: "list";
10183
+ read: "read";
10184
+ write: "write";
10185
+ edit: "edit";
10186
+ delete: "delete";
10187
+ }>;
10188
+ }, z.core.$strict>;
10150
10189
  }, z.core.$strict>, z.ZodObject<{
10151
10190
  target: z.ZodLiteral<"kay.app">;
10152
10191
  slug: z.ZodLiteral<"skills.read">;
@@ -14743,8 +14782,8 @@ export declare const RETIRED_COMPATIBILITY_KEYS: readonly ["policy"];
14743
14782
  */
14744
14783
  export declare const RETIRED_PERMISSION_ASK_KEYS: readonly ["network", "process", "filesystem", "corpus", "paths", "workspace", "sessions", "automations", "hindsight", "agents", "dynamicContext", "appData", "toolInterception", "account", "device", "config", "workflows", "whiteboard"];
14745
14784
 
14746
- /** Capability slugs retired in SDK 0.13.0; a stored grant naming one is ignored, never refused. */
14747
- export declare const RETIRED_PLUGIN_CAPABILITY_SLUGS: readonly ["filesystem.read", "filesystem.write"];
14785
+ /** Retired capability slugs; a stored grant naming one is ignored, never refused. */
14786
+ export declare const RETIRED_PLUGIN_CAPABILITY_SLUGS: readonly ["filesystem.read", "filesystem.write", "memory.read", "memory.write"];
14748
14787
 
14749
14788
  /**
14750
14789
  * The one retired FIELD inside a surviving row: a `webSession` row's `operations` only ever fed the
package/dist/index.js CHANGED
@@ -260,15 +260,8 @@ var JsonSchema = z4.record(z4.string(), JsonValue);
260
260
  var KAY_PLUGIN_MANIFEST_SIZE_CAP_BYTES = 1024 * 1024;
261
261
  var KAY_PLUGIN_PROTOCOL_VERSION = "kay.plugin.v1";
262
262
  var KAY_PLUGIN_PROTOCOL_PACKAGE_NAME = "@bonsai/plugin-protocol";
263
- var KAY_PLUGIN_SDK_VERSION = "0.48.1";
264
- var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
265
- "0.48.0",
266
- "0.47.0",
267
- "0.42.0",
268
- "0.42.1",
269
- "0.43.0",
270
- "0.44.0"
271
- ];
263
+ var KAY_PLUGIN_SDK_VERSION = "0.49.0";
264
+ var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [];
272
265
  var KAY_PLUGIN_TARGET_NAMES = [
273
266
  "kay.agent",
274
267
  "kay.app",
@@ -1731,7 +1724,9 @@ function retiredPermissionAsksIn(rawManifest) {
1731
1724
  // packages/plugin-protocol/dist/authority.js
1732
1725
  var RETIRED_PLUGIN_CAPABILITY_SLUGS = [
1733
1726
  "filesystem.read",
1734
- "filesystem.write"
1727
+ "filesystem.write",
1728
+ "memory.read",
1729
+ "memory.write"
1735
1730
  ];
1736
1731
  var RENAMED_PLUGIN_CAPABILITY_SLUGS = {
1737
1732
  "jev.use": "systemOne.use",
@@ -1745,8 +1740,7 @@ var PLUGIN_CAPABILITY_SLUGS = [
1745
1740
  "process.spawn",
1746
1741
  "sessions.read",
1747
1742
  "signals.read",
1748
- "memory.read",
1749
- "memory.write",
1743
+ "uri.call",
1750
1744
  "skills.read",
1751
1745
  "skills.write",
1752
1746
  "skills.share",
@@ -1812,7 +1806,7 @@ var AGENT_PERMISSION_RULE_FIELDS = [
1812
1806
  "mode"
1813
1807
  ];
1814
1808
  function createAuthoritySchemas(canonical) {
1815
- const { ArtifactGenerationId: ArtifactGenerationId2, NonEmptyString: NonEmptyString3 } = canonical ? canonicalCommonSchemas : common_exports;
1809
+ const { ArtifactGenerationId: ArtifactGenerationId2, NonEmptyString: NonEmptyString3, UriScheme: UriScheme2 } = canonical ? canonicalCommonSchemas : common_exports;
1816
1810
  const { PluginAgentDefinitionPermissionRule: PluginAgentDefinitionPermissionRule2 } = canonical ? canonicalPermissionSchemas : permissions_exports;
1817
1811
  const WhiteboardCapabilityScope2 = z10.enum(["own-types", "all-types"]);
1818
1812
  const WhiteboardCapabilityOperation2 = z10.enum([
@@ -1903,14 +1897,12 @@ function createAuthoritySchemas(canonical) {
1903
1897
  envelope: z10.strictObject({})
1904
1898
  }),
1905
1899
  z10.strictObject({
1906
- target: z10.literal("kay.app"),
1907
- slug: z10.literal("memory.read"),
1908
- envelope: z10.strictObject({})
1909
- }),
1910
- z10.strictObject({
1911
- target: z10.literal("kay.app"),
1912
- slug: z10.literal("memory.write"),
1913
- envelope: z10.strictObject({})
1900
+ target: z10.enum(["kay.agent", "kay.app"]),
1901
+ slug: z10.literal("uri.call"),
1902
+ envelope: z10.strictObject({
1903
+ scheme: UriScheme2,
1904
+ verb: z10.enum(["read", "list", "search", "write", "edit", "delete"])
1905
+ })
1914
1906
  }),
1915
1907
  z10.strictObject({
1916
1908
  // Read every managed skill and its history: identity, versions, revisions, changes against
@@ -2256,8 +2248,6 @@ function sameClaim(a, b) {
2256
2248
  case "sessions.update":
2257
2249
  case "sessions.read":
2258
2250
  case "signals.read":
2259
- case "memory.read":
2260
- case "memory.write":
2261
2251
  case "skills.read":
2262
2252
  case "skills.write":
2263
2253
  case "skills.share":
@@ -2282,6 +2272,8 @@ function sameClaim(a, b) {
2282
2272
  case "model-selection.register":
2283
2273
  case "system-prompt.register":
2284
2274
  return true;
2275
+ case "uri.call":
2276
+ return b.slug === "uri.call" && a.envelope.scheme === b.envelope.scheme && a.envelope.verb === b.envelope.verb;
2285
2277
  case "network.connect":
2286
2278
  return b.slug === "network.connect" && a.envelope.connect === b.envelope.connect;
2287
2279
  case "web-session.request":
@@ -2343,8 +2335,6 @@ function envelopePairs(a, b) {
2343
2335
  case "sessions.update":
2344
2336
  case "sessions.read":
2345
2337
  case "signals.read":
2346
- case "memory.read":
2347
- case "memory.write":
2348
2338
  case "skills.read":
2349
2339
  case "skills.write":
2350
2340
  case "skills.share":
@@ -2369,6 +2359,11 @@ function envelopePairs(a, b) {
2369
2359
  case "model-selection.register":
2370
2360
  case "system-prompt.register":
2371
2361
  return [];
2362
+ case "uri.call":
2363
+ return b.slug === "uri.call" ? [
2364
+ [a.envelope.scheme, b.envelope.scheme],
2365
+ [a.envelope.verb, b.envelope.verb]
2366
+ ] : [];
2372
2367
  case "network.connect":
2373
2368
  return b.slug === "network.connect" ? [[a.envelope.connect, b.envelope.connect]] : [];
2374
2369
  case "web-session.request":
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yaklabs-ai/plugin-protocol",
3
- "version": "0.48.1",
3
+ "version": "0.49.0",
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",