Changelog

What's new in NeverWrite

All notable changes to NeverWrite are documented here.

0.3.3 Grok ACP & Chat Polish
  • Added Added a native Grok ACP provider, including automatic detection for the official Grok CLI install path
  • Changed Updated the embedded Claude ACP runtime to 0.42.0
  • Changed Removed the Claude Code max-turns setting now that Claude Code manages turn limits internally
  • Changed Constrained the AI chat transcript, composer, and action panels to a shared readable width
  • Changed Top-aligned newly streamed chat messages so incoming responses stay easier to scan
  • Fixed Fixed dropped Excalidraw files so they open as maps instead of plain files
  • Fixed Fixed AI chat links so raw URLs are clickable and external links open in the system browser
  • Fixed Fixed runtime message timeline ordering so user messages, errors, and subagent activity stay in the correct transcript order
  • Fixed Fixed hook dependency warnings in the AI review UI
  • Fixed Fixed APT release asset publishing for Debian packages
0.3.2 Vim, Terminal & Review Polish
  • Added Added opt-in Vim mode for the editor, including Settings controls, relative line numbers, a Vim status bar, and Vim command handling
  • Added Added a terminal dictation overlay for composing terminal input before sending it
  • Added Added Claude Code terminal sessions to the Agents sidebar, with live transcript-derived titles and previews plus focus and close actions
  • Added Added screenshot retention controls for AI chat screenshots, including automatic cleanup for expired screenshots and a Forever option
  • Changed Reworked terminal output rendering so PTY output streams directly into xterm, improving reliability and responsiveness under heavy Claude Code output
  • Changed Updated the embedded Claude ACP runtime to 0.39.0
  • Changed Clarified recent feature documentation and settings scope docs, including which settings are global and which are vault-scoped
  • Changed Changed Debian release publishing so updater feeds are published before APT validation
  • Fixed Fixed historical AI chat diff cards so older diffs remain inspectable after later file edits
  • Fixed Fixed Pending Changes edited-files tray overflow so large review lists remain usable
  • Fixed Fixed closed subagent sessions so closed child-agent conversations stay closed across store rebuilds and resume paths
  • Fixed Fixed primary-vault window session restoration when the stored vault value is narrowed to a path
  • Fixed Fixed Debian APT repository publication and validation for release assets hosted on GitHub Releases
  • Security Updated the Web Clipper workspace dependency metadata to address the transitive tmp advisory
0.3.1 Runtime & Linux Delivery Fixes
  • Changed Updated the embedded Claude Code runtime to 2.1.154, including compatibility with the newer thinking-token telemetry event emitted by the Claude SDK
  • Changed Changed APT repository publishing so Debian .deb binaries stay on GitHub Releases while signed APT metadata remains on GitHub Pages
  • Changed Updated the desktop app's transitive tmp dependency to 0.2.6
  • Fixed Fixed HTML preview tabs so iframe previews no longer swallow internal file-tree or agent-sidebar drag events, restoring reliable drag interactions across HTML previews
  • Fixed Fixed APT repository validation for Debian packages published through remote GitHub Release URLs
