Skip to content

Releases: campfirein/byterover-cli

ByteRover CLI 3.7.1

20 Apr 05:39

Choose a tag to compare

This patch release cleans up brv vc noise: runtime ranking data no longer churns your tracked notes, and OS / editor temp files are now ignored by default. It also refreshes the agent skill template so connected coding agents know where to look up your past queries and curates.

🌟 Highlights

🧹 brv vc status stays clean after queries and curates

Until now, every brv search, brv query, or agent curate quietly updated ranking data (things like how often a note was accessed and how recent it is) inside the markdown files themselves. That meant brv vc status was always full of churn that didn't reflect anything you actually wrote.

v3.7.1 moves all of that ranking data into a separate per-project file kept outside your tracked notes. Your markdown now only holds the things you actually edit (title, tags, summary, related links, and the body), and your version control stays quiet between real edits.

While we were in the area, brv dream synthesize also stopped writing maturity: draft into the top of new synthesis files. That field now seeds the sidecar too, so freshly generated summaries land clean.

No action needed. Older context trees with ranking fields still living in the markdown will continue to load. Leftover fields are simply ignored on read, so nothing breaks and no migration is required.

🤖 Connected agents now know about your query and curate history

Coding agents that connect to ByteRover via brv connectors install (Claude Code, Cursor, Codex, Copilot, and others) get an updated skill file with a dedicated new section for history and recall metrics. When an agent is debugging a knowledge gap, it now reaches for brv query-log view, brv query-log summary, and brv curate view (including the resolution-tier breakdown and time / status filters) instead of guessing.

To pick this up on an existing connector, re-run:

brv connectors install <agent>

🙈 OS and editor temp files no longer clutter brv vc status

The context-tree .gitignore now excludes the usual operating-system and editor noise:

  • macOS: .DS_Store, ._*
  • Windows: Thumbs.db, ehthumbs.db, Desktop.ini
  • Linux: .directory, .fuse_hidden*, .nfs*
  • Editors: *.swp, *.swo, *~, .#*, *.bak, *.tmp

Patterns auto-sync into existing projects on the next brv vc command, so no manual .gitignore edit is needed.

What's Changed

🐛 Fixes

  • Runtime signals sidecar: move access / recency / maturity ranking out of markdown frontmatter into a per-project sidecar so brv vc status stays clean - by @danhdoan in #447, #448, #449, #450, #452, #453, #455, #456, #457
  • Synthesis files no longer leak maturity: draft into frontmatter: brv dream synthesize now seeds the sidecar instead - by @RyanNg1403 in #458
  • Extend context-tree .gitignore with macOS / Windows / Linux system files and editor swap / backup / temp patterns - by @bao-byterover in #463

✨ Improvements

  • Agent skill template, dedicated section for query and curate history: connectors now teach agents about brv query-log view, brv query-log summary, brv curate view, the resolution-tier taxonomy, and time / status filters - by @DatPham-6996 in #445

📚 Docs & Chores

🙏 Contributors

Thanks to @danhdoan, @RyanNg1403, @DatPham-6996, and @bao-byterover for shipping this release.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.7.0...v3.7.1

ByteRover CLI 3.7.0

18 Apr 04:33

Choose a tag to compare

This release adds Intel Mac support to the native installer so ByteRover CLI installs out of the box on x86_64 Macs, and patches a high-severity npm advisory in our transitive dependencies.

🌟 Highlights

🍎 Intel Mac (darwin-x64) install support

Until now, running our one-line installer on an Intel Mac stopped with an "Apple Silicon only" error. v3.7.0 publishes a darwin-x64 tarball alongside the existing builds, so the same command now works everywhere:

curl -fsSL https://byterover.dev/install.sh | sh

Nothing changes for users already on Apple Silicon, Linux x64, or Linux ARM64 - their install path is unchanged.

🔒 Security dependency update

Bumped basic-ftp and hono to clear a high-severity advisory flagged by npm audit. No action needed beyond upgrading -behavior is identical.

What's Changed

✨ Features

  • Add darwin-x64 (Intel Mac) tarball build target and enable it in the installer - by @leehpham in #440

🔒 Security

  • Patch high-severity npm advisory by bumping basic-ftp and hono - by @bao-byterover in #443

