Skip to content

Releases: BaranziniLab/biorouter

BioRouter v1.87.1

Choose a tag to compare

@Broccolito Broccolito released this 03 Jul 01:15

Biorouter v1.87.1 Release Notes

Release Date: July 2026
Repository: github.com/BaranziniLab/biorouter

This is a UI-polish release on top of v1.87.0. It rolls out a warmer, calmer
two-tone desktop theme across every panel — a beige sidebar against an off-white
chat canvas, flatter cards and rows, hairline separators, and a chat composer
with a clearer edge. It also fixes the top-of-chat controls so they stay
clickable when the sidebar is collapsed. No breaking changes — existing installs
upgrade in place, and your settings, sessions, extensions, and knowledge bases
are preserved.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.87.1-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.87.1-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.87.1.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.87.1_amd64.deb sudo dpkg -i biorouter_1.87.1_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.87.1-1.x86_64.rpm sudo rpm -i BioRouter-1.87.1-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.87.1_amd64.deb sudo apt install ./biorouter-cli_1.87.1_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.87.1-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.87.1-1.x86_64.rpm

The two CLI-only packages install just the headless binaries (biorouter +
biorouterd) with no Electron/GUI payload — ideal for servers, HPC nodes, and
containers. (Local models need glibc ≥ 2.35 — Debian 12+/Ubuntu 22.04+.)

macOS builds are signed and notarized with the UCSF Developer ID certificate.
Users on v1.86.0 or later can update in place with the one-click "Restart &
Update"
button — no need to re-download the DMG.

What's New

Warm two-tone desktop theme

The desktop app moves to a calmer, warmer palette. The sidebar now sits on its
own warm-beige surface against an off-white chat canvas, giving the window a
clear two-tone structure. The main panel squares off to sit flush with the
straight sidebar edge, and a hairline divider replaces the heavier separator.

Cards, list rows, and settings surfaces across Home, Apps, Workflows, Scheduler,
Settings, Skills, Extensions, and Knowledge were flattened to a consistent
token-based border system, so panels read as one product rather than a stack of
independently styled screens. Overlays, dropdowns, diagnostics, and the
onboarding provider cards were harmonized to match.

The chat composer gains a visible edge and a subtle lift (a dedicated shadow
token) so the input area stands out from the canvas without feeling heavy.

What's Fixed

Top controls stay clickable with the sidebar collapsed

When the sidebar was collapsed, the row of controls at the top of the chat
became unclickable and the session-name pill overlapped the collapse toggle.
The top controls are now correctly hit-testable when the sidebar is collapsed,
and the session-name pill is offset so it no longer sits under the toggle.

Upgrade Notes

No configuration changes are required. ~/.config/biorouter (your providers,
sessions, extensions, and knowledge bases) is untouched by the upgrade.

Changes Since v1.87.0

  • Warm two-tone canvas: dedicated beige sidebar surface against an off-white
    chat canvas.
  • Flattened cards and rows across Home, Apps, Workflows, Scheduler, Settings,
    Skills, Extensions, and Knowledge to a shared token border system.
  • Main panel squared off to sit flush with the straight sidebar; hairline
    sidebar edge and a defined text-subtle token.
  • Chat composer given a visible edge and a subtle-lift shadow token; overlays
    and dropdown menus harmonized.
  • Settings header flattened with consistent section labels; Skills header inset
    divider; onboarding select-focus and extensions highlight refinements.
  • Fixed top chat controls being unclickable and the session-name pill
    overlapping the toggle when the sidebar is collapsed.
  • Landing site: added the BioRouter 1.87 release video and a BAAM skills /
    extensions expansion announcement.

Biorouter is built by the Baranzini Lab at UCSF. Learn more at biorouter.ucsf.edu.

BioRouter v1.87.0

Choose a tag to compare

@Broccolito Broccolito released this 02 Jul 21:25

Biorouter v1.87.0 Release Notes

Release Date: July 2026
Repository: github.com/BaranziniLab/biorouter

This release focuses on making BioRouter feel calmer, more readable, and more
trustworthy across the desktop app while also hardening the agent runtime,
knowledge ingestion, and release packaging flow. The chat, home, dashboard,
knowledge, settings, workflows, scheduler, extensions, skills, applications,
and history panels now share a more consistent layout system: centered readable
content, compact surfaces, softer shadows, flatter separators, and clearer hover
affordances.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.87.0-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.87.0-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.87.0.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.87.0_amd64.deb sudo dpkg -i biorouter_1.87.0_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.87.0-1.x86_64.rpm sudo rpm -i BioRouter-1.87.0-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.87.0_amd64.deb sudo apt install ./biorouter-cli_1.87.0_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.87.0-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.87.0-1.x86_64.rpm
Linux — Headless browser server Debian / Ubuntu (x64) biorouter-headless-linux-x64.tar.gz Extract on a Debian-based server and run with the headless setup flow in docs/headless-linux.md

macOS builds are signed and notarized with the UCSF Developer ID certificate.
The macOS ZIP assets are published for in-app updates through latest-mac.yml;
manual macOS downloads should use the DMG files.

The two CLI-only packages install just the command-line/server binaries
(biorouter + biorouterd) with no Electron/GUI payload. The headless browser
server
archive packages biorouter, biorouterd, biorouter-headless, and
the static web UI so BioRouter can run on a Debian/Ubuntu server and be opened
from a browser without bundling Electron or local user credentials.

Highlights

Cohesive desktop UI polish

The main desktop panels now use consistent readable widths so text does not
stretch edge-to-edge on wide windows or collapse awkwardly on narrow ones.
Chat input surfaces, empty-state prompts, tool-call rows, toasts, find bars, and
sidebar controls were tuned together so they feel like one product rather than
separate panel implementations.

