@@ -4,6 +4,29 @@ All notable changes to this project will be documented in this file.
44
55## [ Unreleased]
66
7+ - ` 0.1.0-rc.2 ` — pre-release on the npm ` next ` dist-tag. Fixes found while
8+ validating rc.1 against opencode 1.16.2:
9+ - ** Plugin now loads when installed by package name.** Added the
10+ ` exports["./server"] ` entry opencode uses to resolve a plugin's entrypoint;
11+ rc.1 exposed the plugin only at ` ./plugin ` , which opencode does not read, so
12+ the package installed but registered no hooks (no provider, no models).
13+ - ** Self-heal the ` sqlite3 ` native binding.** opencode installs plugins with
14+ Bun, which skips sqlite3's install script, so ` @cursor/sdk ` 's
15+ ` require("sqlite3") ` failed with "Could not locate the bindings file". The
16+ plugin now runs sqlite3's ` prebuild-install -r napi ` under the system Node
17+ before loading the SDK (once per process, never throws).
18+ - ** Stream ordering.** The final answer no longer renders above the reasoning
19+ blocks that preceded it — the open text part is closed when reasoning
20+ resumes and each resume opens a fresh text part.
21+ - ** Model variants reach the picker.** Variants are seeded on the
22+ config-injected models (opencode discards the ` provider.models() ` hook for
23+ providers outside its models.dev catalog). Variant naming reworked against
24+ the real catalog: boolean params (e.g. ` thinking ` ) collapse to one
25+ param-named variant instead of literal ` true ` /` false ` ; enum params key by
26+ value. The synthetic ` plan ` variant was removed.
27+ - ** Plan agent → Cursor plan mode.** opencode's plan agent (` Tab ` ) is mapped
28+ to Cursor's plan mode via the ` chat.params ` hook; an explicit variant/option
29+ mode still wins.
730- ` 0.1.0-rc.1 ` — first pre-release of the 0.1.0 surface below, published to the
831 npm ` next ` dist-tag for validation ahead of the stable ` 0.1.0 ` .
932
@@ -21,8 +44,9 @@ and a permission-gated delegation tool surface.
2144 tool activity, usage). Implements both ` doStream() ` and ` doGenerate() ` .
2245- ** Per-request controls** via ` providerOptions.cursor ` — ` mode ` (agent/plan),
2346 ` params ` , and ` thinking ` level; works with opencode's model variant picker.
24- - ** Model variants** auto-generated from ` Cursor.models.list ` parameters: a
25- ` plan ` variant plus one per reasoning level a model advertises.
47+ - ** Model variants** auto-generated from ` Cursor.models.list ` parameters: one
48+ per reasoning/effort level a model advertises (boolean params collapse to a
49+ single on-variant). opencode's plan agent maps to Cursor plan mode.
2650- ** Session reuse** (` session: true ` ) — keeps one Cursor agent per opencode
2751 session via ` Agent.resume() ` across turns, with automatic fallback to a fresh
2852 agent. A run wedged by a crashed/duplicate process is recovered by retrying
@@ -56,7 +80,8 @@ and a permission-gated delegation tool surface.
5680
5781### Plugin
5882
59- - ** opencode plugin** (` @stablekernel/opencode-cursor/plugin ` ): auth hook (API-key login;
83+ - ** opencode plugin** (` @stablekernel/opencode-cursor ` , resolved via the package's
84+ ` ./server ` export): auth hook (API-key login;
6085 the key is validated on first use rather than at login), config hook
6186 (auto-injects ` provider.cursor ` ),
6287 ` provider.models() ` (live catalog via ` Cursor.models.list ` ), and the
0 commit comments