📚 Docs & Chores

Supported platforms

macOS ARM64, macOS x64 (Intel), Linux x64, Linux ARM64.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.6.1...v3.7.0

ByteRover CLI 3.6.1

18 Apr 03:37

Choose a tag to compare

This release is a maintenance rebuild of v3.6.0 - no code or behavior changes. v3.6.1 reships the v3.6.0 feature set with our refreshed release pipeline configuration so the distributed binary is built against the correct settings.

Why 3.6.1?

v3.6.0 was packaged before our release pipeline configuration was fully updated, so the published binary shipped with stale build settings. v3.6.1 is a clean rebuild from the same source with the correct configuration baked in.

If you installed v3.6.0, please upgrade to v3.6.1. New users can install v3.6.1 directly and get the full v3.6.0 feature set - see the v3.6.0 release notes for what's included.

Upgrade

curl -fsSL https://byterover.dev/install.sh | sh

After upgrading, run brv restart to reload the daemon.

What's Changed

📚 Docs & Chores

  • Rebuild of v3.6.0 with refreshed release pipeline configuration - by @bao-byterover
  • Add AGENTS.md to document Codex integration for contributors - by @leehpham

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.6.0...v3.6.1

ByteRover CLI 3.6.0

17 Apr 07:55

Choose a tag to compare

This release introduces brv dream — an idle-time cleanup that keeps your context tree tidy — and brv query-log, so you can finally see what you've asked and how well it was answered.

🌟 Highlights

🌙 brv dream — tidy up your context tree while you're away

Over time, your context tree collects duplicates, stale drafts, and cross-topic connections that never quite got written down. brv dream cleans it up in the background so you don't have to.

When it runs, it does three things:

  • Merges notes that say the same thing.
  • Writes short summaries that connect ideas across topics.
  • Archives stale entries that haven't been useful.

It runs on its own when the CLI has been idle for a while, or whenever you run brv dream yourself.

Safe by default. Anything the model isn't sure about is held for you to review with brv review pending before it takes effect. If you don't like what a run did, brv dream --undo reverts the last one.

Flags: --force / -f (skip the time and activity gates), --detach (queue and exit without waiting), --undo, --timeout <seconds>, --format json.

📊 brv query-log — see what you've asked before

Every brv query is now saved locally, so you can look back at past questions and how they were answered — no extra setup, nothing leaves your machine.

Two subcommands do the work:

  • brv query-log view — lists recent queries, with filters --status, --tier, --since, --before, --limit, plus --detail to also show the matched docs for each entry, and --format json for scripting.
  • brv query-log summary — aggregated metrics (coverage, cache hit rate, top topics) over a window you set with --last, --since, or --before. Pick the shape you want with --format text, json, or narrative — the last one reads like a plain-English recap, great for a daily review.

Nothing changes for your existing brv query workflow — logs are written automatically.

What's Changed

✨ Features

  • brv dream — background context-tree cleanup with merge, summarize, and archive passes; idle-time auto-trigger; brv review pending integration; and --undo / --detach support — by @RyanNg1403 and @danhdoan in #436
  • brv query-log view and brv query-log summary — query history viewer and aggregate recall-metrics summary — by @bao-byterover in #375

📚 Docs & Chores

  • Consolidate IAM / Cogit / LLM base-URL env vars into BRV_IAM_BASE_URL, BRV_COGIT_BASE_URL, and BRV_LLM_BASE_URL (developer-only, no user impact) — by @hieuntg81 in #397
  • Update CHANGELOG.md and bump version to 3.6.0 — by @bao-byterover

🙏 Contributors

Thanks to everyone who shipped this release: @RyanNg1403, @danhdoan, @bao-byterover, and @hieuntg81.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.5.1...v3.6.0

ByteRover CLI 3.5.1

16 Apr 03:36

Choose a tag to compare

A small patch that improves how ByteRover's MCP tools communicate with coding agents.

🌟 Highlights

🔧 Smarter MCP tool descriptions

The cwd parameter on brv-curate and brv-query MCP tools now clearly tells the calling agent when a project path is required (Claude Desktop, hosted MCP) vs. optional (Cursor, Cline, Zed, Claude Code). This reduces failed tool calls from agents that previously omitted or guessed the path.

