@ycodium-ai/plugin-api 0.2.3238 → 0.2.3244
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 +27 -12
- package/dist/dataPorts.gen.d.ts +238 -193
- package/dist/dataPorts.gen.d.ts.map +1 -1
- package/dist/dataPorts.gen.js.map +1 -1
- package/dist/executorCapabilities.d.ts +2 -0
- package/dist/executorCapabilities.d.ts.map +1 -1
- package/dist/index.d.ts +9 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -56,7 +56,7 @@ import { definePlugin } from "@ycodium-ai/plugin-api";
|
|
|
56
56
|
|
|
57
57
|
export default definePlugin({
|
|
58
58
|
id: "my-plugin",
|
|
59
|
-
apiVersion:
|
|
59
|
+
apiVersion: 27,
|
|
60
60
|
activate: (ctx) => {
|
|
61
61
|
ctx.log.info("hello");
|
|
62
62
|
|
|
@@ -247,19 +247,27 @@ shows up there without anyone registering it.
|
|
|
247
247
|
|
|
248
248
|
## THERE WILL BE COMPATIBILITY-BREAKING CHANGES
|
|
249
249
|
|
|
250
|
-
The definition's `apiVersion` is a closed window: the host loads
|
|
250
|
+
The definition's `apiVersion` is a closed window: the host loads 27, and refuses every other
|
|
251
251
|
value. Declare the version your plugin targets as a literal; do not read the host's
|
|
252
|
-
`PLUGIN_API_VERSION` to make the declaration automatically match. The current API is
|
|
252
|
+
`PLUGIN_API_VERSION` to make the declaration automatically match. The current API is 27. Plugins
|
|
253
253
|
targeting an older API are refused before activation; the message names the version the plugin
|
|
254
254
|
declared and the one this Ycodium loads, and the plugin card offers an update. A plugin that
|
|
255
|
-
declares a version newer than
|
|
256
|
-
|
|
257
|
-
API
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
255
|
+
declares a version newer than 27 is refused until Ycodium itself is updated, with no update button.
|
|
256
|
+
|
|
257
|
+
API 27 adds optional fields to the output of `ctx.skills.list`. Each skill may carry `origin`,
|
|
258
|
+
its source layer: a wiki page with its page id and revision, a repository with its root index
|
|
259
|
+
and root folder name, settings, builtin, or a plugin with its entryId. The result may carry
|
|
260
|
+
`shadowed`: skills hidden by a higher-priority skill of the same name, each with its own origin
|
|
261
|
+
and the layer that won. `repoReadByCli` is set true when this CLI reads the
|
|
262
|
+
repository's skills itself, so the host does not list that layer.
|
|
263
|
+
Older machines omit these fields. No other public type changes.
|
|
264
|
+
|
|
265
|
+
API 26 adds an optional `memoryInjection` boolean to the output of `ctx.projects.toolkits.get`;
|
|
266
|
+
older machines omit it. It adds `ctx.projects.memoryInjection.set`, but only a person or the local
|
|
267
|
+
CLI may set it: every plugin call is refused, and there is no `invocation.asPerson` route. The
|
|
268
|
+
executor card's `capabilities` gains an optional `discoversRepoSkills`, set true when the CLI
|
|
269
|
+
discovers the repository's `.agents/skills` itself, so the host does not hand those skills over
|
|
270
|
+
again; absence means false. No other public type changes.
|
|
263
271
|
|
|
264
272
|
API 25 adds the optional primitive `PluginIcon` to the components lent by the plugin UI host. Its
|
|
265
273
|
props type, `PluginIconProps`, is exported from `@ycodium-ai/plugin-api/ui` and has the shape
|
|
@@ -268,6 +276,13 @@ decorative, scales with the font size, and renders nothing for unknown names. Th
|
|
|
268
276
|
plugin uses it for platform icons in bot card headers in chat bridge settings. No other public
|
|
269
277
|
type changes.
|
|
270
278
|
|
|
279
|
+
API 24 adds the value `"allowExplicitBreakaway"` to `PluginProcessSpawnInput.jobPolicy` (in the
|
|
280
|
+
`ctx.process` spawn input, `@ycodium-ai/plugin-api/process-socket`). Windows only: the process still
|
|
281
|
+
runs inside the host's Job, but a child that explicitly requests breakaway may leave it; other
|
|
282
|
+
children are still collected when the host stops. Meant for a hub that has to leave one program
|
|
283
|
+
(such as an emulator) running; the first-party devices plugin uses it. `"strict"` stays the default.
|
|
284
|
+
No other public type changes.
|
|
285
|
+
|
|
271
286
|
API 23 adds two optional fields to each entry of `turnIntents` in the outputs of
|
|
272
287
|
`ctx.threads.history` and `ctx.threads.execution.get`. `action` is
|
|
273
288
|
`{ kind: "steer" | "interrupt", turnId, commandId, source?: "automatic" } | null` — what the
|
|
@@ -422,7 +437,7 @@ An empty page with a cursor still continues. All failures propagate unchanged, i
|
|
|
422
437
|
`ThreadNotFoundError` when the thread is missing; use `isThreadNotFound(error)` to identify it.
|
|
423
438
|
`ctx.communication.inbox.read` is gone; that port always rejected a plugin, because only the agent
|
|
424
439
|
in the thread has its own inbox. Plugins targeting these earlier versions are refused on the current host;
|
|
425
|
-
the minimum version is
|
|
440
|
+
the minimum version is 27.
|
|
426
441
|
|
|
427
442
|
API 8 changed what the UI gets for a communication record. `ConversationCommunicationRecord`
|
|
428
443
|
(from the conversation host's `useCommunicationRecord`) and `CommunicationViewExchange` carry `bodyState`, and their
|