Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions plugins/opencode/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# Changelog

## [0.3.0]

πŸ“¦ **NPM:** https://www.npmjs.com/package/@qvac/opencode-plugin/v/0.3.0

This release pairs the plugin with the `@qvac/cli` 0.12 line. The SDK removed the dynamic tools mode, so the plugin no longer pins the field that used to select it β€” a behaviour-neutral change on its own, but one that ties this version to the newer host.

## Breaking Changes

### Requires the @qvac/cli 0.12 line

The plugin stops sending `toolsMode: 'static'` in the managed serve's model configuration. The SDK removed that field from its llamacpp config schema, and passing it now fails validation rather than being quietly ignored. A `0.2.x` plugin therefore cannot drive a `@qvac/cli` 0.12 / `@qvac/sdk` 0.18 serve, so the plugin and its host must move together β€” a normal `npm install` of this package does that.

Nothing changes about how tools are handled. `static` was the only mode this plugin ever selected, and it is now the sole behaviour: tool definitions are always prepended after the system message.

## Dependency Alignment

Installs now resolve:

- `@qvac/cli@^0.12.0` for `qvac serve` (SDK 0.18 runtime), which also brings the serve model catalog and lazy loading of models configured with `preload: false`
- `@qvac/ai-sdk-provider@^0.6.0` for managed mode, unchanged β€” the range already covers the 0.6.1 peer-range release

## [0.2.0]

πŸ“¦ **NPM:** https://www.npmjs.com/package/@qvac/opencode-plugin/v/0.2.0
Expand Down
8 changes: 4 additions & 4 deletions plugins/opencode/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,10 +148,10 @@ running `opencode` from the terminal.
for managed mode (AI SDK 7). The host proxies on behalf of the managed serve,
so it needs the provider's `ManagedQvacProvider.apiKey` getter β€” see
[Provider compatibility](#provider-compatibility).
- [`@qvac/cli@^0.11.0`](https://www.npmjs.com/package/@qvac/cli) available so the
host can run `qvac serve` (SDK 0.17 runtime). 0.11.0 is also the first CLI that
accepts `--api-key-file`, which keeps the managed serve's bearer key out of the
process command line.
- [`@qvac/cli@^0.12.0`](https://www.npmjs.com/package/@qvac/cli) available so the
host can run `qvac serve` (SDK 0.18 runtime). `--api-key-file`, which keeps the
managed serve's bearer key out of the process command line, has been accepted
since CLI 0.11.0.
- Node.js 22 or newer.

### Provider compatibility
Expand Down
7 changes: 7 additions & 0 deletions plugins/opencode/changelog/0.3.0/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Changelog v0.3.0

Release Date: 2026-08-21

## 🐞 Fixes

- Stop pinning `toolsMode: 'static'` on the managed serve's model config. The field was removed from the SDK's llamacpp schema and is now rejected rather than ignored. (see PR [#3380](https://github.com/tetherto/qvac/pull/3380)) - See [breaking changes](./breaking.md)
20 changes: 20 additions & 0 deletions plugins/opencode/changelog/0.3.0/CHANGELOG_LLM.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# QVAC OpenCode Plugin v0.3.0 Release Notes

πŸ“¦ **NPM:** https://www.npmjs.com/package/@qvac/opencode-plugin/v/0.3.0

This release pairs the plugin with the `@qvac/cli` 0.12 line. The SDK removed the dynamic tools mode, so the plugin no longer pins the field that used to select it β€” a behaviour-neutral change on its own, but one that ties this version to the newer host.

## Breaking Changes

### Requires the @qvac/cli 0.12 line

The plugin stops sending `toolsMode: 'static'` in the managed serve's model configuration. The SDK removed that field from its llamacpp config schema, and passing it now fails validation rather than being quietly ignored. A `0.2.x` plugin therefore cannot drive a `@qvac/cli` 0.12 / `@qvac/sdk` 0.18 serve, so the plugin and its host must move together β€” a normal `npm install` of this package does that.

Nothing changes about how tools are handled. `static` was the only mode this plugin ever selected, and it is now the sole behaviour: tool definitions are always prepended after the system message.

## Dependency Alignment

Installs now resolve:

- `@qvac/cli@^0.12.0` for `qvac serve` (SDK 0.18 runtime), which also brings the serve model catalog and lazy loading of models configured with `preload: false`
- `@qvac/ai-sdk-provider@^0.6.0` for managed mode, unchanged β€” the range already covers the 0.6.1 peer-range release
13 changes: 13 additions & 0 deletions plugins/opencode/changelog/0.3.0/breaking.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# πŸ’₯ Breaking Changes v0.3.0

## Requires the @qvac/cli 0.12 line

PR: [#3380](https://github.com/tetherto/qvac/pull/3380)

_No migration code β€” the managed serve config is private to the plugin and the host it bundles._

- The plugin no longer sends `toolsMode: 'static'` in the managed serve's model config. The SDK removed that field from its llamacpp config schema, and passing it now fails validation instead of being ignored, so plugin `0.2.x` cannot drive a `@qvac/cli` 0.12 / `@qvac/sdk` 0.18 serve. Upgrade the plugin and the host together β€” installing this package does that.
- Behaviour is otherwise unchanged. `static` was the only mode this plugin ever selected, and it is now the sole behaviour: tools are always prepended after the system message.
- The `@qvac/cli` dependency floor moves from `^0.11.0` to `^0.12.0` accordingly.

---
4 changes: 2 additions & 2 deletions plugins/opencode/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@qvac/opencode-plugin",
"version": "0.2.0",
"version": "0.3.0",
"description": "OpenCode plugin that runs a local, managed QVAC serve so `opencode` works against on-device models with no second terminal",
"author": "Tether",
"license": "Apache-2.0",
Expand Down Expand Up @@ -59,7 +59,7 @@
"dependencies": {
"@ai-sdk/openai-compatible": "^3.0.0",
"@qvac/ai-sdk-provider": "^0.6.0",
"@qvac/cli": "^0.11.0",
"@qvac/cli": "^0.12.0",
"ai": "^7.0.0"
},
"devDependencies": {
Expand Down
Loading