No action needed on your side — just upgrade and brv restart.

What's Changed

✨ Features

  • Improve MCP tool descriptions so coding agents reliably pass the project path — by @bao-byterover in #423

📚 Docs & Chores

🙏 Contributors

Thanks to @bao-byterover for shipping this patch.

Full Changelog: v3.5.0...v3.5.1

ByteRover CLI 3.5.0

15 Apr 08:27

Choose a tag to compare

This release adds Claude Desktop as a first-class connector, cleans up how the installer handles its bundled Node.js, and patches a security advisory.

🌟 Highlights

🖥 Claude Desktop — connect ByteRover to the Claude Desktop app

If you use the Claude Desktop app, you can now plug ByteRover into it so Claude can search and save into your context tree directly — the same memory you already use from brv.

One command to set it up:

  • brv connectors install "Claude Desktop" — or pick Claude Desktop from /connectors inside the REPL.

Works on macOS and Windows (including Microsoft Store / MSIX installs) — the two platforms Anthropic ships Claude Desktop for. After installing, fully quit Claude Desktop from the tray or menu bar and reopen it — a window-level restart isn't enough for it to pick up the new connector.

📦 Cleaner installer layout

Previously, install.sh placed its bundled Node.js in the same directory it added to your PATH, which could silently shadow the node on your system — breaking nvm, project-pinned Node versions, and anything else that resolves node through PATH.

Now the bundled Node lives in lib/ and only the brv symlink sits in bin/, so your system node is untouched. Just reinstall to pick up the new layout — no config changes needed.

🛡 Security update

Updated basic-ftp to close a high-severity npm advisory. Upgrade recommended.

What's Changed

✨ Features

  • Claude Desktop connector with MCP support and auto-mode on macOS and Windows (including MSIX / Microsoft Store) — by @bao-byterover in #406
  • Isolate bundled Node.js so install.sh no longer shadows the system node on PATH — by @bao-byterover in #413

🐛 Fixes

📚 Docs & Chores

  • Update CHANGELOG.md and CLAUDE.md for the 3.5.0 release — by @bao-byterover

🙏 Contributors

Thanks to everyone who shipped this release: @bao-byterover and @cuongdo-byterover.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.4.0...v3.5.0

ByteRover CLI 3.4.0

14 Apr 14:13

Choose a tag to compare

This release introduces brv swarm — a single place to search and save across all your knowledge tools (ByteRover context tree, Obsidian, GBrain, OpenClaw Memory Wiki, and your local notes) — plus an important security update and a few cleanups that make brv vc and knowledge search feel tidier.

🌟 Highlights

🧠 brv swarm — one place to search all your notes

If you keep knowledge in more than one tool — an Obsidian vault, a folder of markdown notes, a team wiki, plus your ByteRover context tree — brv swarm ties them all together. You ask one question, and it searches everything at once.

Getting started is a single command:

  • brv swarm onboard — an interactive wizard that walks you through picking which tools to connect.
  • brv swarm status — shows which tools are healthy, which can be written to, and how they feed into each other.

Supported out of the box: ByteRover context tree, Obsidian vaults, local markdown folders, GBrain, and OpenClaw Memory Wiki. Nothing changes for your existing brv curate / brv query workflow until you opt in.

🔎 Smarter search, smarter saving

Once you've onboarded, two commands do the heavy lifting:

  • brv swarm query <question> — asks every connected tool in parallel and merges the results, so the best answer wins regardless of which notebook it lives in. Add --explain to see which tools were picked and why.
  • brv swarm curate <content> — figures out the best place to save new content based on what it is. You can force a specific tool with --provider, and if nothing else is configured, it safely falls back to your ByteRover context tree.

For the agent and power users: new swarm_query / swarm_store tools are available in the AI agent, and sandboxed code can call tools.swarmQuery() / tools.swarmStore() directly. You can also route context between tools via enrichment.edges in swarm.config.yaml, with validation that catches cycles, self-references, and missing providers so misconfigurations warn instead of crash.