Clearer knowledge ingestion

The Knowledge page now supports a dedicated default model for out-of-conversation
knowledge work, including staged-file digestion and knowledge graph maintenance.
In-conversation knowledge queries still use the active chat model. The knowledge
panel also has clearer drag-and-drop, paste-text, selector, and graph layout
affordances.

More useful agent drafting

Agent Drafter now has stronger support for app layout requirements, workflow
planning, context-management decisions, downloads, sub-agent orchestration, and
security harness generation. The drafted agents are easier to inspect and safer
to run because their generated bundles include clearer runtime scaffolding and
guardrail behavior.

Runtime and observability hardening

The agent loop, extension manager, sandbox, scheduler, workflow generation,
provider registry, MCP surfaces, and observability paths were tightened for more
predictable behavior. Tool-call presentation is more human-readable by default
while preserving access to raw details when needed.

Headless Linux packaging

BioRouter now has a documented headless Linux release path for Debian/Ubuntu
servers. The release artifact is built locally, verified for profile-free
packaging, and can be deployed to a server that serves the browser UI while
running the BioRouter daemon on the server. Credentials remain runtime
configuration and are not packed into the release archive.

Upgrade Notes

No configuration migration is required. Existing providers, sessions,
extensions, skills, knowledge bases, and app settings continue to live under the
same BioRouter configuration directory.


Biorouter is built by the Baranzini Lab at UCSF. Learn more at biorouter.ucsf.edu.

BioRouter v1.86.1

Choose a tag to compare

@Broccolito Broccolito released this 25 Jun 18:25

Biorouter v1.86.1 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/biorouter

This is a polish-and-reliability release on top of v1.86.0. It fixes session
auto-naming so chats stop getting stuck on "New Session," restores rich
artifact rendering in the standalone Expand window, redesigns the
tool-permission (human-in-the-loop) confirmation card, and tidies the App SDK
and Agent Drafter copy. The CLI status line now counts extensions the same way
the GUI does. No breaking changes — existing installs upgrade in place, and your
settings, sessions, and extensions are preserved.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.86.1-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.86.1-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.86.1.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.86.1_amd64.deb sudo dpkg -i biorouter_1.86.1_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.86.1-1.x86_64.rpm sudo rpm -i BioRouter-1.86.1-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.86.1_amd64.deb sudo apt install ./biorouter-cli_1.86.1_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.86.1-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.86.1-1.x86_64.rpm

The two CLI-only packages install just the headless binaries (biorouter + biorouterd) with no Electron/GUI payload — ideal for servers, HPC nodes, and containers. (Local models need glibc ≥ 2.35 — Debian 12+/Ubuntu 22.04+.)

macOS users on v1.86.0 or later can update in place with the one-click "Restart & Update" button — no need to re-download the DMG.

What's Fixed

Sessions name themselves again

New chats were getting stuck on the placeholder "New Session" title. The
automatic LLM-generated rename was queued at the tail end of the reply stream,
but the streaming consumer stops as soon as the reply completes — so that tail
never ran and the naming call was never made. Renaming now happens right after
the reply loop ends, regardless of how the turn finished, so every conversation
gets a real title. A session that grew past its early naming window without a
name will now still get named once it keeps going, and the desktop app waits a
little longer for slower (reasoning-model) namers to land before giving up.

Rich artifacts render in the Expand window

Opening an Agent Drafter app or an Auto Visualiser figure in the
standalone "Expand" window showed a blank chart, a dead Convert button, or an
unresponsive embedded agent. The Expand window loads each artifact from a local
file but had inherited the app's strict script-src 'self' content-security
policy, which blocked the artifact's own inline scripts (Chart.js / D3 renders,
the converter's logic, the agentic runtime), the CDN chart libraries used in CDN
mode, and the WebSocket an embedded agent uses to reach its local sidecar. The
Expand window now applies a permissive policy scoped only to these
agent-generated, already-sandboxed artifacts (no Node access, isolated context);
everything else keeps the strict policy.

Redesigned tool-permission (human-in-the-loop) card

The permission prompt that appears when the agent asks to run a sensitive tool
has been rebuilt as one cohesive bordered card. It now has a lock-icon header
that clearly signals a permission request, consistent typography, a primary
Allow Once action, and a soft shadow with a gentle slide-in so you actually
notice the agent is waiting on you — replacing the old mismatched borderless
prompt stacked on a bordered button box.

Correct extension count in the CLI

The interactive CLI status line was counting the six foundational
capabilities (Developer, Extension Manager, Skills, Todo, Memory, Knowledge) as
extensions, so it showed "11 extensions" where the GUI shows 5. It now excludes
the capabilities (matching how the GUI categorizes them) and pluralizes
correctly, so "1 skill" reads singular and "0" / "2+" read plural across skills,
extensions, and knowledge bases.

What's Tidied

Cleaner App SDK & Agent Drafter copy

The App SDK settings section drops the "(experimental)" tag, and its four
safety-framework toggle descriptions were rewritten in plainer language. The
Agent Drafter extension description was likewise cleaned up. The
"Popular Chat Topics" suggested-prompt block has been removed from the
new-session screen for a calmer, less cluttered start.

Upgrade Notes

No configuration changes are required. ~/.config/biorouter (your providers,
sessions, extensions, and knowledge bases) is untouched by the upgrade.


Biorouter is built by the Baranzini Lab at UCSF. Learn more at biorouter.ucsf.edu.

BioRouter v1.86.0

Choose a tag to compare

@Broccolito Broccolito released this 21 Jun 21:47

Biorouter v1.86.0 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/biorouter

