buildwithnexusv0.15.1
Menu

What's new in 0.15

Released 2026-10-01. Upgrade with npm install -g buildwithnexus@latest. Some defaults changed. The upgrade notes in docs/UPGRADING-0.15.md list each change and the setting that brings back the old behavior. Where no setting exists, the old behavior was a defect or lost data.

First launch never offers to install packages, bwn's own connections use your proxy and the operating system's certificate store, and auto-update stays within your minor version. A repository's hooks, commands, skills and allow rules take effect only after you trust them, and the terminal UI asks before it uses the repository's AGENTS.md. An approval for rm and similar commands covers only that exact command, deny rules match commands inside wrappers, and provider keys stay out of the agent's commands. Setup finishes only after the chosen model answers. Every mode shares one conversation. A headless run's exit code tells you how it ended. The release also adds helpers that run in parallel, extra working folders, sign-in for MCP servers that use OAuth, editor support over the Agent Client Protocol, a GitHub Action, Claude Code's hook decisions and events, and pictures, PDFs and screenshots the model can read.

Permissions and approvals

{
  "permissions": {
    "allow": ["run_command(cargo test*)"],
    "ask":   ["write_file(migrations/**)"],
    "deny":  ["run_command(git push*)"]
  },
  "network": { "deny": ["*.internal.example"] }
}

Hooks and trust

Keys and setup

Local models

Helpers and folders

Pictures, PDFs and screenshots

MCP servers that ask you to sign in

/mcp and bwn mcp list show an http MCP server that requires OAuth as needs login. bwn mcp login <name> or /mcp login <name> signs in through the browser. It saves the token in ~/.buildwithnexus/mcp-auth/ for that server only. The token refreshes on its own. bwn mcp logout <name> deletes the saved token and asks the authorization server to revoke it when that server offers revocation. Headless runs never open a browser.

Editors

buildwithnexus acp runs an Agent Client Protocol server on stdio, so Zed, JetBrains IDEs and Neovim plugins can control bwn. The editor shows streamed replies and plans, and it shows tool calls with diffs. Approvals come up as questions in the editor. Add this to Zed's settings.json:

{
  "agent_servers": {
    "buildwithnexus": {
      "type": "custom",
      "command": "bwn",
      "args": ["acp"],
      "env": {}
    }
  }
}

Conversations and sessions

Headless and CI

Piped stdin becomes the task when you give none. When you also pass a task, bwn adds stdin after it as context, for example git diff | bwn run "review this". Custom commands and skills run headless and take $ARGUMENTS. The new --base-url flag points a run at a gateway, and the new --worktree <name> flag runs the session on its own branch. buildwithnexus review and buildwithnexus update are new commands. A mistyped /command exits 2 instead of reaching the model. When a custom command or skill differs from it by at most two letters, the message names that one. Failure messages name flags and variables rather than slash commands. An http hook fills in $NAME in its headers from the variables it lists in allowed_env_vars. The exit code tells you how a run ended:

Exit codeMeaning
0Finished
1Failed, or the turn ended right after a call that could not run
2Usage error, including an unknown option, no task, a spend cap on a remote model with no price, or a repository command that is not trusted
3bwn blocked changes for lack of approval, or a hook, a deny rule or read-only mode refused them. A check_work round that nobody could approve does not count.
4A UserPromptSubmit hook blocked the task
5--max-budget-usd stopped the run
6The turn ran out of steps
7The project's checks, run by check_work, still fail
8The verifier still blocks after its fix rounds
9buildwithnexus review found a blocking issue
130, 143SIGINT or SIGTERM interrupted the run, and bwn saved the session

With --json, the last event names the outcome, the session id, tokens, estimated cost and every refused call. --legacy-exit-codes turns the codes for runs that stopped short back into 0.

The repository is also a GitHub Action. It runs bwn run or bwn review, turns the exit code into the step's result with annotations, and can comment on the pull request:

- uses: Garretts-Apps/buildwithnexus@v0.15.1
  with:
    command: review
    review-base: origin/${{ github.base_ref }}
    provider: anthropic
    max-budget-usd: "1"
  env:
    ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}

Terminal

Auto-update

"auto_update": "install" installs only patch releases within your minor version. bwn announces a new minor or major version and tells you to run buildwithnexus update. "install-any" installs any newer release, as "install" did in 0.14.10. The npm launcher keeps the binary in ~/.buildwithnexus/bin/<version>/, outside the npm package. The Windows exe links the C runtime statically, so it runs without the Visual C++ Redistributable.

Next: Changelog →