You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+10Lines changed: 10 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,6 +2,16 @@
2
2
3
3
All notable user-facing changes to ByteRover CLI will be documented in this file.
4
4
5
+
## [3.16.0]
6
+
7
+
### Added
8
+
-**Cancel a running task with `--cancel <id>`.**`brv curate`, `brv query`, and `brv dream` now accept `--cancel <taskId>` to stop a task started from another terminal or from a detached background run. In the foreground, Ctrl+C sends the cancel before exiting (a second press hard-exits with code 130). In the REPL, Ctrl+Q cancels the active curate or query task, and a footer hint shows when it's armed. `brv webui` also adds a Cancel button on task list rows and the task detail header.
9
+
-**Opt out of update checks with `update.checkForUpdates`.** New setting (boolean, default `true`). Running `brv settings set update.checkForUpdates false` silences the y/n update prompt at startup and stops the background auto-update from running. Manual `brv update` still works when you want to upgrade on your own schedule.
10
+
11
+
### Fixed
12
+
-**Custom models accepted on more OpenAI-compatible providers.** Connecting DeepSeek, GLM, Moonshot, Cerebras, Cohere, DeepInfra, Together AI, MiniMax, Perplexity, or another OpenAI-compatible endpoint with a non-default `--model` no longer fails with a "Model X is not supported for provider 'gemini'" error. The registry now routes all OpenAI-compatible providers through the right model whitelist, so any model your endpoint exposes is accepted.
13
+
-**Security dependency update.** Patched npm dependencies to clear several `npm audit` advisories.
Copy file name to clipboardExpand all lines: CLAUDE.md
+9-2Lines changed: 9 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -83,6 +83,13 @@ npm run dev:ui:package # Vite dev server resolving shared UI from
83
83
- MCP server in `server/infra/mcp/` exposes tools via Model Context Protocol; `tools/` subdir has dedicated implementations (`brv-query-tool`, `brv-curate-tool`)
84
84
- Connector subsystem (`server/infra/connectors/`): `rules/`, `skill/`, `mcp/`, `hook/`, `shared/`. Shared rules files (e.g. `AGENTS.md` shared by Amp/Codex/OpenCode) embed an agent-name footer inside `<!-- BEGIN/END BYTEROVER RULES -->` markers — see `shared/constants.ts` (`BRV_RULE_MARKERS`, `BRV_RULE_TAG`, `extractInstalledAgentFromBrvSection`) — so each agent owns its own segment. Preserve the footer when editing rule-section logic
85
85
86
+
### Task Cancellation
87
+
88
+
-`brv curate | query | dream --cancel <taskId>` — emits `TaskEvents.CANCEL`; shared CLI helper `src/oclif/lib/cancel-task.ts` formats text or JSON envelope. SIGINT in the foreground command triggers the same cancel path (`task-client-sigint`)
89
+
- Daemon: `server/infra/daemon/agent-cancel-listener.ts` routes the cancel into the running agent process; `agent-executor-error.ts` distinguishes user-cancel from real failures so cancelled tasks aren't recorded as errors in billing/history
90
+
- TUI: Esc cancels streaming (covered in REPL section); Tasks tab supports cancel keybind via `tui/features/tasks/hooks/use-cancel-running-task-keybind.ts` + `select-cancel-target.ts`, mounted through `cancel-keybind-initializer.tsx` in app providers
91
+
- WebUI: cancel button in `webui/features/tasks/components/task-list-table.tsx` + `task-detail-header.tsx`, wired via `webui/features/tasks/api/cancel-task.ts` and `utils/row-action-kind.ts`
92
+
86
93
### Web UI (`src/webui/`, `src/server/infra/webui/`)
87
94
88
95
-`brv webui [-p, --port <n>]` opens the dashboard in the default browser. Port is persisted via daemon events (`webui:getPort` / `webui:setPort`); first-run default is 7700
@@ -122,8 +129,8 @@ npm run dev:ui:package # Vite dev server resolving shared UI from
- Categories: `concurrency`, `llm`, `task-history`. Keys: `agentPool.maxSize`, `agentPool.maxConcurrentTasksPerProject`, `llm.iterationBudgetMs`, `llm.requestTimeoutMs`, `taskHistory.maxEntries`. Descriptors in `server/core/domain/entities/settings.ts` reference `src/constants.ts` so a constant change updates the setting's default automatically. Agent process consumes them via `agent/infra/settings/agent-settings-snapshot.ts` forwarded by `server/infra/daemon/agent-process.ts`
132
+
-`brv settings` (bare = list) / `brv settings get <key>` / `set <key> <value>` / `reset <key>` — user-configurable settings persisted at `<BRV_DATA_DIR>/settings.json`. Most settings need`brv restart` to take effect; boolean settings like `update.checkForUpdates` apply live (`restartRequired: false` on the descriptor)
133
+
- Categories: `concurrency`, `llm`, `task-history`, `updates`. Keys: `agentPool.maxSize`, `agentPool.maxConcurrentTasksPerProject`, `llm.iterationBudgetMs`, `llm.requestTimeoutMs`, `taskHistory.maxEntries`, `update.checkForUpdates`. Descriptors in `server/core/domain/entities/settings.ts`are discriminated on `type: 'integer' | 'boolean'` and reference `src/constants.ts` so a constant change updates the setting's default automatically. `update.checkForUpdates` gates the `update-notifier` init hook and the `block-autoupdate-when-off` init hook (which rejects `brv update` when the user has opted out). Agent process consumes settings via `agent/infra/settings/agent-settings-snapshot.ts` forwarded by `server/infra/daemon/agent-process.ts`
0 commit comments