🛡 Security and everyday fixes

  • Axios pinned to 1.15.0 — closes a known critical vulnerability. Please upgrade.
  • Context-tree .gitignore stays in sync — every brv vc command now tops up missing ignore patterns, so you stop seeing derived files clutter your brv vc diffs after a CLI update.
  • Stale knowledge is cleaned up — entries that pointed to deleted files no longer show up in brv search and brv query results.

What's Changed

✨ Features

  • brv swarm — connect Obsidian, local markdown, GBrain, and the ByteRover context tree; includes onboard, status, and the swarm_query / swarm_store agent tools by @ngduyanhece in #372
  • OpenClaw Memory Wiki adapter for brv swarm by @cuongdo-byterover in #405
  • brv swarm query with source labels and --explain flag by @cuongdo-byterover in #383
  • brv swarm curate with automatic fallback to the ByteRover context tree by @cuongdo-byterover in #396
  • Faster repeated swarm queries via a short-lived result cache by @cuongdo-byterover in #390
  • gpt-5.4-mini added to the Codex allowed models list by @withakay in #393

🐛 Fixes

📚 Docs & Chores

  • Document brv swarm query and brv swarm curate in SKILL by @cuongdo-byterover in #409
  • Use COLLABORATOR / CONTRIBUTOR for PR auto-review author checks by @leehpham in #373
  • Update CHANGELOG.md and CLAUDE.md for the 3.4.0 release by @bao-byterover

🙏 Contributors

Thanks to everyone who shipped this release: @ngduyanhece, @cuongdo-byterover, @bao-byterover, @leehpham, and @withakay.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.3.0...v3.4.0

ByteRover CLI 3.3.0

11 Apr 15:15

Choose a tag to compare

This release adds brv search - a pure BM25 retrieval command that ranks context-tree results with zero LLM calls, zero provider config, and zero token cost - plus a long-requested --timeout flag for brv curate and brv query so slow local models can finish their work. A handful of legacy-sync papercuts get cleaned up along the way.

🌟 Highlights

🔎 brv search - zero-cost BM25 over the context tree

A new command that ranks files in your context tree using pure BM25 retrieval - no LLM, no provider config, no token budget to watch. It complements brv query for cases where you want structured results with paths, scores, and excerpts rather than a synthesized answer. Flags: --limit <n> (1–50), --scope <prefix> to restrict search to a subdirectory, and --format json for scripting. Rule of thumb: use brv search when you need the raw hits, brv query when you want an answer.

--timeout on brv curate and brv query

Override the previous hard-coded 5-minute limit so slower local models (Ollama, LM Studio, llama.cpp) can finish long-running operations. Accepts a value in seconds, defaults to 300, caps at 3600. No effect when combined with --detach.

🧹 Cleaner brv vc experience for legacy-sync users

Three fixes that make brv vc quieter and less confusing for projects migrating off the old space-sync flow: brv push / brv pull now show a clear deprecation pointing at brv vc init, brv status no longer litters the project with a stray .snapshot.json, and adaptive *.abstract.md / *.overview.md artifacts are excluded from the context-tree .gitignore so they stop showing up in brv vc diffs.

What's Changed

✨ Features

🐛 Fixes

  • Replace misleading "no space configured" error on brv push / brv pull with a deprecation notice linking to brv vc init by @bao-byterover in #361
  • Stop brv status from auto-creating .snapshot.json on VC-managed projects; now reports "Managed by Byterover version control" by @bao-byterover in #362
  • Exclude adaptive *.abstract.md / *.overview.md artifacts from the context-tree .gitignore so they stop polluting brv vc diffs by @bao-byterover in #363

📚 Docs & Chores

  • Updated CHANGELOG.md and CLAUDE.md for the 3.3.0 release by @bao-byterover

🙏 Contributors

Thanks to everyone who shipped this release: @danhdoan, @andreivladmatei, and @bao-byterover.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.2.0...v3.3.0

ByteRover CLI 3.2.0

11 Apr 04:16

Choose a tag to compare

This release brings multi-repo knowledge sharing to brv. You can now run brv from monorepo subdirectories and sibling checkouts without spawning a second .brv/, pull context from other projects as read-only knowledge sources, and see everything the resolver figured out at a glance from brv status. The tagline: one project's knowledge, any worktree's workflow.