0.3.0 Terminal, OpenCode & Linux Packages
  • Added Promoted Terminal to a first-class workspace feature with terminal tabs, theme-aware ANSI palettes, Terminal settings, and Claude Code CLI integration as a built-in agent provider
  • Added Added native OpenCode ACP provider support, including CLI auth, diagnostics, provider settings, runtime smoke coverage, and setup-state handling without storing OpenCode secrets in NeverWrite
  • Added Added file tree extension filtering for mixed vaults with consistent filtering across the file tree, @ mentions, New Tab, Quick Switcher, Search Files & Notes, and wikilink suggestions
  • Added Added support for dragging files from Finder into vault folders, including folder hover feedback, multiple-file drops, root drops, and existing-name deduplication
  • Added Added keyboard shortcut hints to the empty workspace pane for Open File, Command Palette, New Agent, and New Terminal actions
  • Added Added a warning when a resumed AI session drops previously approved external directories because they are no longer accessible
  • Added Added Debian .deb release packages for amd64 and arm64 Linux installs while keeping AppImage as the portable Linux package and updater target
  • Added Added signed APT repository publishing for Debian packages, including GitHub Pages metadata, signed release files, validation, package retention, and user install documentation
  • Added Added a repository security policy with private vulnerability reporting guidance
  • Added Added Settings links for GitHub issues, GitHub discussions, Buy Me a Coffee, and GitHub Sponsors
  • Changed Updated the embedded Claude ACP runtime to 0.37.0 with first-class additional directory support across session create, load, resume, and fork paths
  • Changed Updated the embedded Codex ACP runtime vendor to the 0.15 line and aligned the desktop/backend protocol dependency with agent-client-protocol 0.12.1
  • Changed Updated Mermaid to 11.15.0, bringing newer diagram syntax and upstream rendering fixes
  • Changed Clarified default agent preference behavior so explicit provider choices win over the current or last-used runtime, while Automatic keeps contextual selection
  • Changed Clarified File Tree settings, renamed the old Developers section to File Tree, and removed the duplicate Line wrapping setting from that section
  • Changed Polished Settings navigation around main product workflows, moved Updates later, clarified manual update installation, and added tactile press styling to Settings action buttons
  • Changed Polished APT repository metadata with streamed hashing for large packages, Debian-specific checksum casing, and a neverwrite-stable repository codename
  • Fixed Fixed terminal rendering crashes and jank under heavy Claude Code output by batching PTY output, adding terminal write backpressure, enabling WebGL when available, and avoiding repeated cold-path terminal resets
  • Fixed Fixed AI provider default selection so choosing Claude Code or another provider in Settings is not overwritten by a racing chat-store initialization
  • Fixed Fixed Claude/OpenCode structured diff handling so chat review snippets preserve the exact hunk shown to the review system, keep stable line numbers, survive history restore, and do not leak later edits into older cards
  • Fixed Fixed Pending Changes review tabs so wide or center mode and scroll position persist reliably when switching tabs or remounting the review view
  • Fixed Fixed file tree multi-selection cleanup so selected files and folders clear when focus moves back into an editor or workspace pane
  • Fixed Fixed fatal startup fallback rendering so exception text is displayed as text instead of being assigned through innerHTML
  • Fixed Fixed Web Clipper YAML frontmatter date detection so only explicit ISO-like dates and timestamps are quoted as YAML-implicit dates
  • Security Hardened Web Clipper public HTTP responses so internal exception details, stack traces, local paths, and arbitrary unknown values cannot be serialized back to the browser extension
  • Security Hardened Claude local command metadata stripping with a deterministic scanner over known marker tags, avoiding a potential local denial-of-service pattern
  • Security Reduced release metadata workflow permissions to the minimum needed for validation
  • Security Patched vulnerable transitive dependencies across the desktop app, Web Clipper, and Rust backend, including rustls-webpki, uuid, rand, brace-expansion, and ws
0.2.7 Keyboard Flow & Interface Polish
  • Added Added keyboard navigation for the file tree, including Next File and Previous File shortcuts that move through files inside collapsed folders
  • Added Added a New Terminal shortcut, available from the app menu and shortcut settings
  • Added Added Fliege Mono as an editor font option
  • Changed Updated the embedded Claude ACP runtime to upstream 0.35.0, including gateway and authorization compatibility updates from 0.34.0
  • Changed Polished app chrome and core controls with more tactile hover, press, focus, and open states across sidebar tabs, agent controls, settings, vault switching, tab close buttons, and the chat composer
  • Changed Changed the expanded chat composer so it collapses after sending and keeps its action row stable during queued sends or stop actions
  • Fixed Fixed frontmatter property editing so values keep their intended spaces
  • Fixed Fixed live preview rendering around tables, inline markup boundaries, and empty list items so caret placement, marker alignment, and spacing remain stable while editing
  • Fixed Fixed YouTube embeds opened in theater mode so their video identity is recognized correctly
  • Fixed Fixed restored AI chat sessions so transcript hydration preserves usable conversation history
  • Fixed Fixed the agent sidebar drag lifecycle so thread dragging, previews, and cleanup behave consistently