This is a feature-and-fix release. It adds one-click "Restart & Update" auto-update for macOS, multi-monitor screen capture with vision input, agent-readable UI-automation errors, and new built-in extension/skill authoring skills. It also adds a Capabilities settings section for foundational built-ins and hardens the Agent Drafter preview. No breaking changes — existing installs upgrade in place.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.86.0-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.86.0-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.86.0.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.86.0_amd64.deb sudo dpkg -i biorouter_1.86.0_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.86.0-1.x86_64.rpm sudo rpm -i BioRouter-1.86.0-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.86.0_amd64.deb sudo apt install ./biorouter-cli_1.86.0_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.86.0-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.86.0-1.x86_64.rpm

The two CLI-only packages install just the headless binaries (biorouter + biorouterd) with no Electron/GUI payload — ideal for servers, HPC nodes, and containers. (Local models need glibc ≥ 2.35 — Debian 12+/Ubuntu 22.04+.)

What's New

One-click "Restart & Update" (macOS)

Updating no longer means opening the download page, grabbing the DMG, and dragging to Applications. A single button now downloads the new release in the background and, on click, restarts Biorouter on the new version in place. Your settings, sessions, and extensions are preserved — only the app bundle is swapped; ~/.config/biorouter is untouched. Both the update modal and the Settings update section drive the same one-click flow with a live progress bar. The release pipeline now also ships the signed zips and a latest-mac.yml manifest that the updater needs.

Multi-monitor capture + vision input

The Computer Controller and Developer screen-capture tools now enumerate connected displays (index, name, resolution, position, scale, primary) on macOS, Linux, and Windows, so a multi-monitor setup can re-capture any screen by index, and list_windows accepts a window-title substring. Xiaomi MiMo (v2.5 / v2) is now declared image-capable, so it can consume screenshots like the Anthropic and OpenAI vision providers.

Extension / skill authoring skills

develop-biorouter-extension and develop-biorouter-skill are now real built-in SKILL.md skills for authoring Biorouter extensions and skills.

Capabilities — on by default, managed in one place

The foundational built-ins — Developer, Extension Manager, Skills, Todo, Memory, Knowledge — are now first-class Capabilities in Settings, enabled by default:

  • Default-enabled on upgrade. If you upgraded from an older build where some of these were left off, this version turns them back on for you (once) so the agent has its core abilities out of the box. You can still disable any of them in Settings → Capabilities, and that choice sticks.
  • Out of the chat extension list. Capabilities no longer clutter the per-conversation extension dropdown in the chat box and the dashboard — that list now shows only the optional built-ins and the extensions you install yourself. Capabilities are toggled only in Settings, where they belong.

Agent reliability

Backend agent-loop improvements (shared by the CLI and the desktop app), found while stress-testing the agent across 100 real multi-file projects:

  • Continue-on-truncation. When a provider cuts a response off at its output-length limit (finish_reason="length") with no tool call, the agent auto-continues the turn instead of stopping on a half-written response — gated strictly on the explicit length signal and bounded so it can't loop.
  • No more "keep going" loops when stuck. An earlier mid-task "keep working until your todos are done" nudge could repeat itself when the agent was genuinely blocked (e.g. an unrecoverable provider error) without resolving the cause. That hard-coded nudge is removed; "don't stop while work is unfinished" is now handled only by the bounded, user-configurable Stop-hook and /goal mechanisms (which give up when progress stalls).
  • The turn-ending finish_reason is surfaced in the logs, so "finished" vs "cut off" is distinguishable.

CLI quality-of-life (interactive TUI)

  • Scroll the whole conversation. The mouse wheel now scrolls the conversation history instead of the terminal's own buffer (which used to expose the pre-launch banner). Native text selection still works with your terminal's bypass modifier (Option on macOS Terminal/iTerm2, Shift elsewhere); PageUp/PageDown scroll too.
  • Tidier tool output. As tool calls pile up, older tool results collapse to a one-line summary so only the current result stays expanded — the conversation no longer gets buried under walls of old output.
  • See your queued messages. Messages you type while the agent is working now appear in full in a "queued" pane (not just a count), so you always see what runs next, in order.

MiMo vision fix

Only the multimodal mimo-v2-omni model is now advertised as image-capable; the text MiMo models (which reject image input) no longer get fed screenshots — and, defensively, image content is stripped from requests to a non-vision MiMo model. This fixes a stuck loop where a screenshot/vision step would 404 (No endpoints found that support image input) and strand the agent.