🌟 Highlights

🌳 Git-style worktree links

brv worktree add [path] registers a subdirectory or sibling checkout as a worktree of a parent project by dropping a .brv pointer file (not a directory) that redirects to the parent - the same trick git worktree uses with .git. Run it from inside the subdirectory with no args to auto-detect, list worktrees with brv worktree list, and unregister with brv worktree remove. If the target already has an auto-init'd .brv/, --force backs it up to .brv-backup/ and remove restores it. Also available as /worktree in the REPL.

🔗 Cross-project knowledge sources

brv source add <path> [--alias <name>] links another project's context tree as a read-only knowledge source. Query results pulled from a source are tagged with a shared origin and the source alias, so you can always tell which project an answer came from. A three-layer write guard blocks curate and file writes from leaking into someone else's context tree. Manage sources with brv source list / brv source remove, or /source from the REPL.

🧭 Resolver-aware brv status + workspace-scoped curate/query

brv status now surfaces the resolved project root, the linked worktree root (when different), knowledge-source validity, and actionable warnings for broken or malformed pointers. --verbose shows the resolution source (direct / linked / flag), and a new --project-root <path> flag lets you override auto-detection and fail loudly when the target isn't a ByteRover project. brv curate and brv query automatically pass the worktree root to the daemon when invoked inside a linked worktree - your shell-relative paths still resolve from cwd, so muscle memory keeps working.

What's Changed

✨ Features

  • Workspace linking, knowledge sources, and git-style worktree model by @wzlng in #350

📚 Docs & Chores

  • Updated CHANGELOG.md and CLAUDE.md for the 3.2.0 release by @bao-byterover
  • Added null/undefined handling guidance to the CLAUDE.md TypeScript section by @leehpham

🙏 Contributors

Thanks to everyone who shipped this release: @wzlng, @bao-byterover, and @leehpham.

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.1.0...v3.2.0

ByteRover CLI 3.1.0

10 Apr 08:33

Choose a tag to compare

This release is all about adaptive knowledge. brv now learns from how its knowledge is actually used — frequently-consulted entries rise in search, large entries are stored as compressed abstracts so they cost fewer tokens to consult, and the agent quietly distills patterns and decisions from each REPL session into durable knowledge. The longer you use it, the sharper it gets.

🌟 Highlights

📈 Adaptive knowledge scoring

The knowledge base now ranks results by usage. A new hotness score combined with hierarchical score propagation surfaces the entries you actually consult, while neglected ones decay out of the way. Search relevance improves automatically as you work.

📝 Knowledge abstracts

Knowledge entries now auto-generate compressed abstracts and overviews, so the agent can reason over a much larger knowledge base without burning the context window.

🧠 Session learning

A new session-learning pass extracts patterns, preferences, decisions, and skills from each REPL session and stores them as durable knowledge for future runs — repeated workflows and project conventions get internalized instead of re-discovered.

📥 Resource ingestion tool

A new agent tool pulls external files and resources directly into your knowledge base from inside the REPL, so you can bring in docs, specs, and reference material without leaving brv.

What's Changed

✨ Features

  • Adaptive knowledge scoring, abstracts, session learning, and the resource ingestion tool by @ngduyanhece in #336

🐛 Fixes

  • Fixed double compound scoring in parent score propagation, tightened maturity filtering, and corrected result truncation in knowledge search by @ngduyanhece in #336
  • Clean oclif client cache in install/uninstall scripts to prevent stale-cache issues after upgrades by @bao-byterover in #345

📚 Docs & Chores

  • Updated CHANGELOG.md and CLAUDE.md for the 3.1.0 release by @bao-byterover

🙏 Contributors

Thanks to everyone who shipped this release: @ngduyanhece, @bao-byterover, @RyanNg1403, and @leehpham.

Upgrade

# npm
npm uninstall -g byterover-cli
npm i -g byterover-cli

# native binary (macOS / Linux)
curl -fsSL https://byterover.dev/uninstall.sh | sh
curl -fsSL https://byterover.dev/install.sh | sh

After upgrading, run brv restart to reload the daemon.

Full Changelog: v3.0.1...v3.1.0