0.2.6 Theme-Aware Code & File Moves
  • Added Added per-theme syntax highlighting across CodeMirror source mode, live preview markup, chat code blocks, and static diff/code rendering with shared code color variables
  • Added Added a compact searchable Move to Folder destination picker for notes, PDFs, generic files, folders, and mixed file-tree selections
  • Added Added pane-scoped tab context menu actions for Close Others and Close Tabs to the Right, including active-agent close confirmation and disabled states when unavailable
  • Changed Updated Developer Mode settings copy to describe terminal tabs in the editor workspace instead of the previous bottom terminal panel
  • Changed Added a README notice about Claude subscription usage in NeverWrite starting June 15, 2026
  • Fixed Fixed Move to Folder behavior so context menu moves and drag/drop moves share the same executor and consistently support notes, PDFs, generic files, folders, and mixed selections
0.2.5 Linux AppImages & Secure Provider Keys
  • Added Added Linux AppImage releases for x64 and ARM64, including Linux update feed support and AppImage updater integration
  • Added Added Kilo API key setup in AI provider settings, with secure local persistence, logout cleanup, and setup-state validation alongside the existing Kilo CLI login flow
  • Added Added an in-app HTML viewer for vault .html and .htm files, including sandboxed script execution, relative asset loading, and restrictive network protections
  • Added Added .html and .htm files to the default file tree so HTML documents appear without enabling the global all-files view
  • Changed Updated the embedded Claude ACP runtime to upstream 0.33.1 and the embedded Codex agent runtime to 0.14.0
  • Changed Polished Linux-specific desktop packaging behavior, window chrome, updater handling, and cross-platform shortcut behavior for the AppImage release path
  • Fixed Fixed chat Markdown rendering so slash-prefixed text is no longer converted into a clickable vault pill unless it resolves to a valid vault reference
  • Fixed Fixed dragging agent chats from the collapsed sidebar so the sidebar overlay stays active while the drag starts
  • Fixed Fixed inline file-review Accept and Reject buttons so decisions run on click release instead of immediately on press
  • Fixed Fixed provider quota, rate-limit, and usage-limit failures so chat shows a clear provider-limit message instead of treating the error like setup or authentication failure
  • Fixed Fixed oversized saved AI session transcripts by compacting new saves and repairing previously inflated saved chats on load
  • Fixed Fixed vault scans, text-file reads, and watcher hashing for Markdown and text files that contain invalid UTF-8 bytes by decoding them lossily instead of failing the vault operation
  • Fixed Fixed Linux updater handling when a release feed is missing so the app can continue gracefully across Linux release variants
  • Security Secured persisted AI provider secrets for Codex/OpenAI, Claude/Anthropic, Gemini/Google, and Kilo API keys through OS credential storage instead of runtime setup JSON
  • Security Audited NeverWrite for the May 2026 Mini Shai-Hulud npm supply-chain attack and found no exposure to the known malware indicators, affected package sets, or risky workflow pattern
0.2.4 Chat Context & Recovery
  • Added Added file-tree context menu actions to add notes, folders, PDFs, and sidebar files directly to the current chat composer as context pills
  • Added Added Add to New Chat and Add Selected to New Chat actions from the file tree, opening a fresh agent chat before attaching the chosen context
  • Added Added multi-selection-aware chat context actions for selected notes and sidebar files in the file tree
  • Added Added local app diagnostics logs for Electron main, renderer, and native backend events, with documented log locations and privacy notes
  • Added Added saved-chat crash recovery docs and recovery flow for AI conversations stored locally under each vault's .neverwrite/sessions directory
  • Added Added native saved-session resume support for Codex when available, with a saved-transcript fallback path when direct runtime resume is unavailable or fails
  • Changed Changed file-tree path copy actions to consistently use Copy Full Path and copy absolute paths for notes, folders, PDFs, and sidebar files
  • Fixed Fixed external vault refresh handling so ambiguous external deletes, including folders that look like Markdown notes, refresh the vault structure instead of leaving the file tree stale
  • Fixed Fixed closing active AI agent tabs so NeverWrite asks for confirmation consistently, including Cmd/Ctrl+W and multi-tab close paths
  • Fixed Fixed Codex saved chats so restored, detached, resumed, or crash-recovered sessions keep enough transcript context to continue without losing the prior conversation
  • Fixed Fixed Codex subagent breadcrumb Open actions so they continue working after restore or resume even when live session identifiers differ from saved history
  • Fixed Fixed detached windows and tab reattachment for AI chats so related parent, child, and sibling subagent sessions transfer and hydrate together
  • Fixed Fixed file-tree chat context targeting so context menu actions and drops attach to the intended chat, including newly opened chats whose composer is still mounting
  • Fixed Fixed normal native backend shutdown so expected sidecar exits no longer appear as app errors
  • Security Hardened diagnostic log redaction for prompt, transcript, message, content, token, secret, authorization, and API key fields
