@ycodium-ai/plugin-api 0.2.3216 → 0.2.3220

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
@@ -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: 22,
59
+ apiVersion: 23,
60
60
  activate: (ctx) => {
61
61
  ctx.log.info("hello");
62
62
 
@@ -239,12 +239,18 @@ shows up there without anyone registering it.
239
239
 
240
240
  ## THERE WILL BE COMPATIBILITY-BREAKING CHANGES
241
241
 
242
- The definition's `apiVersion` is a closed window: the host loads 22, and refuses every other
242
+ The definition's `apiVersion` is a closed window: the host loads 23, and refuses every other
243
243
  value. Declare the version your plugin targets as a literal; do not read the host's
244
- `PLUGIN_API_VERSION` to make the declaration automatically match. The current API is 22. Plugins
244
+ `PLUGIN_API_VERSION` to make the declaration automatically match. The current API is 23. Plugins
245
245
  targeting an older API are refused before activation; the message names the version the plugin
246
246
  declared and the one this Ycodium loads, and the plugin card offers an update. A plugin that
247
- declares a version newer than 22 is refused until Ycodium itself is updated, with no update button.
247
+ declares a version newer than 23 is refused until Ycodium itself is updated, with no update button.
248
+
249
+ API 23 adds two optional fields to each entry of `turnIntents` in the outputs of
250
+ `ctx.threads.history` and `ctx.threads.execution.get`. `action` is
251
+ `{ kind: "steer" | "interrupt", turnId, commandId, source?: "automatic" } | null` — what the
252
+ intent did to a running turn. `deliveredTurnId` is `string | null` — the turn the intent landed
253
+ in, once that is settled. No other public type changes.
248
254
 
249
255
  API 22 adds an optional `runtimeMaintenanceRoot` (string) to the output of
250
256
  `ctx.machineSettings.config.get` (`MachineSettingsConfigGetOutput`): the machine's runtime
@@ -394,7 +400,7 @@ An empty page with a cursor still continues. All failures propagate unchanged, i
394
400
  `ThreadNotFoundError` when the thread is missing; use `isThreadNotFound(error)` to identify it.
395
401
  `ctx.communication.inbox.read` is gone; that port always rejected a plugin, because only the agent
396
402
  in the thread has its own inbox. Plugins targeting these earlier versions are refused on the current host;
397
- the minimum version is 22.
403
+ the minimum version is 23.
398
404
 
399
405
  API 8 changed what the UI gets for a communication record. `ConversationCommunicationRecord`
400
406
  (from the conversation host's `useCommunicationRecord`) and `CommunicationViewExchange` carry `bodyState`, and their