Releases: Advance-Labs/ninebrains
Release list
Ninebrains 0.2.0
Ninebrains 0.2.0. Unsigned build. macOS will say the app is from an unidentified developer and Windows SmartScreen will warn. The steps to open it are under How to install below. Full docs: docs.advancelabs.dev/ninebrains.
Install or update in one line
The installer picks the file for your OS and CPU (the .zip on macOS, the AppImage into
~/.local/bin on Linux x86_64, the x64 installer for the current user on Windows, including
Windows on Arm), downloads it from the latest release on this repository, checks it against that
release's SHA256SUMS, and installs it. With the GitHub CLI signed in it also runs
gh attestation verify and installs nothing if that fails. Run it again to update. It installs the
latest stable release, not canary builds.
# macOS and Linux
curl --proto '=https' --tlsv1.2 -fsSL https://ninebrains.runs-on.dev/install | sh# Windows (PowerShell)
irm https://ninebrains.runs-on.dev/install.ps1 | iexPrefer to do it by hand? Follow the steps below.
How to install
1. Check the download. Compare your file against the SHA256SUMS block at the bottom of this
page before you open it. Only bypass the warnings below for a file whose hash matches and that you
downloaded from this page. More detail, including every step below:
Verify and open a download.
2. Open it on your platform.
macOS
Download the .dmg for your Mac: mac-arm64 for Apple silicon (M1 and later), mac-x64 for
Intel. Open it and drag Ninebrains into Applications. The first launch says the app "can't
be opened because Apple cannot check it for malicious software". Pick one of these:
- macOS 15 (Sequoia) and later: try to open the app once, then go to System Settings →
Privacy & Security, scroll to "Ninebrains" was blocked, click Open Anyway and confirm
with your password. - macOS 14 and earlier: in Finder, right-click (or Control-click)
Ninebrains.app→ Open
→ Open. You only need to do this once. - Terminal, any version: remove the quarantine flag from the installed app.
xattr -dr com.apple.quarantine "/Applications/Ninebrains.app"
On first launch macOS may also ask whether Ninebrains can use "Ninebrains Safe Storage" in your
keychain. Click Always Allow. The app cannot start until you answer, and no window appears
while that prompt is open. Unsigned builds have no stable identity, so macOS asks again after each
new version.
Windows
Run Ninebrains-0.2.0-win-x64.exe. When you see "Windows protected your PC", click More info →
Run anyway. Some managed or work machines hide Run anyway; on those you need an
administrator.
Linux
No warning to get past. Use either package:
chmod +x Ninebrains-0.2.0-linux-x86_64.AppImage && ./Ninebrains-0.2.0-linux-x86_64.AppImage
# or
sudo apt install ./Ninebrains-0.2.0-linux-amd64.debStuck? See Troubleshooting.
Updating
Ninebrains does not update itself: an unsigned app should not replace its own code from the
network. To update, run the one-line installer above again, or download the new files from this
page and install them over the old version. Your projects and settings are kept.
- Installed the
.deb? Update with
curl --proto '=https' --tlsv1.2 -fsSL https://ninebrains.runs-on.dev/install | sh -s -- --deb
(it runssudo apt install). The plain line installs the AppImage instead. - App running? macOS asks you to quit it; Windows stops unless you pass
-Force; the Linux
AppImage is swapped in place, so restart it. - Windows installs for the current user only. An all-users install makes the script stop with
a message unless you pass-Force. - Options (
--require-attestation,--no-attestation,--dry-run): add them after
sh -s --in the curl line. On Windows,irm … | iextakes no options; use
& ([scriptblock]::Create((irm https://ninebrains.runs-on.dev/install.ps1))) -RequireAttestation.
From 0.2.0 on, Settings → General → Check for new versions (off by default) tells you when a
new release is out, and shows the download link and the installer line to copy. Nothing is
downloaded or installed for you. 0.1.0 has no such notice.
Documentation
- Getting started: install, add a project, start agents in lanes, hand the Brain its first brief
- First run: the import step, the hooks added to Claude Code and Codex, connecting GitHub
- Verify and open a download: checksums, then getting past Gatekeeper and SmartScreen
- Troubleshooting: fixes for common problems, including unsigned-build and Keychain prompts
- Security overview: how Ninebrains contains agents that run commands on your machine
- Install from source: build it yourself instead
- All docs
Changes
When Claude Code or Codex runs out of usage mid-task, the conversation now offers to carry on in
Freebuff, free, in the same worktree, with a handoff note on your clipboard. Installing and
updating is one line:
- macOS and Linux:
curl --proto '=https' --tlsv1.2 -fsSL https://ninebrains.runs-on.dev/install | sh - Windows:
irm https://ninebrains.runs-on.dev/install.ps1 | iex
The installer checks the download against this release's SHA256SUMS and, when gh is signed in,
verifies its build provenance before installing. Run the same line again to update.
The app can also tell you when a new release is out: turn on Settings, General, "Check for new
versions". It is off by default because Ninebrains makes no network request you did not ask for.
0.1.0 has no such check, so this is the last release you need to find by hand. Builds are still
unsigned; see "Read this before you install" under 0.1.0.
Features
- updates: tell users when a new Ninebrains release is out (#44) (a889e54)
- site: single-screen landing page with install tabs and live feature demos (#42) (aea4b41)
- site: one-line installer that also updates (#43) (fc9cfd3)
- conversations: offer Freebuff when an agent hits its usage limit (#41) (7f6be7e)
- ui: show agent status with thinking-orbs (#40) (dcf3d45)
- editor: preview PDFs with Chromium's built-in viewer (#38) (2406c27)
- tasks: name the first conversation after its task (#31) (8649c66)
- site: offer the v0.1.0 download now that it exists (#27) (a094f61)
Fixes
- projects: hide PR row metadata behind the hover action (#45) (6ff417b)
- tasks: keep the prompt drop highlight on the composer (#39) (2d88ca9)
- desktop: build brain-mcp before the app's tests and build (#32) (fa4b62f)
- brand: default branches to ninebrains/ and put install steps in release notes (#29) (f2a1391)
- ui: make switches legible under the monochrome accent (#28) (5ceebae)
Built from c147ee88e79611e6bf367b055604292e2becc634 by workflow run 35574775948.
SHA256SUMS
Check your download against these before you open it (shasum -a 256 -c SHA256SUMS on macOS, sha256sum -c SHA256SUMS on Linux, Get-FileHash on Windows):
30c873a0b473bceabf1c4cec328af211cd449658c10db3cd256a5081a5bd72f0 Ninebrains-0.2.0-linux-amd64.deb
93e4d55ca97fb00bc25bb0ca2cbbc2636a0cab589ad8ff5d16dd4da2dafaa798 Ninebrains-0.2.0-linux-x86_64.AppImage
aaa072e02e50e6f7b34681ddc7be93da173ace3302c70c6410d736c12b41e312 Ninebrains-0.2.0-mac-arm64.dmg
591ae77550b324f0a2629a4881b8e3592a471162859e2e4b1332da3588f89e32 Ninebrains-0.2.0-mac-arm64.zip
bc75145859a82cb5ba2fafaac57371223dc2fcb07232ecb42db4b1cc8ec443a2 Ninebrains-0.2.0-mac-x64.dmg
6dd7333471862aad0f4bba0b6525c248022f58c485cef0049ac42bf926a5e10d Ninebrains-0.2.0-mac-x64.zip
8299f18ba26999c94f42186fac8d66614a2206a9b3315484d80e25733b8b7aa6 Ninebrains-0.2.0-win-x64.exe
Ninebrains 0.1.0
Ninebrains 0.1.0. Unsigned build. macOS will say the app is from an unidentified developer and Windows SmartScreen will warn. The steps to open it are under How to install below. Full docs: docs.advancelabs.dev/ninebrains.
Changes
The first public build of Ninebrains. It runs Claude Code and OpenAI Codex agents in parallel, each
in its own git worktree, with a central Brain handing out the work and gates that prove it before
it counts as done.
Ninebrains is a fork of Emdash by General Action, so
everything Emdash does — worktrees, terminals, the Monaco editor, diffs, pull requests, issue
integrations, MCP servers, skills and automations — is in here too. What follows is what the fork
adds on top.
Read this before you install
These builds are not code-signed. macOS will refuse to open the app on first launch, and
Windows SmartScreen will warn about the installer. That is the expected behaviour for an unsigned
app, not a sign that something is wrong with your download. The steps to get past both are below.
Check your download against SHA256SUMS on this release page before you open it. A matching hash
proves you have the exact bytes CI built. It does not prove who built them, which is what signing
would add, so it is worth doing and worth knowing the limit of.
There is no auto-update in this build, by design. An update is remote code execution, and
without a signature there is nothing for your machine to check it against. Updating means
downloading the next release yourself.
How to install
1. Check the download. Compare your file against the SHA256SUMS block at the bottom of this
page before you open it. Only bypass the warnings below for a file whose hash matches and that you
downloaded from this page. More detail, including every step below: Verify and open a download.
2. Open it on your platform.
macOS
Download the .dmg for your Mac: mac-arm64 for Apple silicon (M1 and later), mac-x64 for
Intel. Open it and drag Ninebrains into Applications. The first launch says the app "can't
be opened because Apple cannot check it for malicious software". Pick one of these:
- macOS 15 (Sequoia) and later: try to open the app once, then go to System Settings →
Privacy & Security, scroll to "Ninebrains" was blocked, click Open Anyway and confirm
with your password. - macOS 14 and earlier: in Finder, right-click (or Control-click)
Ninebrains.app→ Open
→ Open. You only need to do this once. - Terminal, any version: remove the quarantine flag from the installed app.
xattr -dr com.apple.quarantine /Applications/Ninebrains.app
On first launch macOS may also ask whether Ninebrains can use "Ninebrains Safe Storage" in your
keychain. Click Always Allow. The app cannot start until you answer, and no window appears
while that prompt is open. Unsigned builds have no stable identity, so macOS asks again after each
new version.
Windows
Run Ninebrains-0.1.0-win-x64.exe. When you see "Windows protected your PC", click More info →
Run anyway. Some managed or work machines hide Run anyway; on those you need an
administrator.
Linux
No warning to get past. Use either package:
chmod +x Ninebrains-0.1.0-linux-x86_64.AppImage && ./Ninebrains-0.1.0-linux-x86_64.AppImage
# or
sudo apt install ./Ninebrains-0.1.0-linux-amd64.debStuck? See Troubleshooting.
Documentation
- Getting started: install, add a project, start agents in lanes, hand the Brain its first brief
- First run: the import step, the hooks added to Claude Code and Codex, connecting GitHub
- Verify and open a download: checksums, then getting past Gatekeeper and SmartScreen
- Troubleshooting: fixes for common problems, including unsigned-build and Keychain prompts
- Security overview: how Ninebrains contains agents that run commands on your machine
- Install from source: build it yourself instead
- All docs
What is in this build
- Lanes. 2×2 lanes per tab and unlimited tabs. Each lane gets its own git worktree on a
lanes/<id>branch, plus its own terminal, editor and browser, so two agents cannot touch the
same file. Status lights come from the agents' own hooks. Lanes can sleep (hidden, still running)
or maximize. - The Brain. A drawer in the Lanes view that runs a Claude Code session as a coordinator. Give
it a brief; it turns that into a graph of jobs with dependencies and hands each ready job to
whichever lane is idle. - Verification gates. When a lane says it is done, a second independent run has to agree:
tests, a screenshot check at three widths, a read-only reviewer, and citation checks. A failed
gate sends the feedback back to the lane and retries, up to three attempts, then stops and tells
you. No agent grades its own work. - Rigor settings. Two 0-10 sliders in Settings → Gates decide which gates a job gets, with a
per-project override. - Planner. A canvas where jobs are nodes and dependencies are edges. Run plan compiles it
into Brain jobs, idempotently, and refuses cycles. - Packs. Per-project bundles of lane roles, skills, MCP servers and gates for coding, SEO and
research. Every pack is off until you turn it on. - Lane roles and modes. Start a lane from a pack role, and switch a lane between attended and
unattended from its header. - Unattended runs.
claude -pruns, and experimentalcodex execruns, each with a budget, a
sandbox, a minimal environment, and a STOP switch that ends every run in under five seconds. - Model profiles. Off by default. Turn on
ninebrains.routing.profilesEnabledin
Settings → Models to pin a model per lane against your own API key. Your key stays write-only and
lives in the lane's environment, never in the app's database. - Nothing phones home. No telemetry, no endpoint compiled in, no hosted account, no update
feed. The app talks to your agents' CLIs and to whatever you point it at.
What is not in it yet
A per-lane account picker and usage meter, per-lane port leases, an overnight queue with a morning
digest, a video pack, signed builds and auto-update. codex exec support is experimental; Claude
Code is the better-tested path today.
Fork groundwork
This release also cuts every tie to the upstream project's infrastructure, which matters because
the two apps can otherwise share state on one machine:
- Its own app id, user-data directory, database and worktree root, so Ninebrains and Emdash never
share a database, a worktree or a remote server. - No calls to Emdash-hosted infrastructure, and no update feed pointing at it.
- Its own brand throughout: a black-and-white identity, the nine-square mark, and a landing page at
ninebrains.runs-on.dev.
Full documentation is at docs.advancelabs.dev/ninebrains.
Built from e94ec89bb6fd6ba3cba8527cec7f3bf9afe856ea by workflow run 35555471292.
SHA256SUMS
Check your download against these before you open it (shasum -a 256 -c SHA256SUMS on macOS, sha256sum -c SHA256SUMS on Linux, Get-FileHash on Windows):
3406d563c96a8775bf314deeb2aa214d1b340bf06a001f23566b472307d2729f Ninebrains-0.1.0-linux-amd64.deb
d4220b3cf4da6879109092bb6b2de42700cd7acdb19cda5131d953a2369f2b59 Ninebrains-0.1.0-linux-x86_64.AppImage
3977d31e901d64678b976923e1799ae09232fc10d2bef82b248408a0036ba5be Ninebrains-0.1.0-mac-arm64.dmg
3432a93d48f0c9b43ba68ce7e84d5c2e468a1344baf911728ba710b567837e9e Ninebrains-0.1.0-mac-arm64.zip
ba92ce68a6c2f4322640e78c60ea8e0a6d84b03e7e5bc958a4f4e6194e19d2d2 Ninebrains-0.1.0-mac-x64.dmg
8160cad393d03207ed177d8c191e783d219d91c763e4e518f733670f4d4bc056 Ninebrains-0.1.0-mac-x64.zip
ab8c8ad4fd29e16022b2f6b1b477aa863efd73f360c5ec49b5a680340b9234e6 Ninebrains-0.1.0-win-x64.exe