0.2.3 Pane-Native Drag & Drop
  • Added Added a release notes button in Settings > Updates that opens the latest GitHub release in the user's browser
  • Added Added pane-native drag and drop for Agents sidebar threads, so chats and subagents can open in panes, move existing chat tabs, or create split panes
  • Added Added a floating drag preview for Agents sidebar threads with the thread title, runtime, and active or error state while dragging
  • Changed Changed file-tree drag behavior so dropping existing notes, PDFs, and files onto editor panes opens them as tabs instead of inserting embed markup
  • Changed Changed file-tree and external file drops to use pane-native targeting for pane centers, tab strips, and pane edges, while AI composer drops still attach to chat
  • Changed Polished the chat composer expand and collapse button with clearer diagonal arrow directions and a subtle hover highlight
  • Fixed Fixed AI chat tabs restored from saved history so persisted identifiers no longer leak into live runtime commands
  • Fixed Fixed workspace tab dragging so file-attachment drag events emitted by tabs no longer clear the pane split or drop preview
0.2.2 Subagent Reliability
  • Changed Updated the embedded Claude ACP runtime to the latest upstream 0.31.4 snapshot, keeping NeverWrite aligned with Claude Code v2.1.123
  • Security Updated the embedded Claude ACP runtime's vendored dependencies to include upstream Hono security fixes for JSX tag validation and chunked request body limits
  • Fixed Fixed Codex subagent threads so their sidebar Working state now follows each child agent's own turn lifecycle
  • Fixed Fixed subagent completion handling so child threads return to idle when their ACP turn completes, aborts, or shuts down
  • Fixed Fixed stale Codex subagent completion events so older turns can no longer mark reactivated child agents as idle
  • Fixed Fixed subagent reactivation so resumed or still-running child agents are no longer incorrectly marked idle by parent breadcrumbs
  • Fixed Fixed multi-subagent waiting updates so a completed child no longer causes sibling subagents to stop showing as working
  • Fixed Fixed Codex ACP lifecycle projection by emitting structured turn lifecycle metadata and structured waiting-status metadata for subagents
0.2.1 AI Sign-In & Provider Reliability
  • Added Added Web Clipper release artifacts to the GitHub Release pipeline, including Chrome MV3 manual-install and Firefox MV3 testing/signing zips
  • Added Added working ChatGPT account sign-in for the Codex runtime through the ACP authentication flow, including backend logout support
  • Added Added Anthropic API key sign-in as an explicit Claude provider option
  • Changed Hardened Claude sign-in options so remote or no-browser environments use the appropriate terminal login method while local environments keep Claude subscription, Anthropic Console, API key, and gateway choices
  • Changed Hardened Gemini Google sign-in so the terminal launch explicitly maps the UI method to Gemini CLI oauth-personal auth instead of relying on ambiguous defaults
  • Fixed Fixed AI provider setup status so finding a runtime binary no longer incorrectly marks the provider as connected
  • Fixed Fixed terminal sign-in state so providers become connected only after the sign-in process exits successfully
  • Fixed Fixed AI sign-in terminals so refreshes no longer restart the active auth session or reopen duplicate browser tabs
  • Fixed Fixed AI sign-in terminals so they open focused and scrolled to the beginning of the auth prompt, allowing interactive choices such as Gemini Google sign-in to receive Enter correctly
  • Fixed Fixed AI provider setup recognition after restart by detecting persisted CLI account credentials for Codex, Claude, Gemini, and Kilo
  • Fixed Fixed AI provider logout so local auth state and Google Cloud environment settings are cleared consistently
  • Fixed Fixed Claude gateway setup so remote HTTP URLs are rejected by the backend, localhost HTTP remains allowed, and gateway-with-token setups stay labeled as gateway auth
  • Fixed Fixed Windows runtime lookup for CLI shims that depend on PATHEXT, such as .cmd and .exe launchers
  • Fixed Fixed Gemini startup on Windows so NeverWrite prefers the executable .cmd shim over npm's extensionless shim, avoiding CreateProcessW launch failures
  • Fixed Fixed Gemini Google sign-in hydration so NeverWrite marks the provider as connected as soon as the Gemini CLI reports successful authentication
  • Fixed Fixed Gemini ACP sessions on Windows by stripping verbatim path prefixes before launching the Node-based CLI
  • Fixed Fixed Gemini model and mode changes so NeverWrite uses Gemini's supported ACP session/set_model and session/set_mode requests
  • Fixed Fixed Codex subagent persistence so background subagent threads are saved when they are created or receive events while their chat tab is closed
  • Changed Documented a Codex subagent edge case where models may combine a full-history fork with explicit child role, model, or reasoning-effort overrides
