Changelog

Every Neumann release, newest first. The desktop app updates itself — this is what each one changed.

0.1.49Latest

Neumann 0.1.49

Neumann is now a native app: faster, lighter, and it updates itself. Neumann Server runs on its own and survives app restarts; Linux servers install with one command.

Neumann 0.1.47

Neumann Native (beta): a native macOS client, as a separate download. Sidebar and multiplexer fixes; the window loads through loopback.

Neumann 0.1.46

Fixes the blank window after updating to 0.1.45: the app window now loads through 127.0.0.1 instead of 0.0.0.0, which macOS WebKit refuses. Includes everything in 0.1.45.

Neumann 0.1.45

Neumann now has a scriptable workspace: Lua actions and scripts (neumann do), an init.lua keymap, and a Claude Code skill plus a session-start hook. The canvas sidebar replaces the tab bar and shows each project's tabs and panes. Chat, editor and review panes live in the multiplexer, which gets ten palette themes. Agents resume in restored panes, and terminal rendering, paste and resize are fixed.

Neumann 0.1.44

Steer running agents, approve risky tool calls, and runs that survive restarts.

  • Steer a running agent: send a message to a turn that's already running without stopping it (neumann steer). Claude Code and your own API key runs take it mid-turn; Codex runs it next.
  • Approve risky MCP tools: tools a server marks destructive now wait for you to approve or deny them, in every permission mode, and are denied if nobody answers within 5 minutes.
  • Runs survive restarts: a turn that was running when Neumann crashed, restarted or rebooted picks back up on launch, and the prompts queued behind it still run.
  • Rate limits pause instead of fail: a run that hits a provider rate limit waits and resumes on its own.
  • Hand work to another agent: a thread can give a sub-task to an agent on another provider and model (for example Claude Code to Codex) and gets the result back when it finishes.
  • New home canvas: all your projects on one canvas, with chats as tiles and a project sidebar for chats and files.
  • Dock icon and notifications: the Dock icon shows what your agents are doing, and you get a system notification when a run finishes or needs you.
  • Better parallel agents: parallel agents run in their own git worktrees by default, and each thread shows whether it's working, needs you, idle or blocked.
  • Account security: two-factor sign-in, passkeys, usernames and device sign-in.

A new editor, and a composer that remembers

A new editor, composer additions, and a correctly versioned bundle.

Editor

  • The editor now runs on Monaco, bringing faster large-file handling and more accurate syntax highlighting.
  • Terminal effects and mouse reporting are handled server-side, so the terminal stays responsive under heavy output.
  • Diff review picks up refinements to how changes are laid out and navigated.

Composer

  • Prompt stash keeps prompts you reuse a click away instead of retyping them.
  • Traits let you attach standing instructions to a thread from the composer.
  • Appearance settings now list the fonts actually installed on your machine rather than a fixed set.

Interface

  • Buttons respond to your press, swapped icons cross-fade instead of spinning, and headings no longer strand a single word on their own line.
  • Links clear their descenders, and screenshots carry a hairline edge that survives on any background.

Under the hood

  • The bundle now carries a valid build version. Every previous release set it to the marketing version, which begins with a zero — a form Apple rejects, so tooling reported the build version as missing or invalid.

Editor, agent, and cloud reliability

Reliability and polish across the editor, agents, and cloud runs.

Editor

  • Vim search matches are recalculated when the buffer changes, so stale highlights no longer point at moved text.
  • Direct normal-mode commands are guarded against empty lines in large-file mode.
  • The gutter scroll wheel uses the scrollable element directly instead of reading computed styles on every event.
  • Folding recalculates only for the file you are looking at, not every open buffer.

Agents and runs

  • A failed turn records a single error instead of one per signal when the CLI also exits non-zero.
  • Attachment uploads retry on HTTP errors and tell you when only some files made it.
  • The workspace diff no longer races when you switch workspaces mid-request.
  • Search clears its spinner when you empty the query while a request is still in flight.
  • Creating a workspace retries when git reports the branch already exists.

Cloud

  • Run submissions check idempotency before quota, so a retried request cannot be rejected for capacity it already holds.
  • Git command output streams through a capped reader, bounding memory on large repositories.

Security

  • OAuth client changes are restricted to admins.

Profile stats and a Skills catalog

Settings after the rework: grouped sections, one row per setting.

Settings had grown to twenty sections, each with its own layout. This release cuts that to thirteen and gives every one of them the same shape: a plain row per setting, label and description on the left, control on the right.

What moved

  • Theme, fonts, and layout are one Appearance section instead of three.
  • Profile gains real numbers — threads, runs, and time worked, read from your own conversation history rather than an estimate.
  • A Skills catalogue lists the skills discovered on your machine, renders each one's definition, and lets you turn a skill off without deleting it.

Nothing was removed. The settings that lived in the seven folded-away sections are all still there, just grouped with the ones they belong to.

The real fix for stale UI after an update

Updating no longer leaves you looking at the previous build's interface. The desktop pins a fixed local port, and WebKit was caching that origin's HTML and script chunks across versions, so a fresh bundle still rendered the old UI. The shell now clears the WebView network cache once per version change before the window opens.

Deliver the port-eviction fix

Ships the port-eviction fix from 0.1.38, which itself reached installs as a stale bundle.