Skip to content

nodecode 0.1.8

Choose a tag to compare

@github-actions github-actions released this 03 Nov 17:28
c27e633

nodecode 0.1.8, build c27e633: nodecode --version prints 0.1.8+c27e63333.

Install:

curl -fsSL https://nodecode.ai/install.sh | sh
irm https://nodecode.ai/install.ps1 | iex    # Windows PowerShell

A running nodecode updates itself.

Highlights

  • Ask at the page. A turn can ask you a question in the web page or the desktop app and wait for your pick. (#185)
  • A fuller web page. A Board of tasks (To do, Running, Needs you, Done), Ctrl+K command palette, Ctrl+P quick open, and Settings > Shortcuts to rebind any key. The Files view edits and saves files in syntax colours, and the message box records voice. (#184)
  • Steer or stop helpers from a session's page, one at a time or all at once. A helper you steer answers with what you asked. (#194)
  • MCP sign-in. Remote MCP servers sign in with OAuth. A server waiting on a browser sign-in, such as npx mcp-remote URL, now fails in seconds and shows the sign-in link instead of hanging for minutes. (#202)
  • Make a cell by talking: /cells new, or New cell in the Cells tab. (#158)
  • Guided setup: nodecode gateway setup walks you through a setup sheet step by step. Discord sets up from the bot token alone. (#150)
  • Start on a model with a prompt: nodecode --model M -- PROMPT. --prompt-file FILE, @FILE and piped stdin give it the prompt too. (#151, #155)
  • Cron wakes a session on its own when something outside changes, such as a red CI run.

Fixes

  • Anthropic: a session no longer fails every turn with 400 unexpected tool_use_id after a cancel or restart. (#140, #187)
  • Stalled streams: a stream that stops sending content is cut after three idle timeouts, and an attempt that never sends any after fifteen. It retries or moves to the backup model. (#117, #138)
  • A model stuck in a loop is cut and run again, never taken as its answer. (#118)
  • A full /tmp no longer fails every turn, and a failed write names its file. (#196)
  • An image over 2000 px a side or 5 MiB is shrunk to fit before it is sent. (#119)
  • Terminal: behind tmux or screen the pane keeps its title, the cursor no longer flickers while the screen paints, and a long session opens faster. (#156, #180, #154)
  • edit and write-file keep a file's permissions. A backgrounded (sh ...) returns what its command printed, and output that isn't UTF-8 shows ? instead of failing. (#130, #131, #161)
  • Several homes on one machine no longer delete each other's cached images. (#120)
  • An update carries over a definition that moved to another file, and an install cleans up old releases nothing uses. (#165, #122, #164)
  • A profile made from your settings keeps the cells the hub installed and the folder a pinned provider needs. (#109, #111)
  • A models.dev address with a ${NAME} placeholder asks you for the value. (#116)
  • An eval runs on its own turn's model. (#153)
  • Interrupting work can no longer leave a system library lock held. (#152)

Smaller additions

  • Ctrl+Y selects transcript text from the keyboard. (#135)
  • The guard asks Allow once or Deny before it refuses a call.
  • The MCP tab shows one line per server, its tools folded out, with a search across them.
  • /channels picks the Discord bot's channels, people and roles.
  • nodecode web --print prints the page's link without opening a browser. (#157)
  • nodecode add says what it is waiting on, and names it when it gives up. (#125)
  • (mcp:login NAME ADDRESS) finishes an MCP sign-in from another machine's browser.

Changed or removed

  • The built-in JPEG decoder is gone. An oversized JPEG is shrunk with ImageMagick, ffmpeg or sips when one is installed, and otherwise sent as it is. (#204)
  • The settings sheet, the cells sheet and /generations use one layout at every width. A narrow window gets a slimmer side rail. (#204)
  • /tree no longer marks cron fires, re-asks or steers, and the Konami code on the home mark is gone. (#204)
Under the hood

Full commit list: v0.1.7...v0.1.8