0.2.0 Subagents & Web Clipper
  • Added Added GitHub Release downloads for the Web Clipper, including a Chrome MV3 zip for manual install and a Firefox MV3 build artifact for testing and signing workflows
  • Added Added Codex subagents as first-class sidebar sessions, so running agents stay available even after their chat tabs are closed
  • Added Added dedicated threads for each Codex subagent, including independent review tabs and inline review for file changes made by each agent
  • Added Added parent chat breadcrumbs with inline actions for opening subagent threads, plus persistent parent-child grouping across restarts
  • Changed Removed the redundant collapse-all control from the note outline so the panel starts directly with the document structure while preserving per-section collapsing
  • Changed Aligned file-oriented search across Search Files & Notes, New Tab, @ mentions, and wikilink suggestions so all-files mode treats Markdown notes as files first
  • Changed Updated wikilink suggestions in all-files mode to display Markdown note file names consistently with the file extension setting
  • Changed Made the wikilink suggestion popup horizontally scrollable so long note names and vault paths can be inspected without widening the popup
  • Fixed Fixed a mismatch where the file-oriented search notice promised file-name-first behavior, but Search Files & Notes and New Tab still used older title/path scoring
  • Fixed Fixed @ mention suggestions in all-files mode so note titles remain searchable as a fallback after file name and path matches
0.1.2 Reliability Fixes
  • Fixed Fixed macOS DMG release validation so GitHub-built desktop release artifacts are staged and checked correctly
  • Fixed Fixed opening and using vaults on Windows rclone/WinFsp mounted drives that do not support path canonicalization, without compromising the security layer
  • Fixed Fixed the drag preview disappearing when dragging items from an expanded sidebar onto editor panes or the chat composer
  • Fixed Fixed sticky folder headers in the file tree so they read as a distinct frosted plate, with the same visible blur treatment in both the docked sidebar and the Arc-style peek overlay
  • Fixed Fixed detached windows so agent conversations, review tabs, and terminal tabs keep their state when opened, moved, or reattached across windows
0.1.1 Runtime Fixes
  • Fixed Fixed GitHub-built desktop app packaging so the bundled Claude ACP runtime includes its production dependencies
  • Fixed Prevented failed AI runtime startup from blocking provider settings, note loading, and other backend requests indefinitely
  • Changed Improved AI provider settings so providers show as checking while runtime inventory is loading instead of incorrectly offering installs
0.1.0 Initial Release
  • Added AI-powered editing with Codex, Claude, and Gemini via native sessions
  • Added Markdown editor with live preview and syntax highlighting for 47 languages
  • Added Graph visualization in 2D and 3D for connected notes
  • Added Granular review system — accept, reject, or modify each AI change individually
  • Added Full-text search with query builder and filters
  • Added Web clipper for saving pages directly to your vault
  • Added Excalidraw-powered concept maps and whiteboards
  • Added Integrated terminal
  • Added Wikilinks with smart autocomplete
  • Added 22 visual themes (dark and light)
  • Added PDF viewer with dark mode and sepia filters
  • Added Image viewer with drag-and-drop and clipboard paste
  • Added Spell and grammar check with custom dictionaries
  • Added Local-first architecture — all data stays on your machine
  • Added macOS and Windows support