@yaklabs-ai/plugin-protocol 0.13.7 → 0.13.9
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 +21 -7
- package/dist/index.js +12 -7
- package/package.json +1 -1
package/README.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -2059,7 +2059,7 @@ export declare const KAY_EVENT_PUBLISHER_ID: "kay";
|
|
|
2059
2059
|
declare const KAY_PLUGIN_COMPATIBILITY_REFUSAL_CODES: readonly ["unsupported-protocol", "sdk-range-unsatisfied", "sdk-range-unsupported", "host-sdk-version-invalid"];
|
|
2060
2060
|
|
|
2061
2061
|
/** Released SDK contracts still implemented by the host, alongside its current SDK. */
|
|
2062
|
-
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", "0.13.2", "0.13.3", "0.13.4", "0.13.5", "0.13.6"];
|
|
2062
|
+
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", "0.13.2", "0.13.3", "0.13.4", "0.13.5", "0.13.6", "0.13.7", "0.13.8"];
|
|
2063
2063
|
|
|
2064
2064
|
/** The file whose presence makes a directory a plugin. A directory without one is not a plugin. */
|
|
2065
2065
|
export declare const KAY_PLUGIN_MANIFEST_FILENAME = "kay-plugin.json";
|
|
@@ -2352,8 +2352,21 @@ export declare const KAY_PLUGIN_PROTOCOL_VERSION: "kay.plugin.v1";
|
|
|
2352
2352
|
* `skills.declared-source`). Additive: a plugin compiled against 0.13.6 never imports the new
|
|
2353
2353
|
* subpaths, and its manifest parses unchanged. A plugin that imports one declares `^0.13.7`, so
|
|
2354
2354
|
* an older host refuses a directory or repository plugin at load instead of the import failing.
|
|
2355
|
+
*
|
|
2356
|
+
* 0.13.8 takes the PATCH slot under the addition rule, as `api.withJev` did in 0.8.1: one new
|
|
2357
|
+
* member on the api a plugin RECEIVES, `api.systemOne` / `app.systemOne` (`@bonsai/plugin-sdk/
|
|
2358
|
+
* system-one`), the System One client for `decide` and `extract` on Jev, Clef, Clef Flash and
|
|
2359
|
+
* Clairic. It is non-optional for the same reason `withJev` is, and a host with no System One
|
|
2360
|
+
* binds a client that throws `not-served`. `withJev` stays for every compatible plugin. A
|
|
2361
|
+
* plugin that calls `systemOne` declares `^0.13.8`, so an older host refuses it at load instead
|
|
2362
|
+
* of the member being absent.
|
|
2363
|
+
*
|
|
2364
|
+
* 0.13.9 adds `@bonsai/plugin-sdk/zod`: the host's `z` on an entry with no other import, for
|
|
2365
|
+
* code a `kay.ui` page also loads (`kay-agent` exports the same `z`). Additive: a plugin compiled
|
|
2366
|
+
* against 0.13.8 never imports it. A plugin that imports it declares `^0.13.9`, so an older host
|
|
2367
|
+
* refuses a directory or repository plugin at load instead of the import failing.
|
|
2355
2368
|
*/
|
|
2356
|
-
export declare const KAY_PLUGIN_SDK_VERSION: "0.13.
|
|
2369
|
+
export declare const KAY_PLUGIN_SDK_VERSION: "0.13.9";
|
|
2357
2370
|
|
|
2358
2371
|
export declare const KAY_PLUGIN_TARGET_NAMES: readonly ["kay.agent", "kay.app", "kay.ui"];
|
|
2359
2372
|
|
|
@@ -3808,8 +3821,9 @@ export declare type McpServerAuthMode = z.infer<typeof McpServerAuthMode>;
|
|
|
3808
3821
|
* or omitted `auth`) requires `authService`; `auth: "none"` may omit it. `authService` is a local
|
|
3809
3822
|
* id that must resolve within this same manifest; unlike `uriModule.authService`, qualified foreign
|
|
3810
3823
|
* service refs are not permitted because the MCP binding belongs to the plugin that ships it.
|
|
3811
|
-
*
|
|
3812
|
-
*
|
|
3824
|
+
* A declared server is hosted
|
|
3825
|
+
* only for a plugin holding `mcp.host-server` for its name and URL (the release's own plugins hold
|
|
3826
|
+
* it) — decided at composition, not by this schema (see `ARCHITECTURE.md`).
|
|
3813
3827
|
*/
|
|
3814
3828
|
export declare const McpServerContribution: z.ZodObject<{
|
|
3815
3829
|
url: z.ZodString;
|
|
@@ -6373,9 +6387,9 @@ export declare type ResolvedKayAppDataSource = z.infer<typeof ResolvedKayAppData
|
|
|
6373
6387
|
* always carries its applied default (`"oauth"` when the manifest omits it), matching this file's
|
|
6374
6388
|
* applied-default posture elsewhere (e.g. `ResolvedPluginWebSession`'s probe `method`). The
|
|
6375
6389
|
* manifest-local `authService` is resolved to this plugin's namespace-qualified `authServiceId`.
|
|
6376
|
-
*
|
|
6377
|
-
* decide (see ARCHITECTURE.md) — both need the full plugin roster
|
|
6378
|
-
* manifest cannot see.
|
|
6390
|
+
* Whether a server is hosted (the `mcp.host-server` grant) and cross-plugin `name` collisions are
|
|
6391
|
+
* NOT this package's to decide (see ARCHITECTURE.md) — both need the full plugin roster and its
|
|
6392
|
+
* decisions, which a single resolved manifest cannot see.
|
|
6379
6393
|
*/
|
|
6380
6394
|
export declare const ResolvedKayAppMcpServer: z.ZodObject<{
|
|
6381
6395
|
name: z.ZodString;
|
package/dist/index.js
CHANGED
|
@@ -136,7 +136,7 @@ var JsonSchema = z2.record(z2.string(), JsonValue);
|
|
|
136
136
|
// packages/plugin-protocol/dist/common.js
|
|
137
137
|
var KAY_PLUGIN_PROTOCOL_VERSION = "kay.plugin.v1";
|
|
138
138
|
var KAY_PLUGIN_PROTOCOL_PACKAGE_NAME = "@bonsai/plugin-protocol";
|
|
139
|
-
var KAY_PLUGIN_SDK_VERSION = "0.13.
|
|
139
|
+
var KAY_PLUGIN_SDK_VERSION = "0.13.9";
|
|
140
140
|
var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
|
|
141
141
|
"0.8.0",
|
|
142
142
|
"0.8.1",
|
|
@@ -161,7 +161,9 @@ var KAY_PLUGIN_COMPATIBLE_SDK_VERSIONS = [
|
|
|
161
161
|
"0.13.3",
|
|
162
162
|
"0.13.4",
|
|
163
163
|
"0.13.5",
|
|
164
|
-
"0.13.6"
|
|
164
|
+
"0.13.6",
|
|
165
|
+
"0.13.7",
|
|
166
|
+
"0.13.8"
|
|
165
167
|
];
|
|
166
168
|
var KAY_PLUGIN_TARGET_NAMES = [
|
|
167
169
|
"kay.agent",
|
|
@@ -2914,9 +2916,9 @@ var KayAgentTargetManifest = z10.strictObject({
|
|
|
2914
2916
|
* routing, so it should say what the capability is and when to reach for it, not how to
|
|
2915
2917
|
* operate it — that is the primer's job, and the host appends the primer route after the body.
|
|
2916
2918
|
*
|
|
2917
|
-
* Policy the HOST applies (never trust this field alone):
|
|
2918
|
-
*
|
|
2919
|
-
*
|
|
2919
|
+
* Policy the HOST applies (never trust this field alone): the doc renders only for a plugin
|
|
2920
|
+
* holding the `prompt.resident` claim (Bonsai's own plugins hold it; any other plugin needs a
|
|
2921
|
+
* grant a person approved), and a body over 500 words is dropped.
|
|
2920
2922
|
*/
|
|
2921
2923
|
prompt: PackageAssetPath.optional(),
|
|
2922
2924
|
/**
|
|
@@ -2953,8 +2955,8 @@ var KayAppTargetManifest = z10.strictObject({
|
|
|
2953
2955
|
deviceDelegations: z10.array(DeviceDelegationContribution).optional(),
|
|
2954
2956
|
corpusConsumers: z10.array(CorpusContribution).optional(),
|
|
2955
2957
|
contextContributors: z10.array(ContextContributorContribution).optional(),
|
|
2956
|
-
// Vendored MCP servers this plugin ships (see `McpServerContributions`).
|
|
2957
|
-
//
|
|
2958
|
+
// Vendored MCP servers this plugin ships (see `McpServerContributions`). Each is hosted only
|
|
2959
|
+
// for a plugin holding `mcp.host-server` for its name and URL; that is decided at
|
|
2958
2960
|
// composition, not here (see ARCHITECTURE.md "Validation Law").
|
|
2959
2961
|
mcpServers: McpServerContributions.optional(),
|
|
2960
2962
|
// Handler restricted to endpoint-only by the manifest-level refinement below.
|
|
@@ -4794,6 +4796,9 @@ function referencedPaths(manifest) {
|
|
|
4794
4796
|
if (manifest.iconDark !== void 0) {
|
|
4795
4797
|
refs.push({ label: "iconDark", path: manifest.iconDark });
|
|
4796
4798
|
}
|
|
4799
|
+
if (kayAgent?.prompt !== void 0) {
|
|
4800
|
+
refs.push({ label: "kay.agent prompt", path: kayAgent.prompt });
|
|
4801
|
+
}
|
|
4797
4802
|
for (const skill of kayAgent?.contributes?.skills ?? []) {
|
|
4798
4803
|
refs.push({ label: `skill '${skill.localId}'`, path: skill.path });
|
|
4799
4804
|
}
|
package/package.json
CHANGED