What's Fixed

  • UI automation: failing osascript / PowerShell scripts now surface as real tool errors with stderr and exit status (instead of a fake "success" that made the model retry blindly), and are guarded against long hangs.
  • Code execution: binary/blob resources (e.g. Auto Visualiser ui:// HTML blobs) are collected out-of-band and appended for inline UI rendering, with no duplicate payload for text resources.
  • Agent Drafter: preview auto-resize, in-app chat protocol, and sandbox-safe send.

Upgrading

No action required beyond installing the new build for your platform from the table above. Settings, sessions, knowledge bases, and configured providers are preserved. On macOS, in-app "Restart & Update" handles the swap for you.

Changes Since v1.85.4

  • feat: multi-monitor capture + vision input, agent-readable UI-automation errors, dev skills
  • feat(updater): one-click "Restart & Update" auto-update for macOS
  • feat(settings): add Capabilities section for foundational built-ins
  • fix(agent-drafter): preview auto-resize, in-app chat protocol, sandbox-safe send
  • feat(agent): continue-on-truncation when a turn is cut off at the output-length limit
  • feat(agent): log finish_reason at turn-end (done-vs-stopped observability)
  • feat(capabilities): default-enable foundational capabilities on upgrade; hide them from the chat extension dropdown (managed in Settings)
  • fix(agent): remove the hard-coded "unchecked todos" continuation that could loop when the agent was stuck; defer to the bounded Stop-hook / /goal mechanisms
  • fix(providers/mimo): advertise vision only for mimo-v2-omni; strip image content from requests to text-only MiMo models (fixes the image-404 stuck loop)
  • feat(cli/tui): mouse-wheel scrolls the conversation; collapse older tool outputs; show queued messages in full

BioRouter v1.85.4

Choose a tag to compare

@Broccolito Broccolito released this 20 Jun 10:13

Biorouter v1.85.4 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/biorouter

This is a feature-and-fix release. It adds the Agent Drafter built-in extension for authoring AI-agent-enabled artifacts, an ACP WebSocket transport, two new LLM providers (z.ai / GLM and Xiaomi MiMo), 24 new Auto Visualiser charts, and broader tree-sitter language support (C++, C, R, Julia, MATLAB). It also hardens the interactive CLI, the developer extension, and provider retries. No breaking changes — existing installs upgrade in place.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.85.4-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.85.4-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.85.4.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.85.4_amd64.deb sudo dpkg -i biorouter_1.85.4_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.85.4-1.x86_64.rpm sudo rpm -i BioRouter-1.85.4-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.85.4_amd64.deb sudo apt install ./biorouter-cli_1.85.4_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.85.4-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.85.4-1.x86_64.rpm

The two CLI-only packages install just the headless binaries (biorouter + biorouterd) with no Electron/GUI payload — ideal for servers, HPC nodes, and containers. (Local models need glibc ≥ 2.35 — Debian 12+/Ubuntu 22.04+.)

What's New

Agent Drafter

A new built-in Agent Drafter MCP extension lets you author AI-agent-enabled artifacts directly in Biorouter. Drafts render with native Biorouter aesthetics, support agent-sizable and expandable previews, and run as working standalone agents. The accompanying ACP WebSocket transport improves multi-agent orchestration and fixes extension discoverability.

New LLM providers

z.ai (GLM) and Xiaomi MiMo are now selectable LLM providers. DeepSeek's deepseek-chat / deepseek-reasoner aliases are future-proofed against retirement.

Richer Auto Visualiser

The Auto Visualiser pipeline is hardened and gains 24 new visualizations spanning charts, scientific plots, relationship/hierarchy diagrams, Mermaid diagrams, and geo maps.

More languages in the analyze extension

tree-sitter is bumped to 0.26, adding C++, C, R, Julia, and MATLAB to the analyze extension's supported languages.

CLI / TUI overhaul

The interactive CLI gains wrapping input, a bottom-pinned input bar, live streaming, and richer rendering.

What's Fixed

  • CLI: --resume now falls back gracefully when a session can't be restored, and tool-call paths render readably.
  • Agent: the per-turn action-limit stop is now explicit and quantified.
  • Developer extension: adds git context, a verify/checkpoint Stop hook, and accepts file_path as an alias for the text editor's path argument.
  • Providers: a deeper retry budget for transient rate-limit (429) errors.
  • Auto Visualiser: accepts stringified data arguments, fixes map sizing, and drops the experimental note.

Upgrading

No action required beyond installing the new build for your platform from the table above. Settings, sessions, knowledge bases, and configured providers are preserved.

Changes Since v1.85.3

  • feat(mcp,acp): Agent Drafter built-in extension + ACP WebSocket transport, native aesthetics and standalone agents
  • feat(providers): add z.ai (GLM) and Xiaomi MiMo; future-proof DeepSeek aliases
  • feat(mcp/autovisualiser): harden the pipeline and add 24 new visualizations
  • feat(mcp/analyze): tree-sitter 0.26 — add C++, C, R, Julia, MATLAB
  • feat(cli/tui): wrapping input, bottom-pinned bar, live streaming, richer rendering
  • fix(cli,agent,developer,providers): graceful --resume, quantified action-limit stop, developer git context + file_path alias, deeper 429 retry budget

BioRouter v1.85.3

Choose a tag to compare

@Broccolito Broccolito released this 19 Jun 01:46

Biorouter v1.85.3 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/biorouter

This is a polish-and-fix release. Chat now defaults to autonomous tool-calling, the Llama Server context window is reported accurately across the CLI and GUI, and the interactive CLI gains clean streaming and copy/paste. It also fixes the perpetual "Biorouter CLI Update" prompt with a more resilient installer. No breaking changes — existing installs upgrade in place.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.85.3-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.85.3-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.85.3.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.85.3_amd64.deb sudo dpkg -i biorouter_1.85.3_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.85.3-1.x86_64.rpm sudo rpm -i BioRouter-1.85.3-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.85.3_amd64.deb sudo apt install ./biorouter-cli_1.85.3_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.85.3-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.85.3-1.x86_64.rpm

The two CLI-only packages install just the headless binaries (biorouter + biorouterd) with no Electron/GUI payload — ideal for servers, HPC nodes, and containers. (Local models need glibc ≥ 2.35 — Debian 12+/Ubuntu 22.04+.)

What's New

Autonomous-by-default chat

Chat now defaults to Autonomous tool-calling, and the smart/autonomous mode dropdown has been removed from the chat box and dashboard rows. The mode remains fully configurable under Settings → Chat. The Workflow and Diagnostics buttons are now grouped beside the model selector, and a terminal launcher sits next to the working-directory switcher — launching the CLI rooted in the chat's working directory (on macOS, via Terminal.app directly).

update-soul skill

The built-in soul-writer skill has been renamed to update-soul with a proper description, and the legacy directory is removed on startup so upgraded users no longer see a duplicate. The Skills UI frontmatter parser also now handles YAML block scalars (folded > / literal |) and quoted values, so multi-line descriptions render as text instead of a literal >- indicator.

What's Fixed

  • Llama Server context window: the reported context window is now correct and consistent across surfaces. Biorouter reads the running model's real window from llama-server's /props (probing the configured port even for a server this process didn't start), so the CLI gauge and GUI status agree. The fixed 32k default is replaced with a memory-tiered default (≥64 GB → 128k, ≥32 GB → 64k, ≥16 GB → 32k, else 16k, capped at 128k); LLAMACPP_CONTEXT_SIZE unset or 0 means auto, a positive value pins it.
  • CLI install: install_cli now overwrites the binary that is actually first on PATH instead of dropping a copy in a shadowed directory — fixing the perpetual "Biorouter CLI Update" prompt caused by a stale on-PATH copy winning the PATH race. The dependency setup modal re-probes after install and reports the exact stale path to remove. Installers are now non-interactive (rustup -y; winget --accept-*-agreements --disable-interactivity) so they don't hang, and llama-server and Rust were added to the native dependency checks.
  • CLI TUI streaming & copy/paste: per-token streaming deltas are coalesced into whole messages before rendering, so prose, tables, and lists no longer shatter into one fragment per line (and the context-window meter no longer races up). Markdown word-wrap is smarter (hard-wrapping over-wide non-URL tokens while keeping URLs intact, preserving inline ANSI styling across breaks, and shrinking wide tables to fit narrow terminals). Copy/paste now works in the TUI — the mouse is no longer captured, so native text selection is restored (scrolling stays on PageUp/PageDown).
  • Settings polish: tightened vertical spacing across settings sections and the grouped extension-loading toast, and status indicators now render as round dots.

Upgrading

No action required beyond installing the new build for your platform from the table above. Settings, sessions, knowledge bases, and configured providers are preserved. If you previously saw a recurring "Biorouter CLI Update" prompt in the desktop app, this release's installer fix resolves it by updating the binary that is actually first on your PATH.

Changes Since v1.85.2

  • feat(cli,ui): autonomous-by-default chat, CLI streaming/copy-paste fixes, update-soul skill, resilient CLI install
  • fix(llamacpp): report the model's real context window, with a memory-tiered default
  • style(ui): settings spacing + round status indicators

BioRouter v1.85.2

Choose a tag to compare

@Broccolito Broccolito released this 15 Jun 03:20

Biorouter v1.85.2 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/biorouter

This release introduces Llama Server — zero-setup local models bundled with the desktop app — alongside an interactive knowledge graph view, background shell jobs for the developer tools, and a markdown-rendering CLI. It also removes analytics/telemetry instrumentation entirely. No breaking changes — existing installs upgrade in place.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.85.2-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.85.2-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.85.2.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.85.2_amd64.deb sudo dpkg -i biorouter_1.85.2_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.85.2-1.x86_64.rpm sudo rpm -i BioRouter-1.85.2-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.85.2_amd64.deb sudo apt install ./biorouter-cli_1.85.2_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.85.2-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.85.2-1.x86_64.rpm

The two CLI-only packages install just the headless binaries (biorouter + biorouterd) with no Electron/GUI payload — ideal for servers, HPC nodes, and containers. (Local models need glibc ≥ 2.35 — Debian 12+/Ubuntu 22.04+.)

What's New

Llama Server — zero-setup local models

A new Llama Server provider runs models entirely on your machine with nothing to install. The desktop app bundles a llama.cpp llama-server binary and manages it as a sidecar: pick a model and Biorouter downloads it from Hugging Face on first use and serves it locally.

  • Curated catalog of Qwen3.5 and Gemma 4 models (4-bit, from verified GGUF repos); any other owner/repo:QUANT Hugging Face model also works.
  • Ranked first among providers — Local models now sort ahead of Institutional and Commercial everywhere (onboarding, the settings provider grid, and biorouter configure).
  • Sensible defaults — a 32k context window with model-native sizing, thinking enabled by default, and automatic cleanup of orphaned server processes.
  • Available on macOS (Metal), Windows (Vulkan with CPU fallback), and Linux (CPU; CUDA opt-in).

Interactive knowledge graph

Knowledge bases now render as an explorable force-directed graph in the desktop app — pan, zoom, and click nodes to preview pages and their [[cross-references]]. Conversations can be ingested directly into a base, and source-credibility classification (Crossref / OpenAlex) was hardened.

Background shell jobs

The developer tools can now run shell commands in the background (shell with background=true) and later wait on, read output from, or kill those jobs — so long-running builds, servers, and watchers no longer block the agent.

A markdown-rendering CLI

The interactive CLI now renders assistant replies as formatted markdown in the terminal — headings, lists, code blocks, and emphasis — instead of raw text. The Launch CLI (Terminal) button also moved into the desktop sidebar for quicker access.

Smarter, more capable agent

System prompts gained explicit agentic-behavior guidance and awareness of Biorouter's own components (skills, extensions, knowledge, and the "Soul" personality layer), so the agent makes better use of what's available in a session.

Telemetry removed

All analytics and telemetry instrumentation has been removed from the desktop app — no usage events are collected or sent.

What's Fixed

  • Extensions: uv-based extension installs are now hardened against broken or missing Rust toolchains, so a bad host environment no longer aborts the install.
  • Goals & loops: the goal Stop-hook judging is now truncation-aware and guarded against runaway loops, preventing goals and /loop from spinning indefinitely.
  • Version consistency: a new build-time guard asserts the CLI, daemon, and GUI all report the same version, so a release can never ship a GUI that disagrees with its bundled daemon.

BioRouter v1.85.0

Choose a tag to compare

@Broccolito Broccolito released this 11 Jun 00:20

Biorouter v1.85.0 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/biorouter

A major release that brings the command-line interface to full parity with the desktop app, ships the biorouter CLI with every download, adds a shared cross-surface system/setup layer (dependency checks, CLI install, self-update), and introduces a brand-new headless CLI-only Linux package (CLI + daemon, no GUI). It also lands lifecycle hooks, agent goals & recurring automations, and expanded knowledge ingestion (PowerPoint, spreadsheets). No breaking changes — existing installs upgrade in place.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.85.0-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.85.0-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.85.0.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.85.0_amd64.deb sudo dpkg -i biorouter_1.85.0_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.85.0-1.x86_64.rpm sudo rpm -i BioRouter-1.85.0-1.x86_64.rpm
Linux — CLI only Ubuntu / Debian (x64) biorouter-cli_1.85.0_amd64.deb sudo apt install ./biorouter-cli_1.85.0_amd64.deb
Linux — CLI only Fedora / RHEL (x64) biorouter-cli-1.85.0-1.x86_64.rpm sudo dnf install ./biorouter-cli-1.85.0-1.x86_64.rpm

Every desktop download now bundles the biorouter CLI alongside the app — see "Install the CLI" below. The two CLI-only packages install just the headless binaries (biorouter + biorouterd) to /usr/bin with no Electron/GUI payload — ideal for servers, HPC nodes, and containers.

What's New

The CLI is now a first-class, full-featured interface

The interactive terminal experience was rebuilt from the ground up as a full-screen TUI and brought to parity with the GUI:

  • Redesigned TUI — a Claude-Code-style layout: input pinned at the bottom, a top-anchored history that grows to fit, a blinking line cursor (with correct CJK width handling), distinctive tool-call badges, and a two-line status bar (model · provider / skills · extensions · knowledge bases · context window). Themed with Biorouter's warm tan accent.
  • Slash-command palette — typing / opens a floating autocomplete listing every available command, skill, extension, and knowledge base, navigable with the arrow keys — the same discoverability you get in the GUI.
  • Model setup & configuration — configure providers and models from the terminal, matching the desktop flow.
  • Knowledge basesbiorouter knowledge to ingest, query, lint, and hide/unhide bases; the session reflects which bases are active.
  • Install extensions, skills, and workflowsbiorouter extension install <file.brxt>, biorouter skill install <file.zip>, and biorouter workflow install <file.json>, plus scheduler setup — all from the CLI.

Install the CLI from the desktop app — and from the terminal

  • The desktop app now prompts you to install the biorouter CLI on startup if it isn't already on your PATH (just like installing a missing dependency), placing it in the first writable, on-PATH location (/usr/local/bin~/.local/bin, or %LOCALAPPDATA%\BioRouter\bin on Windows).
  • From a terminal, biorouter setup-path (alias install-cli) does the same.

biorouter doctor — a terminal setup & health check

A new biorouter doctor checks your prerequisites (git, uv, python, node, AWS CLI) with per-OS install commands, reports whether the CLI is on your PATH, and performs a self-update check against the latest GitHub release. The desktop dependency setup and the CLI now read the same prerequisite definitions from one place, so they never drift.

Lifecycle hooks

A configurable hooks engine fires at agent lifecycle points — SessionStart, UserPromptSubmit, PreToolUse, PostToolUse, Stop, and SessionEnd — so you can run custom commands for logging, policy enforcement, or automation. Configure them globally in ~/.config/biorouter/config.yaml or, opt-in, per project in .biorouter/hooks.yaml. Hooks work in both the GUI and the CLI. See docs/guides/hooks.md.

Agent goals & recurring automations

Agents can now track goals across a session and run recurring/scheduled automations, with smarter session naming.

Richer knowledge ingestion

The knowledge pipeline gained PowerPoint (.pptx) and spreadsheet (.csv / .xlsx) converters alongside a hardened PDF path, so more of your source material can be digested directly into a knowledge base.

Smarter auto-update

The desktop updater now downloads the correct installer for your OS and architecture (the real versioned .dmg / .zip / .deb / .rpm), keeps the proper file extension, and quits so you can install — instead of sending you to the website.

What's Fixed

  • Auto-update asset matching — the updater previously looked for stale, unversioned asset names and could fail to find a download; it now matches the actual published artifacts with a resilient fallback.
  • .brxt extension installs are gated on uv up front with an actionable message, instead of failing partway through.
  • Numerous provider/model refreshes, tool-inspection and scheduler refinements, and prompt updates.

Notes for headless / server users

The CLI-only .deb / .rpm packages install biorouter and biorouterd to /usr/bin and pull in libxcb (declared) and recommend git. After installing, run biorouter doctor to check optional tooling (uv for Python MCP extensions, node for npx-based servers). Each package is smoke-tested on a clean container during the release build, so it installs and runs out of the box.

Upgrading

No manual migration needed. Replace your existing installation with the package for your platform. To get the CLI on an existing desktop install, launch the app and accept the "Install Biorouter CLI" prompt, or run biorouter setup-path.

BioRouter v1.80.1

Choose a tag to compare

@Broccolito Broccolito released this 10 Jun 03:38

BioRouter v1.80.1 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/BioRouter

A patch release on top of v1.80.0 that makes the Knowledge feature fully usable from chat. You can now create, curate, visualize, and move knowledge bases entirely by talking to the agent — no need to switch to the Knowledge tab — and the graph view stays in sync with what the agent writes. No breaking changes.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.80.1-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.80.1-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.80.1.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.80.1_amd64.deb sudo dpkg -i biorouter_1.80.1_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.80.1-1.x86_64.rpm sudo rpm -i BioRouter-1.80.1-1.x86_64.rpm

What's Fixed

Knowledge bases curated from chat now visualize in the graph

When the agent authored knowledge pages from chat (via kb_write_page), the derived graph cache was never rebuilt, so the Knowledge tab showed 0 pages · 0 links even though the pages existed and cross-linked each other — and the Refresh graph button couldn't recover them because it only re-read the stale cache. kb_write_page now rebuilds the graph cache on every write (mirroring source ingestion), so pages and [[wiki-links]] the agent creates appear in the force-graph immediately.

The Knowledge tab reflects bases created from chat without a reload

The Knowledge view fetched its base list only once at app start, so a knowledge base the agent created in a chat wouldn't appear in the KB selector until a full app reload. The view now re-fetches the base list when it mounts and whenever the KB-selector palette opens, so chat-created bases show up right away.

Imported knowledge bases keep a consistent id

Importing a .brkb archive whose base id collided with an existing one assigned a deduplicated folder id (e.g. cardio-test-2) but left the archived manifest.yaml pointing at the original id — so the imported base displayed under the source's id and collided with it in the list. The importer now rewrites the manifest id to match the new folder/registry id.

What's New

First-class .brkb export / import from chat

Two new knowledge tools — kb_export and kb_import — let the agent write a knowledge base to a .brkb archive on disk and load one back in directly, instead of shelling out to zip the folder. Combined with the existing primitives, every Knowledge GUI operation (create, ingest, curate, lint, visualize, export, import) is now achievable purely by chatting with the agent.

Upgrading

No manual migration needed. Replace your existing installation with the new package for your platform.

  • macOS: open the new DMG and drag BioRouter.app to /Applications, overwriting the existing copy
  • Linux: sudo dpkg -i biorouter_1.80.1_amd64.deb or sudo rpm -U BioRouter-1.80.1-1.x86_64.rpm
  • Windows: unzip and replace the existing installation folder

Existing knowledge bases are unaffected. A base created or curated before this release will populate its graph the next time the agent writes to it, or immediately via the Refresh graph button now that the cache is kept in sync.

Changes Since v1.80.0

  • fix(knowledge): kb_write_page rebuilds the derived graph cache so chat-curated pages/links visualize
  • fix(ui): Knowledge view + KB-selector palette re-fetch the base list (chat-created bases appear without reload)
  • fix(knowledge): brkb::import rewrites the imported manifest id to the deduplicated folder id on collision
  • feat(knowledge): kb_export / kb_import MCP tools for .brkb archives

UCSF BioRouter is developed by the Baranzini Lab at the University of California, San Francisco.

BioRouter v1.80.0

Choose a tag to compare

@Broccolito Broccolito released this 04 Jun 18:26

BioRouter v1.80.0 Release Notes

Release Date: June 2026
Repository: github.com/BaranziniLab/BioRouter

A major feature release. The headline is Knowledge — personal, LLM-maintained knowledge bases backed by markdown trees and full git history. Drop a PDF, a URL, a DOCX, or pasted notes into a base and an agent reads it, classifies its credibility (peer-reviewed vs. preprint vs. web), writes structured pages with [[cross-links]], and commits the change. You get a force-directed graph of how sources connect, a change log you can roll any page back through, and the ability to bring a base into chat as grounded context. Everything is local on disk and self-contained — no new external binaries, no network services beyond the credibility lookups.

Downloads

Platform File Install
macOS (Apple Silicon) BioRouter-1.80.0-arm64.dmg Open the DMG and drag BioRouter.app to /Applications
macOS (Intel) BioRouter-1.80.0-x64.dmg Open the DMG and drag BioRouter.app to /Applications
Windows (x64) BioRouter-win32-x64-1.80.0.zip Unzip and run BioRouter.exe
Linux Ubuntu / Pop!_OS (x64) biorouter_1.80.0_amd64.deb sudo dpkg -i biorouter_1.80.0_amd64.deb
Linux Fedora / RHEL (x64) BioRouter-1.80.0-1.x86_64.rpm sudo rpm -i BioRouter-1.80.0-1.x86_64.rpm

What's New

Knowledge — personal, agent-maintained knowledge bases

A new top-level Knowledge section in the sidebar (between Skills and Settings). A knowledge base is a folder of markdown pages plus a hidden git repo, living at ~/.config/biorouter/knowledge/<kb-id>/. You never have to hand-edit it — an agent does the writing — but because it's plain markdown under git, you can read, diff, and restore everything yourself.

Ingest anything. The ingest panel accepts files (drag-and-drop or picker), pasted text (with URLs auto-extracted into chips), and folders. Supported source conversions:

  • PDF → markdown via pdf-extract, with an LLM-assisted fallback for hard layouts
  • HTML → markdown with title extraction and lossy-UTF-8-safe decoding
  • DOCX → markdown with Heading 1/2/3 mapping
  • CSV → markdown tables
  • URLs → fetched with content-type detection, then converted by the matching path
  • Plain text / notes → stored as-is, with any embedded URLs pulled out as separate sources

Credibility classification. Every source is graded through a ladder: identifier extraction (DOI / arXiv / PMID / ISBN) → Crossref → OpenAlex → host-pattern matching → a peer-reviewed publisher allow-list → an agentic fallback that reasons about the source when the deterministic steps are inconclusive. Retracted works are detected (Crossref) and flagged. You can always reclassify or manually override a source's credibility.

Agent-driven digestion. Ingest, query, and lint run as macros on top of a bounded sub-agent loop with explicit step and time budgets and a cancel button. The agent reads sources, searches the base (BM25 over pages and raw sources), writes pages with frontmatter, appends to the change log, and emits [[knowledge-link]] markers — all committed as a single atomic git transaction so a macro either lands completely or not at all.

Graph view. A force-directed graph (react-force-graph-2d + d3-force) renders the base: nodes are pages and sources colored by credibility, edges are the [[…]] cross-references the agent emits (Obsidian-style [[target|alias]] links are supported). Click a node for an inline preview of its page body; retracted sources get a distinct badge. Hovering dims unrelated nodes so you can trace a neighborhood.

Change log + time travel. A change-log drawer lists every commit with filter chips, a preview of what changed, and a one-click restore that reverts a page (or the whole base) to any prior state — backed directly by git, not a bespoke undo stack.

Use it in chat. A KB chip in the chat bottom menu binds the active base to the conversation, and a /knowledge slash command inserts a templated prompt scoped to that base. The active-KB selection is persisted across MCP-server processes and synced across sessions via GET/POST /knowledge/active, and is scoped per chat session so different windows can focus different bases.

Portable. Export a base to a single .brkb archive and import it elsewhere. Import is hardened against ZIP-slip path traversal (see What's Fixed).

The feature is exposed two ways: as a built-in knowledge MCP extension (so the agent can operate on bases through tools) and as HTTP routes under /knowledge/* on biorouterd (with SSE-streamed macro progress) that back the desktop UI.

Self-contained build — no new binaries

The Knowledge feature ships entirely inside the existing biorouter and biorouterd binaries. The biorouter-mcp crate that houses it is a library, compiled in — not a separate executable. Git operations use a statically vendored libgit2 (git2 with vendored-libgit2), so no system git is required at runtime. The packaged app therefore gains the full Knowledge capability without adding a single new bundled binary or external dependency.

What's Fixed

ZIP-slip hardening in .brkb import

.brkb import now validates every archive entry's destination path before writing, preventing a crafted archive from escaping the target directory and writing arbitrary files elsewhere on disk (a CVE-class arbitrary-file-write).

Amazon Bedrock tool-call pairing

Two fixes to how the Knowledge sub-agent's tool calls round-trip through the provider layer for Bedrock:

  • tool_use_id is now preserved through the Completer → Provider message conversion, so tool results pair with their originating tool call.
  • Multiple tool results produced in a single turn are bundled into one user message, matching Bedrock's expected request shape.

Legacy base migration + stale graph cache

Entering a macro now migrates a legacy schema.md to the current template and refreshes a stale graph cache, so older bases pick up the current behavior (including the [[link]]-emission rules that make graph edges appear) without a manual rebuild.

Knowledge ingest robustness

  • Path/folder ingestion moved fully into the backend, with correct backend URL resolution.
  • HTML conversion decodes lossily so non-UTF-8 pages no longer abort ingestion; digest-stream errors are surfaced instead of silently dropping the stream.
  • read_page is allowed on raw/* paths (writes remain restricted) so the graph node preview can show original source text.
  • Renaming a base updates its folder ids so links and the graph stay consistent.

Desktop UI polish

  • IngestModelPicker is a real dropdown of your configured models and stays aligned with provider settings.
  • The Digest button renders correctly (no black-on-black) and fits the "Digesting…" label.
  • SSE auth uses window.electron.getSecretKey() directly, fixing intermittent HTTP 401s on the ingest stream.
  • A pre-flight model check and a Stop button were added to the digestion progress view.
  • KBSelectorPalette guards empty slugs and surfaces createBase errors; the ChangeLogDrawer close button now actually closes; PasteTextBox uses contrast-safe color tokens.

Upgrading

No manual migration needed. Replace your existing installation with the new package for your platform.

  • macOS: open the new DMG and drag BioRouter.app to /Applications, overwriting the existing copy
  • Linux: sudo dpkg -i biorouter_1.80.0_amd64.deb or sudo rpm -U BioRouter-1.80.0-1.x86_64.rpm
  • Windows: unzip and replace the existing installation folder

Existing sessions and configuration are unaffected. The first time you open the Knowledge section, no bases exist yet — create one from the KB selector palette (⌘K-style) and ingest your first source. Legacy bases created during prerelease testing are migrated automatically on first macro use.

Changes Since v1.76.1

The bulk of this release is the Knowledge feature, developed across six plans plus a hardening pass. Highlights:

Backend foundation

  • feat(knowledge): per-KB markdown store + git wrapper (commit/log, begin/commit-squash/abort txns, preview & restore)
  • feat(knowledge): page CRUD with frontmatter split + safe path resolution; raw source storage with sha256 + slug ids
  • feat(knowledge): conversion for HTML / PDF / DOCX / CSV / URL fetch / pasted-text URL extraction
  • feat(knowledge): credibility ladder — DOI/arXiv/PMID/ISBN → Crossref → OpenAlex → host pattern → publisher allow-list → agentic fallback; retraction detection
  • feat(knowledge): node/edge graph derivation from [[links]] with cache; rebuild after create + add_raw_source

Macros + sub-agent loop

  • feat(knowledge): bounded SubAgent loop with tool dispatch, step/time bounds, and cancel
  • feat(knowledge): kb_ingest_source / kb_query / kb_lint macros (txn-atomic commit)
  • feat(knowledge): BM25 search, per-KB tokio Mutex for concurrent-write safety, active-KB state

HTTP routes + portability

  • feat(server): /knowledge router — bases, page CRUD, raw (file/url/text), history/preview/restore, graph, reclassify/override
  • feat(server): SSE-streamed ingest/query/lint macro routes + GET/POST /knowledge/active
  • feat(knowledge): .brkb zip export/import + ProviderCompleter adapter; OpenAPI + regenerated TS client
  • fix(knowledge): prevent ZIP slip in brkb::import (CVE-class arbitrary file write)

Desktop UI

  • feat(ui): Knowledge sidebar route, KnowledgeContext, ⌘K KBSelector palette, ingest panel (dropzone / paste / staged list)
  • feat(ui): useIngestStream SSE hook + DispatchProgress with pre-flight model check and Stop button
  • feat(ui): ForceGraph canvas (credibility colors, hover dimming, retracted badge), NodePreview, ChangeLogDrawer with restore
  • `feat(ui): chat-sid...
Read more