@ycodium-ai/plugin-api 0.2.3851 → 0.2.3904
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 +31 -5
- package/dist/dataPorts.gen.d.ts +155 -133
- package/dist/dataPorts.gen.d.ts.map +1 -1
- package/dist/dataPorts.gen.js.map +1 -1
- package/dist/index.d.ts +11 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -3
- package/dist/index.js.map +1 -1
- package/dist/threadAnnotation.d.ts +13 -0
- package/dist/threadAnnotation.d.ts.map +1 -0
- package/dist/threadAnnotation.js +2 -0
- package/dist/threadAnnotation.js.map +1 -0
- package/dist/ui.d.ts +1 -9
- package/dist/ui.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -61,7 +61,7 @@ import { definePlugin } from "@ycodium-ai/plugin-api";
|
|
|
61
61
|
|
|
62
62
|
export default definePlugin({
|
|
63
63
|
id: "my-plugin",
|
|
64
|
-
apiVersion:
|
|
64
|
+
apiVersion: 66,
|
|
65
65
|
activate: (ctx) => {
|
|
66
66
|
ctx.log.info("hello");
|
|
67
67
|
|
|
@@ -290,12 +290,34 @@ sessions continue using the streaming process interface.
|
|
|
290
290
|
|
|
291
291
|
## THERE WILL BE COMPATIBILITY-BREAKING CHANGES
|
|
292
292
|
|
|
293
|
-
The definition's `apiVersion` is a closed window: the host loads
|
|
293
|
+
The definition's `apiVersion` is a closed window: the host loads 66, and refuses every other
|
|
294
294
|
value. Declare the version your plugin targets as a literal; do not read the host's
|
|
295
|
-
`PLUGIN_API_VERSION` to make the declaration automatically match. The current API is
|
|
295
|
+
`PLUGIN_API_VERSION` to make the declaration automatically match. The current API is 66. Plugins
|
|
296
296
|
targeting an older API are refused before activation; the message names the version the plugin
|
|
297
297
|
declared and the one this Ycodium loads, and the plugin card offers an update. A plugin that
|
|
298
|
-
declares a version newer than
|
|
298
|
+
declares a version newer than 66 is refused until Ycodium itself is updated, with no update button.
|
|
299
|
+
|
|
300
|
+
API 66 adds an optional `reasonCode` to machine task failures. Every change is additive.
|
|
301
|
+
|
|
302
|
+
- `MachineTaskFailure.reasonCode` is one of `git-missing`, `project-folder-missing` or `git-probe-failed`
|
|
303
|
+
when the built-in `project.sync` could not inspect the project folder; clients translate a coded reason
|
|
304
|
+
and show the English `reason` otherwise.
|
|
305
|
+
- Every machine whose project folder is a Git checkout lists `project.sync` even without a tasks table; a
|
|
306
|
+
`sync` entry in `ycodium.json` replaces it. The action catalog allows 64 machine actions plus 33 project
|
|
307
|
+
entries.
|
|
308
|
+
|
|
309
|
+
API 65 lets a thread annotation mark a conversation's tab: set `placement: "tab"` and `icon: "monitor"` on a
|
|
310
|
+
`ui.threadAnnotations.command` row, and the tab gets the `tone` as a tinted background plus the icon, with `labelKey` as
|
|
311
|
+
its name. Such a row stays out of the text badges in the sidebar and conversation header. Every change is additive.
|
|
312
|
+
|
|
313
|
+
API 64 adds the command action for machine tasks. Every change is additive.
|
|
314
|
+
|
|
315
|
+
- `MachineActionKind` gains `command`. A machine that declares the capability lists the action
|
|
316
|
+
`runtime.command`; machines that do not declare it do not list it.
|
|
317
|
+
- `ctx.work.machineTasks.create` accepts `runtime.command` with `command`, optional `args`, optional `cwd`
|
|
318
|
+
(a path inside the project folder) and optional `timeoutSeconds`. The command runs with the executing
|
|
319
|
+
user's environment. A task for another machine still needs that machine's owner until same-account
|
|
320
|
+
trust (ADR-0041) lands.
|
|
299
321
|
|
|
300
322
|
API 63 adds execution-machine consent for machine tasks. A local agent can run on its own machine
|
|
301
323
|
without approval. Cross-machine tasks require the executing owner's explicit policy or a task-bound,
|
|
@@ -304,6 +326,10 @@ the executing machine; work.machineTasks.respond carries optional approval and r
|
|
|
304
326
|
Project trust is optional machineTaskConfirmation.remoteProjectTrust, bound to both the home machine
|
|
305
327
|
and project. Cross-machine same-account inference awaits ADR-0041.
|
|
306
328
|
|
|
329
|
+
Machine-task failures may include optional `reasonCode` (`git-missing`, `project-folder-missing` or
|
|
330
|
+
`git-probe-failed`) for localized UI text. `reason` remains the English fallback when no code is present;
|
|
331
|
+
raw Git diagnostics stay in the log comment.
|
|
332
|
+
|
|
307
333
|
API 62 adds `ctx.schedules.list` and `ctx.schedules.runs.list`, reads of a project's schedules, and an optional `repeat`
|
|
308
334
|
on scheduled wake-up reads. Plugins cannot create or change schedules.
|
|
309
335
|
|
|
@@ -1142,7 +1168,7 @@ An empty page with a cursor still continues. All failures propagate unchanged, i
|
|
|
1142
1168
|
`ThreadNotFoundError` when the thread is missing; use `isThreadNotFound(error)` to identify it.
|
|
1143
1169
|
`ctx.communication.inbox.read` is gone; that port always rejected a plugin, because only the agent
|
|
1144
1170
|
in the thread has its own inbox. Plugins targeting these earlier versions are refused on the current host;
|
|
1145
|
-
the minimum version is
|
|
1171
|
+
the minimum version is 66.
|
|
1146
1172
|
|
|
1147
1173
|
API 8 changed what the UI gets for a communication record. `ConversationCommunicationRecord`
|
|
1148
1174
|
(from the conversation host's `useCommunicationRecord`) and `CommunicationViewExchange` carry `bodyState`, and their
|