@yaklabs-ai/plugin-protocol 0.13.1 → 0.13.2
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 +1 -1
- package/THIRD-PARTY-INVENTORY.json +1 -1
- package/dist/index.d.ts +29 -3
- package/dist/index.js +21 -2
- package/package.json +1 -1
package/README.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -1973,7 +1973,7 @@ export declare const KAY_APP_DATA_SNAPSHOT_MAX_BYTES: number;
|
|
|
1973
1973
|
export declare const KAY_EVENT_PUBLISHER_ID: "kay";
|
|
1974
1974
|
|
|
1975
1975
|
/** Released SDK contracts still implemented by the host, alongside its current SDK. */
|
|
1976
|
-
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", "0.12.3", "0.12.4", "0.12.5", "0.13.0"];
|
|
1976
|
+
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", "0.12.3", "0.12.4", "0.12.5", "0.13.0", "0.13.1"];
|
|
1977
1977
|
|
|
1978
1978
|
export declare const KAY_PLUGIN_PROTOCOL_PACKAGE_NAME: "@kay/plugin-protocol";
|
|
1979
1979
|
|
|
@@ -2204,8 +2204,17 @@ export declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
|
|
|
2204
2204
|
* and a read signal carry the stored `subject` and `upstreamId` back. Additive: a plugin compiled
|
|
2205
2205
|
* against 0.13.0 never sends or reads them. A plugin that imports the engine declares `^0.13.1`,
|
|
2206
2206
|
* so an older host refuses a directory or repository plugin at load.
|
|
2207
|
+
*
|
|
2208
|
+
* 0.13.2 adds `app.tools` (`KayAppTools`): `describe(sessionId, refs)` returns, for each tool name
|
|
2209
|
+
* or address a live session can use, the text the agent sees for it, where it comes from, and
|
|
2210
|
+
* whether it is one of Bonsai's own (`ownedByBonsai`). Checked per call against the new
|
|
2211
|
+
* `tools.describe` claim. It also adds the manifest's top-level `ownedByBonsai` flag, honoured only
|
|
2212
|
+
* for a plugin that ships with Bonsai. Additive: a plugin compiled against 0.13.1 never reads the
|
|
2213
|
+
* member. A plugin that calls it declares `^0.13.2`, so an older host refuses a directory or
|
|
2214
|
+
* repository plugin at load. The flag is new schema, so an older host refuses a manifest that sets
|
|
2215
|
+
* it at parse, like 0.12.3's page open kind.
|
|
2207
2216
|
*/
|
|
2208
|
-
export declare const KAY_PLUGIN_SDK_VERSION: "0.13.
|
|
2217
|
+
export declare const KAY_PLUGIN_SDK_VERSION: "0.13.2";
|
|
2209
2218
|
|
|
2210
2219
|
export declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
|
|
2211
2220
|
|
|
@@ -3329,6 +3338,7 @@ export declare const KayPluginManifestV1: z.ZodObject<{
|
|
|
3329
3338
|
minKayVersion: z.ZodOptional<z.ZodString>;
|
|
3330
3339
|
sdk: z.ZodOptional<z.ZodString>;
|
|
3331
3340
|
}, z.core.$strict>>>;
|
|
3341
|
+
ownedByBonsai: z.ZodOptional<z.ZodBoolean>;
|
|
3332
3342
|
dependencies: z.ZodOptional<z.ZodObject<{
|
|
3333
3343
|
plugins: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
3334
3344
|
}, z.core.$strict>>;
|
|
@@ -3731,7 +3741,7 @@ export declare function parseResolvedPluginContractV1(value: unknown): ResolvedP
|
|
|
3731
3741
|
export declare function parseSemver(value: string): ParsedSemver | undefined;
|
|
3732
3742
|
|
|
3733
3743
|
/** Every capability slug {@link PluginCapabilityClaimV1} can express, for exhaustive table checks. */
|
|
3734
|
-
export declare const PLUGIN_CAPABILITY_SLUGS: readonly ["sessions.run", "network.connect", "web-session.request", "web-session.download", "process.spawn", "corpus.read", "signals.read", "skills.read", "workspace.command", "sessions.create", "sessions.update", "models.complete", "jev.use", "automations.write", "automations.run", "workflows.define", "session-events.subscribe", "agents.run", "dynamic-context.register", "app-data.register", "account.assert", "account.update", "agents.permissions", "tool-interception.register", "interaction.surface", "config.declare-section", "auth.own-service", "auth.shared-identity", "cli.bind", "whiteboard.discover", "whiteboard.read", "whiteboard.create", "whiteboard.update", "whiteboard.remove"];
|
|
3744
|
+
export declare const PLUGIN_CAPABILITY_SLUGS: readonly ["sessions.run", "network.connect", "web-session.request", "web-session.download", "process.spawn", "corpus.read", "signals.read", "skills.read", "tools.describe", "workspace.command", "sessions.create", "sessions.update", "models.complete", "jev.use", "automations.write", "automations.run", "workflows.define", "session-events.subscribe", "agents.run", "dynamic-context.register", "app-data.register", "account.assert", "account.update", "agents.permissions", "tool-interception.register", "interaction.surface", "config.declare-section", "auth.own-service", "auth.shared-identity", "cli.bind", "whiteboard.discover", "whiteboard.read", "whiteboard.create", "whiteboard.update", "whiteboard.remove"];
|
|
3735
3745
|
|
|
3736
3746
|
/** The root `<svg>` attribute a tile icon declares itself with. */
|
|
3737
3747
|
export declare const PLUGIN_ICON_SHAPE_ATTRIBUTE = "data-icon-shape";
|
|
@@ -4159,6 +4169,10 @@ export declare const PluginCapabilityClaimV1: z.ZodDiscriminatedUnion<[z.ZodObje
|
|
|
4159
4169
|
target: z.ZodLiteral<"kay.app">;
|
|
4160
4170
|
slug: z.ZodLiteral<"skills.read">;
|
|
4161
4171
|
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4172
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4173
|
+
target: z.ZodLiteral<"kay.app">;
|
|
4174
|
+
slug: z.ZodLiteral<"tools.describe">;
|
|
4175
|
+
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4162
4176
|
}, z.core.$strict>, z.ZodObject<{
|
|
4163
4177
|
target: z.ZodLiteral<"kay.app">;
|
|
4164
4178
|
slug: z.ZodLiteral<"workspace.command">;
|
|
@@ -4367,6 +4381,10 @@ export declare const PluginCapabilityDecisionV1: z.ZodDiscriminatedUnion<[z.ZodO
|
|
|
4367
4381
|
target: z.ZodLiteral<"kay.app">;
|
|
4368
4382
|
slug: z.ZodLiteral<"skills.read">;
|
|
4369
4383
|
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4384
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4385
|
+
target: z.ZodLiteral<"kay.app">;
|
|
4386
|
+
slug: z.ZodLiteral<"tools.describe">;
|
|
4387
|
+
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4370
4388
|
}, z.core.$strict>, z.ZodObject<{
|
|
4371
4389
|
target: z.ZodLiteral<"kay.app">;
|
|
4372
4390
|
slug: z.ZodLiteral<"workspace.command">;
|
|
@@ -4570,6 +4588,10 @@ export declare const PluginCapabilityDecisionV1: z.ZodDiscriminatedUnion<[z.ZodO
|
|
|
4570
4588
|
target: z.ZodLiteral<"kay.app">;
|
|
4571
4589
|
slug: z.ZodLiteral<"skills.read">;
|
|
4572
4590
|
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4591
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4592
|
+
target: z.ZodLiteral<"kay.app">;
|
|
4593
|
+
slug: z.ZodLiteral<"tools.describe">;
|
|
4594
|
+
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4573
4595
|
}, z.core.$strict>, z.ZodObject<{
|
|
4574
4596
|
target: z.ZodLiteral<"kay.app">;
|
|
4575
4597
|
slug: z.ZodLiteral<"workspace.command">;
|
|
@@ -4836,6 +4858,10 @@ export declare const PluginCapabilityRefusalV1: z.ZodObject<{
|
|
|
4836
4858
|
target: z.ZodLiteral<"kay.app">;
|
|
4837
4859
|
slug: z.ZodLiteral<"skills.read">;
|
|
4838
4860
|
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4861
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
4862
|
+
target: z.ZodLiteral<"kay.app">;
|
|
4863
|
+
slug: z.ZodLiteral<"tools.describe">;
|
|
4864
|
+
envelope: z.ZodObject<{}, z.core.$strict>;
|
|
4839
4865
|
}, z.core.$strict>, z.ZodObject<{
|
|
4840
4866
|
target: z.ZodLiteral<"kay.app">;
|
|
4841
4867
|
slug: z.ZodLiteral<"workspace.command">;
|
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.13.
|
|
118
|
+
var KAY_PLUGIN_SDK_VERSION = "0.13.2";
|
|
119
119
|
var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
|
|
120
120
|
"0.8.0",
|
|
121
121
|
"0.8.1",
|
|
@@ -134,7 +134,8 @@ var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
|
|
|
134
134
|
"0.12.3",
|
|
135
135
|
"0.12.4",
|
|
136
136
|
"0.12.5",
|
|
137
|
-
"0.13.0"
|
|
137
|
+
"0.13.0",
|
|
138
|
+
"0.13.1"
|
|
138
139
|
];
|
|
139
140
|
var KAY_PLUGIN_TARGET_NAMES = [
|
|
140
141
|
"kay.agent",
|
|
@@ -1528,6 +1529,14 @@ var PluginCapabilityClaimV1 = z6.discriminatedUnion("slug", [
|
|
|
1528
1529
|
slug: z6.literal("skills.read"),
|
|
1529
1530
|
envelope: z6.strictObject({})
|
|
1530
1531
|
}),
|
|
1532
|
+
z6.strictObject({
|
|
1533
|
+
// The text an agent sees for a tool or an address in a live session, where each comes from,
|
|
1534
|
+
// and whether it is one of Bonsai's own. Read-only and never a call. An empty envelope because
|
|
1535
|
+
// the grant itself is the visibility decision, as with `skills.read`.
|
|
1536
|
+
target: z6.literal("kay.app"),
|
|
1537
|
+
slug: z6.literal("tools.describe"),
|
|
1538
|
+
envelope: z6.strictObject({})
|
|
1539
|
+
}),
|
|
1531
1540
|
z6.strictObject({
|
|
1532
1541
|
target: z6.literal("kay.app"),
|
|
1533
1542
|
slug: z6.literal("workspace.command"),
|
|
@@ -1671,6 +1680,7 @@ var PLUGIN_CAPABILITY_SLUGS = [
|
|
|
1671
1680
|
"corpus.read",
|
|
1672
1681
|
"signals.read",
|
|
1673
1682
|
"skills.read",
|
|
1683
|
+
"tools.describe",
|
|
1674
1684
|
"workspace.command",
|
|
1675
1685
|
"sessions.create",
|
|
1676
1686
|
"sessions.update",
|
|
@@ -1777,6 +1787,7 @@ function sameClaim(a, b) {
|
|
|
1777
1787
|
case "corpus.read":
|
|
1778
1788
|
case "signals.read":
|
|
1779
1789
|
case "skills.read":
|
|
1790
|
+
case "tools.describe":
|
|
1780
1791
|
case "workspace.command":
|
|
1781
1792
|
case "models.complete":
|
|
1782
1793
|
case "jev.use":
|
|
@@ -1841,6 +1852,7 @@ function envelopePairs(a, b) {
|
|
|
1841
1852
|
case "corpus.read":
|
|
1842
1853
|
case "signals.read":
|
|
1843
1854
|
case "skills.read":
|
|
1855
|
+
case "tools.describe":
|
|
1844
1856
|
case "workspace.command":
|
|
1845
1857
|
case "models.complete":
|
|
1846
1858
|
case "jev.use":
|
|
@@ -3096,6 +3108,13 @@ var KayPluginManifestV1 = z8.strictObject({
|
|
|
3096
3108
|
auth: PluginAuthManifest.optional(),
|
|
3097
3109
|
permissions: PluginPermissionManifest.optional(),
|
|
3098
3110
|
compatibility: PluginCompatibilityManifest.optional(),
|
|
3111
|
+
/**
|
|
3112
|
+
* Whether this plugin is part of Bonsai's own workbench (memory, sessions, the workspace) rather
|
|
3113
|
+
* than a connection to the user's outside world or a general-purpose tool. Its tools and URI
|
|
3114
|
+
* schemes then report `ownedByBonsai`. Honoured only for a plugin that ships with Bonsai: the
|
|
3115
|
+
* host reads any other plugin's flag as false. Absent ⇒ false.
|
|
3116
|
+
*/
|
|
3117
|
+
ownedByBonsai: z8.boolean().optional(),
|
|
3099
3118
|
/**
|
|
3100
3119
|
* Explicit plugin-level dependencies — other plugins this plugin requires to be present in the
|
|
3101
3120
|
* composed roster. At composition time the runtime checks each id against the accepted
|
package/package.json
CHANGED