Skip to content

Releases: abi-jey/nagents

Nagents 0.23.2 — Live voice in the shared chat composer

Choose a tag to compare

@github-actions github-actions released this 12 Oct 20:11
248f008

Highlights

  • Live voice now shares the chat composer. Voice controls expand inline from the shared sphere, and the header retains the Assistant · Live label.
  • The assistant voice header has no placeholder. The textarea stays stable, the inset caption follows current assistant speech, and the composer stays within short viewports.
  • The slash menu remains visible when the inspector is expanded, and child composers remain isolated from the root call.

Validation

  • Sphere bloom tests now cover weighted source reuse and collisions between nearby node blooms.

Full Changelog: v0.23.1...v0.23.2

v0.23.1

Choose a tag to compare

@github-actions github-actions released this 12 Oct 02:51
v0.23.1
b5a25ec

The WebUI now has a nested delegation timeline and Team navigation. Inspect and message children through the shared composer, see their tools and runtime settings, and start unused agent profiles.

Failed MCP servers no longer restart at every agent boundary and stall queued work. Healthy connections stay usable, and Tools shows safe failure details with Retry (fixes #111).

  • Keep settings, tool preferences, and voice defaults accessible during active work. Accepted runs retain their provider configuration; saved changes apply to later runs or voice sessions.
  • Show images directly in chat with Download, a full-size viewer, and automatic loading/memory cleanup.
  • Format JSON and command results while preserving raw output and streamed-output reading position.
  • Keep routine provider/configuration startup diagnostics out of the conversation.
  • Bundle default AGENTS.md instructions and continue loading workspace/nested instructions automatically.
  • Fix provider-reader ownership and cleanup of rejected Designer runs.
  • Wake the timer worker after inbox cleanup so scheduled voice updates cannot remain parked behind a released session.
  • Integrate the selected subagent timeline and nested Team tree into the WebUI. Inspect child conversations, tools, provider/model, context and compaction; use the shared composer to message the selected agent.
  • Queue messages to running children at a complete response/tool boundary, with durable delivery receipts and restart-safe retry deduplication. Save provider/model and compaction choices for the next idle activation.
  • Show unused discovered agent profiles as Not started and start eligible profiles through the normal delegation lifecycle.
  • Clear delivered child-message drafts in the terminal inspector while preserving any newer edits.
  • Let tool-setting saves wait for brief queue bookkeeping instead of failing with a busy conflict.

Validated with Python and frontend regression suites, all-files pre-commit, strict docs, offline harness self-tests, and Chrome DevTools desktop/mobile checks.

v0.23.0

Choose a tag to compare

@github-actions github-actions released this 11 Oct 15:24
v0.23.0
9d20c68

Agent definitions

  • Discover reusable agents from native Markdown and import Claude, Copilot/VS Code, OpenCode, Codex TOML, Cursor, Gemini CLI, and Antigravity definitions.
  • Select imported agents in web/terminal settings or delegate to them through the existing task lifecycle. Descriptions, source files, and loading diagnostics are visible in the interface.
  • Preserve tool and delegation restrictions across child creation and repeated follow-ups. Foreign model/tool mappings are explicit, and unsupported restrictions are reported without starting foreign hooks or MCP processes.
  • Keep existing JSON profiles and Designer YAML. See the agent definitions guide for discovery locations and supported adapter subsets.

API cleanup

This minor release removes superseded public interfaces. Use ngn serve with the web extra, durable message submission, Live v2 with scoped provider connections, and the CompactionStrategy interface. The separate nagents.server package, request-owned run stream, old Live callbacks, Compactor API, text-only Completions selector, and native wake_up_in alias are removed.

Normal harnesses retain automatic model compaction. Existing saved history and preference migrations remain, including one-time migration of old Voice preferences without copying their credential table.

Read the 0.23 API migration guide before updating integrations.

Full changelog: v0.22.5...v0.23.0

v0.22.5

Choose a tag to compare

@github-actions github-actions released this 11 Oct 10:21
v0.22.5
3917fbc

What's changed

  • Skills can be selected with /skills and invoked as /<name> [task] in the web UI and TUI. /skill:<name> handles command-name collisions; loading uses the ordinary message queue and permissions, and chat keeps the original invocation.
  • Voice handoffs now send the user's request as plain text. Transcript-only handoffs join fresh user speech without copying assistant speech, timestamps, or transport metadata into the model's user message.
  • Voice context is compact, with exact seed/instructions and budget details available on expansion. Delegation progress says “Processing…”.
  • Right-click or press Shift+F10 on a session to open its actions without switching chats.
  • Workspace information shows the active assistant, provider/model, chat activity, tool selections, and MCP connections, with direct Settings and Manage tools actions.
  • Provider logos are bundled and served by ngn, with no external image requests.
  • Untitled forks are named <chat title> · fork 1, fork 2, and so on; each parent has its own persistent sequence.
  • Delivered images preview automatically inline and when reopening a chat, with bounded authenticated loading and downloads preserved.
  • Stopping a run keeps its cancelled status even if cleanup raises an error.

Full changelog: v0.22.4...v0.22.5

v0.22.4

Choose a tag to compare

@github-actions github-actions released this 09 Oct 17:58
v0.22.4
5b3d29c

This patch fixes the October 9 Live and web issues and adds session trees.

  • Organize chats in nested folders, with persistent collapse state, search, and safe moves. Forked conversations appear beneath their source.
  • Use /fork [title] or the chat menu to branch a conversation. Forks keep context, captions, and attachments while new work runs independently. Use /rename <title> or the menu to save a session name. Both commands are available in the web UI and TUI.
  • Switching chats closes voice while the original chat keeps working. Separate chats retain their own runs and approvals; messages from one external conversation preserve their order. Stops and shutdowns finish cleanup without leaving chats blocked.
  • The first Live caller turn delegates to the backend to load workspace context. Replies no longer duplicate after switching from Live to text.
  • Long chats scroll within the transcript, and the composer and session tree remain usable on short mobile screens.
  • MCP discovery now reports configuration locations and server/tool counts at startup and reload, including missing or ignored configuration.

The storage migration adds fork metadata and independent historical attachment ownership. Existing conversations, folder assignments, and Trash history are preserved.

Fixes #98, #99, #100, #101, #102, and #103.

Full changelog

v0.22.3

Choose a tag to compare

@github-actions github-actions released this 09 Oct 11:10
v0.22.3
6faf0f6

Live follow-ups now enter the same durable queue as typed messages. They are picked up after the current model response and its complete tool batch, before the next model request, while background tasks continue. Live-attached chats use this behavior even when the text-only preference is interrupt; explicit Stop still cancels the run.

  • Preserve each delegation's original ID and captured request, and deliver late assistant, background-task, and wakeup answers while voice remains attached.
  • Show distinct sphere states for permission/connection setup, audio readiness, and errors.
  • Inspect bounded progress and spoken-update payloads in chat, including requests admitted after Live joins an existing run.
  • Preserve queued-message receipts and tool approvals, correctly label child events, and release pending voice observers when their chat is deleted.

Browser voice continues to connect only to the ngn server. Existing provider selection, ChatGPT/Codex login, audio-device settings, and durable conversation ownership remain supported.

Fixes #94, #95, and #96. Implementation: PR #97.

Full changelog

v0.22.2

Choose a tag to compare

@github-actions github-actions released this 09 Oct 08:53
v0.22.2
713b44a

Fixes model discovery, MCP activation diagnostics, and assistant voice playback in ngn serve.

  • Codex model discovery checks the latest stable Codex compatibility version on each catalog request. It uses an isolated public-metadata request, bounded timeouts, and the last known version during outages. This restores discovery of usable models such as gpt-6.1-sol without maintaining a separate model list.
  • Trusted MCP configuration reloads follow ConfigMap symlink rotations. Server logs identify the effective configuration source, ignored untrusted project files, tool counts, and safe failure stages. A failed reload retains the working tool registry.
  • Assistant audio uses continuous AudioWorklet playback with adaptive buffering and sample-rate conversion. Server pacing preserves large audio bursts, interruptions clear queued speech, and the sphere receives timestamps from actual playback. Cached v1 clients remain compatible.
  • Plain JSON-array replies remain readable in session history instead of being mistaken for rich-content records.

GitHub MCP registration and GitHub account authorization remain separate. Installations must be activated through a trusted ngn configuration source.

Full changes: v0.22.1...v0.22.2

v0.22.1

Choose a tag to compare

@github-actions github-actions released this 09 Oct 04:34
v0.22.1
ba41b04

Fixes browser commands, server-owned sign-in, and MCP resource refresh in the ngn harness.

  • WebUI slash commands: /login, /compact, /model, /provider, /agent, session navigation, settings, and help now run as explicit browser actions. Unknown commands preserve the draft.
  • ChatGPT / Codex login: a device sign-in dialog authorizes the ngn server, keeps credentials out of conversation history, and refreshes the selected provider client after saving. The TUI /login remains supported.
  • MCP and plugin refresh: serve and TUI load configured stdio MCP servers and reload trusted resources after every model response and tool batch. In-flight calls keep their advertised implementation, unchanged tools keep Always allow grants, and failed reloads retain the working generation.
  • Reconnect reliability: initial session reads retry brief busy responses with bounded, cancellable backoff. Mutations are never retried.
  • Provider settings: saving a changed connection rebuilds the actual client, including explicitly selected providers, without changing the configured default.

Fixes #90. Reviewed and merged in #91, with a test synchronization follow-up in #92.

Full changelog: v0.22.0...v0.22.1

v0.22.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 08:43
v0.22.0
e07077a

Live voice network sphere

Live voice now uses the connected network sphere directly in the chat composer. Microphone PCM drives listening motion, scheduled speaker PCM drives speaking motion, and delegation launches/results send signals through the network. Node impacts apply to ordinary signals as well as delegation events.

  • Small, fast audio reactions with independent microphone and playback channels.
  • Stable start/mute controls, captions, device switching, and voice settings on desktop and mobile.
  • Bounded audio and event history, offscreen rendering suspension, reduced-motion support, and a static fallback.
  • The React design demo and production UI share the same component and low-level byte/stream interfaces.
  • Browser voice traffic continues through the ngn server relay.

Release continuity

This release carries forward the 0.21.0 harness recovery, capability guidance, and benchmark changes. A Windows terminal UI test now waits for its scroll animation before asserting the result.

Validation includes 600 frontend tests, strict TypeScript, production/demo builds, pre-commit, desktop/mobile browser checks, and the cross-platform Python CI matrix. Release artifacts include the built WebUI.

Full changelog: v0.21.0...v0.22.0

v0.21.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 07:51
v0.21.0
7ab1cbb

Nagents 0.21.0 improves harness file recovery and keeps orchestration instructions aligned with the tools an agent can actually use.

  • Generated prompts include detailed scheduling and delegation guidance only when the corresponding native capability is advertised. Prompts refresh between runs while preserving authored overrides, initialization diagnostics and native tool aliases.
  • File-tool guidance distinguishes reading or editing an existing path from creating a new file. Missing-file errors retain their original diagnostics and explain how to resolve nearby paths without silently selecting a replacement.
  • New natural-prompt evaluations measure real tool failures, legitimate errors, recovery, task completion and token usage. The repository also includes the public prompt collection methodology and source provenance.
  • This release includes the previously merged migration of general and provider configuration to JSON; see the configuration guide.

Across 88 fresh real-model comparison trials, both versions completed all 37 actionable trials and correctly handled all seven controls per variant. The candidate used 3.2% fewer tokens and 5.7% fewer tool calls. These are small authored samples, with uneven per-case gains; they do not establish a universal improvement. Separate delegated and post-review smoke checks also passed. See the full evaluation report.

Install or upgrade with pip install --upgrade nagents (or the optional extras you use).

Full changelog