opencode-reviewer 2.0.2 → 2.1.1
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 +17 -10
- package/dist/tui.js +308 -1941
- package/package.json +6 -7
package/README.md
CHANGED
|
@@ -85,7 +85,7 @@ that are not exposed by TUI APIs:
|
|
|
85
85
|
```json
|
|
86
86
|
{
|
|
87
87
|
"$schema": "https://opencode.ai/config.json",
|
|
88
|
-
"plugins": ["opencode-reviewer@latest"]
|
|
88
|
+
"plugins": ["opencode-reviewer@latest"]
|
|
89
89
|
}
|
|
90
90
|
```
|
|
91
91
|
|
|
@@ -110,7 +110,7 @@ inclusive, fractions are invalid, and the maximum safe integer is
|
|
|
110
110
|
| `apiKey` | string | Unset | Nonempty Bearer token. Takes precedence over `apiKeyEnv`. |
|
|
111
111
|
| `apiKeyEnv` | string | Unset | Environment-variable name matching `[A-Za-z_][A-Za-z_0-9]*`. Without an inline key, its value must be set and nonblank when a review runs. Omit both key options for no Authorization header. |
|
|
112
112
|
| `instructions` | string | Unset (built-ins) | Absolute, NUL-free directory path containing overrides for the [prompt templates](https://github.com/mightykatun/opencode-reviewer/tree/main/prompts), not inline instructions. Missing named files use built-ins; supplied files must be readable, regular, non-symlink, nonempty UTF-8 text up to 64 KiB. Fixed contracts cannot be overridden. |
|
|
113
|
-
| `stream` | boolean | `false` | Request SSE and show provisional rating/text updates. Normal automatic approval waits for a completed, validated report; fast mode can approve on an early Safe rating.
|
|
113
|
+
| `stream` | boolean | `false` | Request SSE and show provisional rating/text updates. Normal automatic approval waits for a completed, validated report; fast mode can approve on an early Safe rating. Approval rules are described below. |
|
|
114
114
|
| `reviewBash` | boolean | `true` | Review native `shell` permissions. The option keeps its existing name. |
|
|
115
115
|
| `reviewEdits` | boolean | `true` | Review native `edit`, `write` and `patch` tools, which use the `edit` permission action. |
|
|
116
116
|
| `reviewSkills` | boolean | `true` | Skill-review category switch. Exact mandatory skill instructions are currently unavailable to the V2 collector, so these requests remain manual. |
|
|
@@ -227,6 +227,12 @@ boundaries. A zero-second setting still approves without that grace.
|
|
|
227
227
|
descendants. The setting is saved for resume. Both commands are also in the command
|
|
228
228
|
palette. Disabling stops unapproved reviews and countdowns while native permission
|
|
229
229
|
controls remain available. Already-approved fast-mode reports finish in the background.
|
|
230
|
+
The commands remain available when review configuration or the companion is unavailable;
|
|
231
|
+
they save the preference without starting reviews.
|
|
232
|
+
|
|
233
|
+
At startup, the reviewer retries timed-out or not-yet-available companion handshakes
|
|
234
|
+
for up to 10 seconds. If it remains unavailable, history and notifications still work;
|
|
235
|
+
reload the plugin to try again. Invalid handshake data is not retried.
|
|
230
236
|
|
|
231
237
|
If the server reconnects or the companion is replaced, reviews and auto-approval
|
|
232
238
|
stop. Reload the plugin or restart OpenCode to resume. This keeps cached permissions
|
|
@@ -264,9 +270,9 @@ An existing safe sibling database remains in use across restarts. Conversation
|
|
|
264
270
|
enable/disable settings stay in the original OpenCode state directory.
|
|
265
271
|
Saved modes require private ownership and a nonreplaceable path; an untrusted or
|
|
266
272
|
unreadable mode suspends review rather than silently enabling it.
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
273
|
+
Deleting a conversation currently leaves its saved history in place. Known live
|
|
274
|
+
deletion events invalidate only volatile session state, not saved reports or totals.
|
|
275
|
+
A missing list entry or bare 404 cannot prove deletion ownership.
|
|
270
276
|
Windows using the same state directory share history, grouped by host directory
|
|
271
277
|
and main conversation. Reports not yet saved can be lost on shutdown or during a
|
|
272
278
|
prolonged storage failure.
|
|
@@ -291,7 +297,7 @@ review counts once, even without usage data; a fresh review after re-enabling co
|
|
|
291
297
|
again. Retries count extra API attempts actually dispatched, including format
|
|
292
298
|
corrections and transport recovery. Manual approvals are not auto-approvals.
|
|
293
299
|
Timings run from evaluation start, including evidence and retries, to the accepted
|
|
294
|
-
attempt's first rating and final validated response, excluding
|
|
300
|
+
attempt's first rating and final validated response, excluding countdown
|
|
295
301
|
time. Non-streaming reviews use the final response time for both measurements.
|
|
296
302
|
Averages use running means and sample counts; stored review details also retain
|
|
297
303
|
their individual timings. Both scopes persist in the existing history database
|
|
@@ -331,8 +337,8 @@ terminal is focused:
|
|
|
331
337
|
- **Session needs attention:** manual permissions. Reviewed requests
|
|
332
338
|
stay silent during identification, report generation and retries. Final Safe
|
|
333
339
|
reports notify when auto-approval is disabled or canceled, or after failed approval
|
|
334
|
-
is confirmed to remain pending. Waiting for
|
|
335
|
-
automatic countdown to start does not trigger attention. Disabled/unsupported
|
|
340
|
+
is confirmed to remain pending. Waiting for conversation eligibility, native priority
|
|
341
|
+
or an automatic countdown to start does not trigger attention. Disabled/unsupported
|
|
336
342
|
reviews and terminal analysis failures can notify without a report.
|
|
337
343
|
- **Unsafe permission needs human approval:** a completed, validated Unsafe review,
|
|
338
344
|
with its own sound. Provisional streamed ratings never notify.
|
|
@@ -346,7 +352,8 @@ terminal is focused:
|
|
|
346
352
|
wait for the previous player to finish, so successive alerts do not overlap.
|
|
347
353
|
- **Session error:** an unrecovered session/provider failure, not a review failure.
|
|
348
354
|
- **Session ended:** a completed root-agent response, not a question/permission
|
|
349
|
-
pause or an explicit user interruption.
|
|
355
|
+
pause or an explicit user interruption. Waits until the conversation's subagents,
|
|
356
|
+
shells and terminals have finished, including work the main agent stopped waiting for.
|
|
350
357
|
|
|
351
358
|
Permission attention, Unsafe and question notifications, including their reminders,
|
|
352
359
|
apply only to the current native input blocker in each visited root conversation.
|
|
@@ -438,6 +445,6 @@ After building, run `node scripts/test-runtime.mjs --profile ci` for that same
|
|
|
438
445
|
profile. Use `node scripts/test-runtime.mjs --list` for the complete runtime
|
|
439
446
|
inventory or `node scripts/test-runtime.mjs --plan --profile ci` for a
|
|
440
447
|
host-independent plan. Profiles select documented scenario/flag combinations;
|
|
441
|
-
interactive desktop checks
|
|
448
|
+
interactive desktop checks have separate prerequisites.
|
|
442
449
|
See [AGENTS.md](https://github.com/mightykatun/opencode-reviewer/blob/main/AGENTS.md)
|
|
443
450
|
for runtime tests and the tag-driven release process.
|