Changelog
Track the latest updates and improvements to Voiden.md
vv2.0.1
6/10/2026Stable: Plugin Architecture Overhaul
Stable release rolling up the v2.0.0-beta.1 and v2.0.1-beta.1 betas — a major rework of the plugin architecture (protocol logic moved into plugins, independent plugin repos, the new voiden-runner CLI and @voiden/create-plugin scaffolding tool) plus a batch of bug fixes.
added
- voiden-runner — standalone CLI package (@voiden/runner) for executing .void files from the terminal without the desktop app
- @voiden/create-plugin — scaffold a Voiden plugin workspace with a single command
improved
- Core request engine reworked to be protocol-agnostic — REST, WebSocket, and gRPC logic now lives entirely within each plugin
- Core plugins moved into independent repositories for cleaner versioning, isolated releases, and easier community contribution
- Plugin install and update flow — clearer status indicators and more reliable update detection in the extension manager
- @voiden/sdk expanded with top bar buttons, help panel commands, declarative settings fields, a project file system API, and a manifest-based permission system for plugins
fixed
- Large integers (e.g. 64-bit IDs) no longer get rounded or corrupted in the response viewer and runtime variables
- "Add File" button no longer gets hidden when multiple cURL blocks are present in a request
v2.0.1-beta.1
6/3/2026Plugin Independence, create-plugin & File Search
Core plugins are now independent repositories, decoupled from the main monorepo for cleaner versioning and contribution. Introduces @voiden/create-plugin to scaffold a plugin workspace with a single command, along with plugin UI improvements and a batch of community-contributed fixes.
added
- @voiden/create-plugin — new standalone package to scaffold a Voiden plugin workspace with a single command, making it easier to build and publish plugins without manual boilerplate setup
improved
- Core plugins refactored into independent repositories — each plugin now lives in its own repo for cleaner versioning, isolated releases, and easier community contribution
- Plugin install and update UI — clearer status indicators, improved install flow, and more reliable update detection in the extension manager
- @voiden/sdk v1.1.0 — plugins can now register top bar icon buttons (registerTopBarItem), help panel commands (registerHelpCommand), and declarative settings fields (text, number, select, toggle) auto-saved to userData per plugin; a relative-path file system API (context.fs) is available for reading, writing, creating, deleting, and listing project files; all capabilities are gated behind a manifest permission system — plugins must declare which permissions they use (filesystem, settings, commandPalette, contextMenus, events)
- Environment variable editor — improved layout, usability, and naming consistency
- Identifier and file naming standardized to kebab-case across the plugin system
- File system search — added file mask, directory mask, and hidden files toggle; FileSystemList refactored from a single 2000+ line file into smaller focused modules — contributed by Lars Benedetto
fixed
- "Add File" button no longer gets hidden when two or more cURL blocks are present — the layout now adjusts correctly without requiring manual blank lines below the block — contributed by parvbajaj1
- Large integers in JSON responses were silently rounded due to JavaScript's native JSON parser precision limits — response panel now uses the 'lossless-json' library to parse and render large integers accurately without rounding — contributed by Uchenna
v2.0.0-beta.1
5/20/2026Architecture Refactor & Voiden Runner
Major refactor restructuring the core request engine and plugin system. Protocol-specific logic for REST, WebSocket, and gRPC now lives entirely within each plugin. Introduces voiden-runner — a standalone CLI for executing .void files headlessly.
added
- voiden-runner — standalone CLI package (@voiden/runner) for executing .void files from the terminal without the desktop app
- Multiple file uploads on a single key in multipart form and binary body — a key can now have more than one file attached to it
improved
- REST, WebSocket, and gRPC protocol logic moved into their respective plugins — core request engine is now protocol-agnostic
v1.6.3
5/19/2026gRPC Reliability, OAuth2 & Runtime Variable Fixes
Patch release fixing response header lookups in runtime variables, gRPC connection error surfacing, protocol detection for imported gRPC files, native proto file selection via Electron dialog, theme-aware borders across gRPC and WebSocket UI components, OAuth2 error toasts, and bulk delete of runtime variables.
improved
- Proto file selector now uses Electron's native file dialog instead of the HTML file input — the full absolute path is always available, making proto file selection reliable on all platforms and consistent with how other file pickers work in the app
- OAuth2 auto-acquire and auto-refresh now show a toast with a specific error message when required config fields are missing, when the token server returns an error, or when an unexpected exception occurs — previously all failures were silent console warnings
fixed
- Runtime variable header lookups now return the correct value — the key-value array lookup was hardcoded to always match the literal string "key" instead of the requested path segment, so every header read returned the first header's value regardless of which header was requested; cookie extraction was unaffected because it used a separate dedicated code path
- gRPC connection failures now surface the actual error message in the response panel instead of showing 'gRPC connection could not be initialized — no identifier provided' — a guard was added to the response handler that detects missing connection IDs and routes the error through the standard error display path
- Border colors in gRPC and WebSocket UI components (proto selector, message viewer, method node, URL node) are now theme-aware — hardcoded stone-700/80 borders replaced with the --border CSS variable so the components follow the active theme correctly
- Bulk delete of runtime variables now correctly removes all selected variables
- Deleted runtime variables no longer reappear after an OAuth2 token is auto-acquired or refreshed
v1.6.2
5/12/2026Tab Scrolling, Scripting Docs & Multi-Bug Fixes
Patch release fixing the active tab not scrolling into view when files are opened from the left panel, correcting the Voiden Scripting skill documentation across all three languages, and resolving a batch of bugs in path param variable replacement, the response panel, runtime variable binding, environment editor scrolling, global search, terminal tab visibility, and the post-response script execution error.
added
- Keyboard shortcuts to cycle between open tabs — Cmd+Shift+] moves to the next tab and Cmd+Shift+[ moves to the previous tab, cycling around; shortcuts work even when focus is inside a code editor block
- All-tabs dropdown in the tab bar — a button at the end of the tab strip opens a list of every open tab regardless of scroll position, making it easy to jump to any tab without scrolling
improved
- Voiden Scripting documentation fully rewritten — corrected API reference for JavaScript, Python, and Shell with accurate property names, method signatures, assert operator table, per-language syntax comparison, and full shell bash function and environment variable reference
fixed
- Path parameters with runtime and environment variables now resolve correctly — variable replacement logic was not being applied to path params in all cases
- Context menu now correctly identifies the block at the cursor position — previously the wrong block was targeted when the cursor was inside a table cell or at the boundary between blocks
- Copying a large response body (e.g. 50k lines of JSON) now copies the full content — previously the clipboard only received the visible DOM text, which was limited to roughly 60 lines; the copy handler now reads the complete selection from the editor state
- Response panel scrollbar no longer disappears when scrolling through large payloads — the panel container height constraints are now properly anchored so the scrollbar stays within the visible area throughout the full scroll range
- Runtime variables are now bound to the active environment they were captured in, rather than being written to the global scope
- Active environment no longer carries over when switching between projects — each project now opens with its own environment selection — contributed by KrawMire
- Environment editor no longer exhibits erratic scroll behaviour when editing values
- Global search results are now visible, the context menu appears correctly
- Invalid regex patterns entered in the search bar no longer crash the editor rendering
- Environment naming conflicts, cross-project environment visibility, and the select button toggle state are now handled correctly
- Terminal tab is now correctly shown and hidden based on panel state
- Post-response scripts no longer report an execution failed error immediately after a request completes
- Expand All button in the file tree now works correctly
- Button text colour now correctly follows the active theme — contributed by KrawMire
v1.6.1
5/4/2026OAuth HTTPS, Section Copy Fixes & Response Panel Polish
Patch release covering OAuth 2.0 HTTPS callback support, a batch of .void file editor fixes around section creation and search, response panel accuracy improvements, and copy button feedback across all response nodes.
added
- OAuth 2.0 flows now support https:// callback URLs — a self-signed certificate is generated automatically so providers that require HTTPS (Okta, Azure AD, Auth0, etc.) work without extra setup
- Environment editor now exposes an intermediate toggle per environment — mark a parent env as hidden so it is excluded from the env picker and users are required to select a child env
- Copy buttons across all response panel sections (response headers, request headers, request body, assertion results) now show an animated check mark on success
fixed
- Typing /new-request inside an existing section no longer splits the current paragraph into an uneditable box — the new separator and paragraph are inserted cleanly after the current block
- /new-request in a completely empty file now creates a single section header instead of two
- Copying a section from the drag menu was including blocks from subsequent sections — the range calculation now correctly stops at the next separator
- Pasting a block into a different section no longer triggers the singleton replacement dialog — the duplicate check is now scoped to the current section only
- Regex patterns that match empty strings (e.g. .*, a?, b*) no longer produce phantom search results when navigating matches in .void files
- Closing the search bar in a .void file now clears all highlights from both ProseMirror text and CodeMirror code blocks
- Endpoints that return a 404 with no body no longer show a fake response body in the results panel — empty buffers are now treated as no body
- Secret variables inherited from a parent environment are now masked in the child environment view
- Selecting text in the response panel no longer highlights all other matching occurrences — selection match highlighting is now disabled in read-only editors
v1.6.0
4/30/2026Environment Editor Overhaul, Stitch History & Search Fixes
Major overhaul of the Environment Editor with runtime variable binding, stitch runner run history, duplicate query parameter support, and fixes across the code editor search and highlight behaviour. Environment variables are stored as public and private YAML files inside the .voiden hidden folder — the public file can be committed to git for team sharing, while the private file stays local.
added
- Stitch Runner now records a history of past runs per file, browsable directly from the results sidebar — revisit previous run details, assertions, and request/response info without re-running
- Delete individual stitch run history entries or clear all history at once from the history panel
- Environment variable suggestions when editing values in the environment editor
improved
- Environment editor rebuilt with a new UI and improved runtime logic — variable management across profiles and nested environments is now more consistent and reliable
- Runtime variables are now bound to the active environment and can be viewed directly in the Environment Editor — variables captured during a run are scoped to the environment that was selected at the time
fixed
- Query parameters with the same key are now all forwarded correctly — duplicate keys (e.g. filter=a&filter=b) were previously collapsed to a single entry
- Code editor scroll no longer snaps back when navigating between find/replace matches — the active match is correctly scrolled into view
- Search match highlights in the code editor now use the correct theme colors instead of a nearly invisible override that was suppressing the highlight entirely
v1.5.1
4/24/2026Binary File Execution, StitchRunner Temp Tab & Voiden Editor Find/Replace Fixes
Patch release addressing binary file attachments being skipped during request execution, StitchRunner results not appearing on untitled temp tabs, and Voiden editor find/replace panel positioning and scroll behaviour.
fixed
- Binary file attachments were silently skipped during request execution — attached binary files are now correctly accessed and forwarded when a request is sent
- StitchRunner results were not appearing on untitled (temp) tabs — the run result lookup was using file path, which temp tabs do not have; lookup now uses tab ID, consistent with how the response panel store already resolves results
- cURL paste with a binary file path now correctly parses and maps the file reference, bringing parity with manual binary file attachment behaviour
- Voiden editor find/replace panel was positioned fixed to the top of the viewport instead of the editor container — it now stays anchored within the editor bounds; find next, find previous, and the associated scroll behaviour are also corrected
v1.5.0
4/22/2026Smarter Search, Editor Stability & GraphQL Polish
Feature release with a path-aware fuzzy search algorithm across file search, file links, and environment selectors, alongside a suite of editor reliability fixes covering content reloading, inline code rendering, file tree stability, and GraphQL variable highlighting.
added
- Stitch Runner now persists its response to the tab it was originally executed from, rather than broadcasting to every open response panel.
- Copy buttons for response headers, request headers, request body, and the equivalent cURL command — quickly grab any part of a request or response directly from the response panel
improved
- File search, file link suggestions, and the environment selector now use a fuzzy matching algorithm that scores against both filename and full path, making it much easier to find files when you remember part of a folder name or nested path — contributed by a community contributor
- Drag-and-drop target highlight in the file tree is now more precise and visually consistent, making it clearer which folder a file will be dropped into
- GraphQL request blocks now highlight environment and runtime variables directly in the URL field, and correctly forward auth and custom headers when executing requests
fixed
- Voiden editor no longer reloads file content when changes are triggered internally (e.g. saving, formatting); content now only refreshes when a change originates from outside the editor, preventing unnecessary cursor jumps and scroll resets
- Newline behaviour on save in the Voiden editor is now consistent — the final newline is preserved without duplication
- File tree no longer reloads or collapses when creating a new file or renaming an existing one, keeping your current folder state intact
- Environment editor panel now restores its scroll position correctly after switching tabs or refreshing the panel
- Environment variable search now correctly matches variables whose values are numbers, previously they were excluded from results
- Inline code spans (backtick content) now inherit the font size of the surrounding text instead of always rendering at a fixed size
- OAuth2 token auto-fetch no longer throws a JavaScript runtime error dialog when an incorrect or unreachable URL is provided — the error is now handled gracefully
v1.4.6
4/16/2026Shell Scripting Fixes, Lock Mode & Shortcut Refactor
Patch release fixing shell scripting API alignment, response panel language override, section execution via keyboard shortcut, and introducing a status bar lock for safe testing. Keyboard shortcut system refactored by a community contributor.
added
- Lock mode — a lock toggle in the status bar that prevents any data from being saved during a session, making it safe to run test requests without overwriting existing content
- Manual response format override — force the response panel to render a body as a specific format (e.g. JSON, HTML) regardless of the content type returned by the server, useful when APIs return JSON with an incorrect content type header
improved
- Keyboard shortcut system refactored and centralized — contributed by a community contributor
fixed
- Shell scripting APIs now align with the same conventions used by other scripting languages in Voiden, ensuring a consistent scripting experience across all supported languages
- Section execution via Cmd + Enter (macOS) / Ctrl + Enter (Windows/Linux) now triggers reliably when pressing the shortcut inside a section block
v1.4.5
4/14/2026File Import, Highlight Fixes & Editor Polish
Patch release with collapsible whole-file and section imports, highlight persistence fixes, imported file play button, and editor input improvements.
added
- Import whole file or section — @ file suggestions now support importing an entire .void file or a specific named section, both rendered as a collapsible linked block
- External file change detection — when a .void file is modified on disk by an external process, clean tabs silently reload the latest content while dirty tabs show a toast prompting you to overwrite with the disk version or keep your unsaved changes
- On-activation content sync — switching back to a clean Voiden tab compares the editor content against disk and silently applies any changes that occurred while the tab was hidden
- External file change detection for all file types — both .void and code editor tabs now detect disk changes and refresh automatically
fixed
- Enter key now works correctly when the autocomplete dropdown has no suggestions — previously the key event was consumed by the suggestion handler even when there was nothing to select, blocking newlines and other Enter-triggered actions
- Play button on imported file blocks now correctly executes the request
- Variable and environment highlights no longer disappear after saving or switching tabs
- Importing an empty .void file no longer shows a 'Cannot load linked file' error
- Current file is now excluded from @ file import suggestions
- Enter key in table cells now navigates to the next cell instead of inserting a newline
- Runtime variables table cell borders now match other request-block tables
- Simple assertions now work correctly on plain-text response bodies — asserting against body or response.body no longer fails when the response is not JSON
v1.4.4
4/9/2026OAuth2 Auto-Fire, File Tree Reflection & Large File Import
Release adding automatic OAuth2 flow execution on request run, instant file tree updates when files are created externally or by generators, and significant improvements to importing and working with large OpenAPI and Postman JSON/YAML files.
added
- OAuth2 auto-fire — when an OAuth2 block is configured, the authorization flow now triggers automatically on request execution without requiring a manual step
- Cancel generation — a cancel button now appears beside the Generate Voiden Files button while a Postman import is in progress, letting you stop mid-run without waiting for it to complete
improved
- File tree reflects instantly — files created by AI agents, code generators, or any external process now appear in the file explorer immediately instead of after a multi-second delay; fixed by busting the server-side tree cache on every file system event and reducing chokidar write-finish thresholds from 300 ms to 50 ms
- Generate Voiden Files button now appears on large OpenAPI and Postman files — the button predicate correctly evaluates after streaming completes by storing a per-tab content snapshot, and survives tab switches without re-evaluating from scratch
- Generate Voiden Files progress survives tab switches — import state is persisted per tab so switching away and back no longer resets the progress display or the in-flight generation
fixed
- Postman and OpenAPI import buttons were not shown on large files loaded via streaming because tab.content was always empty until fully loaded
- Saving a streamable file wrote an empty string or a 512 KB truncated snapshot to disk, resulting in an empty file on reopen
- Large file save froze the app by serialising the entire file content in a single IPC message; now split into sequential 512 KB chunks
- Generate Voiden Files showed a 'Postman collection is empty' error on large JSON files because tab.content was not populated for streamable tabs; now falls back to reading from disk
v1.4.3
4/8/2026Multi-Request, Stitch Runner & Large Response Handling
Stable release introducing multi-request support, the Stitch workflow runner for batch-executing .void files, a redesigned streaming UI for WebSocket and gRPC, chunked large JSON response handling, file explorer performance improvements, and a range of editor and stability fixes.
added
- Stitch — workflow runner for batch-executing multiple .void files sequentially via the /stitch slash command, with glob include/exclude patterns, stop-on-failure, variable isolation, configurable delay between files, environment selection, and Excel export for run results
- Multi-request in a single file — multiple requests can coexist in one .void file using visual separators with color-coded borders; Cmd+Enter runs the focused section, Cmd+Shift+Enter runs all sections sequentially, with headers, body, and auth fully scoped per section
- Unified streaming UI — WebSocket and gRPC now share a common layout with a collapsible header showing protocol label, connection status and message stats, a compact message input toolbar at the bottom, and Cmd+Enter to send
- Cross-panel search — Cmd+F now searches across both the editor and response panel simultaneously, with highlights synced inside embedded CodeMirror editors
- Bottom panel layout for response viewer — move the response panel below the editor via the panel toggle; the right panel spans the full editor height while the bottom panel shares space with the terminal
- Open with Voiden — open .void, .json, .yaml, and other supported file types directly in Voiden via the OS "Open with" dialog
- Inline rename on duplicate — duplicating a file now immediately opens an inline rename input so you can name it in one step without needing to right-click and rename separately
- Developer settings — a new Developer section in settings with a toggle to show system logs, giving a real-time view of internal process timings for diagnosing slow operations
- Table cell autocomplete — header and query parameter table cells now show autocomplete suggestions for common header names and content types
- Request options block — new /options slash command for configuring per-request settings such as timeout and follow redirects
improved
- Large JSON response handling — huge JSON responses are now loaded in chunks instead of all at once to prevent UI freezes; syntax highlighting for large responses is opt-in and must be triggered manually to keep scrolling fast
- Code block max-height setting — a new setting lets you control how tall code blocks can grow before they scroll, so large responses don't push other content off screen
- File explorer lazy loading to handle large projects without performance degradation
- File link and search now load results progressively at a threshold to avoid overwhelming and hanging Voiden on large codebases
- Git panel reliability — the git panel no longer incorrectly refreshes on project change or window close events and now consistently reflects the correct repository state
fixed
- Editor highlight on file open — syntax highlighting for environment and runtime variables now applies correctly when a file is first opened, without requiring an edit or cursor movement
- Stitch runner not showing on unsaved or temporary tabs — Stitch is now accessible from any tab, not just saved .void files
- Files could not be attached and sent in FormData or Binary request bodies
- Renaming a file or block now triggers the update references dialog to keep all linked files in sync
- Downloads now use the filename from the server's Content-Disposition header instead of a random UUID
- Comments inside JSON blocks now parse correctly without causing errors
- Git clone now shows a progress indicator during the clone operation
v1.4.3-beta.1
4/2/2026File Explorer & Git Polish
Beta release improving file explorer performance with lazy loading for large projects, inline rename on duplicate, smarter file link and search loading, and a range of git and editor fixes.
added
- Inline rename on duplicate — duplicating a file now immediately opens an inline rename input so you can name it in one step, without needing to right-click and rename separately
- Developer settings — a new Developer section in settings with a toggle to show System Logs, giving you a real-time view of internal process timings to diagnose slow operations and share logs with the Voiden team for inspection
improved
- File explorer lazy loading to handle large projects without performance degradation
- File link and search file now load results progressively at a threshold to avoid overwhelming and hanging Voiden on large codebases
fixed
- Comments inside JSON blocks now parse correctly
- Renaming a file or block now triggers the update references dialog to keep all links in sync
- Git clone now shows a progress indicator during the clone operation
- Git panel no longer incorrectly refreshes on project change, window close, and similar events — it now reflects the correct repository state
v1.4.2-beta.1
3/25/2026Panel Layouts & Open With
Beta release adding a bottom panel layout for the response viewer, OS-level "Open with Voiden" support, and fixes for file upload in FormData/Binary bodies and random filenames on download.
added
- Bottom panel layout for response viewer — move the response panel below the editor via the panel toggle button; the right panel now spans the full editor height while the bottom panel shares space with the terminal
- Open with Voiden — open .void, .json, .yaml, and other supported file types directly in Voiden via the OS "Open with" dialog
fixed
- Files could not be attached and sent in FormData or Binary request bodies
- Downloads now use the filename from the server's Content-Disposition header instead of a random UUID
- Inline file references mixed with other text no longer add extra spacing after switching tabs
v1.4.1-beta.1
3/23/2026Stitch — Workflow Runner
Beta release introducing Stitch, a dedicated workflow runner for batch-executing multiple .void files sequentially with aggregated assertion results, a separate response panel, and full execution control.
added
- Stitch — workflow runner for batch-executing multiple .void files sequentially via the /stitch slash command
- Glob pattern include/exclude — configure which .void files to run using glob patterns
- Stop-on-failure — optionally halt the run on the first file or assertion failure
- Variable isolation — each file can run with a clean variable scope or share state across the run
- Configurable delay between files — add a pause between sequential executions
- Environment selector — choose which environment to use for the stitch run
v1.4.0-beta.1
3/23/2026Multi-Request, Streaming UI & Unified Search
Beta release introducing multi-request support with section-scoped execution, a redesigned streaming response panel for WebSocket and gRPC, unified cross-panel search, block import tracking, table autocomplete, and a range of editor and UX improvements.
added
- Request separators — multiple requests can now coexist in a single .void file, separated by visual dividers with color-coded left borders
- Color-coded sections — each request section gets a unique color indicator, carried through to the response panel for easy visual mapping
- Section-scoped execution — Cmd+Enter sends only the request your cursor is in; sections are fully isolated (headers, body, auth scoped per section)
- Run All — Cmd+Shift+Enter executes all sections in a file sequentially
- Stacked response panel — responses from multiple sections stack with section color indicators and auto-expand
- cURL paste — pasting a cURL/websocat/grpcurl command into a file with existing content now appends as a new section instead of replacing
- GraphQL multi-request — GraphQL requests now support the same multi-request separator infrastructure, including section-scoped response handling
- Unified streaming UI — WebSocket and gRPC message viewers now share common components (StreamMessageRow, StreamEventRow, StreamHeader) for consistent rendering
- Collapsible stream header — single header bar with protocol label, message stats, connection status, and all actions (Pause/Disconnect/Export)
- Compact stream input — message input is now a single toolbar row at the bottom with format selector, code editor, and Send button
- Cmd+Enter to send — pressing Cmd+Enter in the streaming input area sends the message
- Multi-request for sockets — WebSocket and gRPC slash commands are no longer singleton; multiple socket requests per file with separator support
- Cross-panel search — Cmd+F search now works across both the Voiden editor and the response panel simultaneously
- CodeMirror highlight sync — search matches are highlighted inside embedded CodeMirror editors (response body, headers, code blocks)
- Imported block detection — imported/linked blocks are detected by position, enabling proper section scoping for linked content
- External file sync indicator — new SourceSyncIndicator component shows when imported blocks are out of sync with their source file
- Import dependency store — centralized tracking of import dependencies across .void files
- Drag menu improvements — enhanced block drag menu with import/link capabilities
- Table cell autocomplete — headers and query parameter table cells now show autocomplete suggestions (e.g. common header names, content types)
- Request options block — new /options slash command for configuring per-request settings (timeout, follow redirects, etc.)
- Auto-generated block names — request blocks automatically generate descriptive names based on method and URL
- Response panel auto-expand — response panel automatically expands when a new response arrives
improved
- Document-native streaming layout — removed fixed-height container and footer bar; streaming responses now flow naturally with collapsible headers
- Theme-aware stream content blocks — message content uses --ui-surface with theme border for proper contrast across all themes
- Settings screen redesign — cleaned up layout with improved section organization
- Separator styling — theme-aware separator colors with light theme support via --separator-color
fixed
- Singleton block scoping — slash commands like /headers are now properly scoped per section, not per document
- Focus jumping between request editor and response panel when sending requests
- Terminal component styling cleaned up to match the active theme
v1.3.5
3/19/2026History, Scripts, AI Skills & Fixes
Patch release adding request history with replay, shell scripting for pre/post scripts, full Git workflow in GitUI, a customizable data directory, AI agent skill integration for Claude and Codex, a new Iris theme with full theme-aware syntax highlighting, and fixes for context menus, variable replacement, terminal cleanup, and response downloads.
added
- Request history tracking with configurable retention and replay per .void file
- Shell scripting support for pre and post request scripts
- Expanded GitUI to support a full Git workflow
- Customizable data directory for storing Voiden project files
- New Iris theme — a cool blue-gray light theme with magenta accent and crimson string syntax
- Theme picker updated to support the full new theme list including Iris
- Memory and CPU usage now visible in the status bar — real-time process footprint at a glance
- Voiden skill integration for Claude and Codex AI agents — AI agents can now understand and work with .void files, request blocks, and the Voiden plugin system natively
improved
- Rewrote all 5 themes (voiden, voiden-light, dracula, nord, tokyo-night) with a simplified, consistent 45-variable system replacing the old fragmented structure
- Syntax highlighting now properly connected to themes — CodeEditor and extensions use var(--syntax-*) CSS variables instead of hardcoded colors
- Full theme-aware CodeMirror setup — editor background, gutter, selection, and all syntax tokens pull from CSS variables
- Void block borders replaced with subtle theme-aware borders via --border, removing harsh white outlines
- Major styles.css rework — cleaned up CSS variable aliases and fixed --ui-line / --border resolution chain
- Fixed -webkit-font-smoothing antialiasing conflict causing incorrect font rendering
- Tuned font weights and rendering across light and dark themes
fixed
- Basic blocks context menu appearing on top of the About Voiden popup
- Two context menus stacking on top of each other simultaneously
- Recent project being replaced in the list instead of appended
- Downloaded response ignoring filename and extension from response headers
- Variables not always being replaced in request blocks
- Terminal window not closing when the process exits
v1.3.1
3/10/2026Community Extensions, Cookie Parser & Auto-Save Improvements
Stable release introducing community plugin support with install-from-zip and registry browser, OAuth2 improvements, variable tooltip previews, a new Cookie parser table, configurable auto-save timeouts, and per-tab response panel state persistence.
added
- Community extension support — install third-party plugins from a zip file or directly from the extension registry
- Extension browser with community, verified, and core extension categories
- Tooltip preview for environment and runtime variables — hover over any {{variable}} to see its resolved value inline
- OAuth2 Get Token flow updated to improve authorization code exchange reliability
- Auto-save timeout setting now applies to both instance save and inactive tab save
- Cookie parser table in the REST API core plugin — view parsed cookies from responses in a structured table
improved
- Individual tab response panel state is now maintained independently per tab
fixed
- Terminal double paste — characters were being sent twice in some terminal sessions
- Extension detail page not updating after disabling or uninstalling a plugin
- Community plugin install errors being silently swallowed with no user feedback
- Instance save and inactive tab save not respecting the configured auto-save timeout
v1.3.0-beta.1
3/5/2026Community Extensions, OAuth2 & Variable Previews
Beta release introducing community plugin support with install-from-zip and registry browser, OAuth2 authorization code flow improvements, tooltip previews for environment and runtime variables, and terminal reliability fixes.
added
- Community extension support — install third-party plugins from a zip file or directly from the extension registry
- Extension browser with community, verified, and core extension categories
- Tooltip preview for environment and runtime variables — hover over any {{variable}} to see its resolved value inline
- OAuth2 Get Token flow updated to improve authorization code exchange reliability
fixed
- Terminal double paste — characters were being sent twice in some terminal sessions
- Extension detail page not updating after disabling or uninstalling a plugin
- Community plugin install errors being silently swallowed with no user feedback
v1.2.1
3/4/2026Tab Stability & Response Persistence
Patch release focused on tab stability — response panel state and scroll positions now persist across tab switches, with smoother tab navigation and reduced editor flicker.
added
- Per-tab response panel node persistence — response section state now restores when returning to a tab
- Scroll position memory for both Voiden Editor and Code Editor during tab switches
fixed
- Main panel tab navigation glitches — switching tabs is now smoother with reduced editor re-initialization
- Tab content reload flicker when moving between open tabs
- Editor scroll restore inconsistency when switching between tabs
v1.2.0
3/3/2026Scripting, Navigation & UX Enhancements
Beta release introducing pre/post request scripting, YAML environment configuration, improved file explorer navigation, drag-and-drop file management, YAML content-type support, and response preview improvements.
added
- Pre & Post Script support on Request blocks for setup and teardown logic
- YAML-based environment configuration support for easier management of complex environment variables
- Response preview toggle on the response body sidebar
- Keyboard navigation in the sidebar file explorer
- Expand All and Collapse All buttons in the file explorer for convenience
- Drag and drop files into folders directly inside Voiden
- Drag and drop folders from the file explorer into Voiden
- Content-Type `application/yaml` support for request and response handling
- Faker.js parameter support and usage guidance for dynamic test data generation
fixed
- Selected file indicator sometimes showing multiple files highlighted simultaneously in the navigation pane
- "Close Project" option incorrectly appearing on subfolders — it now only appears on root project folders
- Postman collection import crashing with "Cannot read property of undefined" when variables are absent
- Command Palette reliability issues
- Fixed cURL copy to use current in-memory content instead of requiring a saved file, enabling quick sharing and debugging of unsaved requests
- Fixed settings panel unexpectedly scrolling to top when a setting is changed
v1.1.22
2/24/2026Timeout Settings & Startup Reliability
Patch release adding timeout configuration and streamlining the startup process to prevent race conditions.
added
- Timeout setting for requests
- Streamlined startup process to prevent race conditions
v1.1.21
2/23/2026Stability & Import Improvements
Stable patch release focusing on cookie handling, environment variable merging, import accuracy, and developer workflow improvements.
improved
- Improved cookie support and handling across requests
- Automatically quote URLs by default when importing collections
- Environment hierarchy merging — base, production, and nested environments now merge correctly, with proper override order consistently enforced across complex setups
- Support for importing the Runtime Variables block, making it easier to reuse runtime configurations across projects
- Copy any request as a cURL command for easier debugging, sharing, and reproducing requests outside the client
fixed
- Fixed OpenAPI imports incorrectly referencing absolute file paths instead of relative paths, eliminating portability issues across machines and environments
v1.1.20
2/13/2026New Windows Installer (NSIS)
Windows-only release migrating from Squirrel to NSIS installer for improved setup and update flow.
changed
- Switched Windows installer from Squirrel to NSIS for improved setup and update flow
v1.1.1
2/6/2026Bug Fixes & Update Flow Improvements
Bug fix release addressing multi-window state management, CLI improvements for Windows and Linux, and update flow enhancements.
fixed
- Fixed multi-window instance pile-up where closing a window did not properly clean up its state, causing accumulated orphan states
- Fixed CLI to display the correct version information
- Fixed `voiden` command not working on Windows and Linux to open projects or files
- Fixed right-click context menu not appearing on Linux Fedora
- Fixed code block content not wrapping properly in the Markdown preview plugin
changed
- Windows users will be migrated to version 1.1.20 which uses the new NSIS installer replacing Squirrel
- Improved update flow logic with error messages displayed as toast notifications in the bottom right
- Added download progress indicator in the UI during updates
- Smooth transition when switching between update channels
v1.1.0
1/19/2026Multi-Protocol Support, Multi-Window & Performance
A major release bringing GraphQL, WebSocket, and gRPC support alongside multi-window workflows, CLI automation, editor productivity shortcuts, and significant performance improvements.
added
- Multi-window support to work on multiple files or projects simultaneously
- CLI support for automating API workflows and integrating with CI pipelines
- GraphQL support alongside REST, gRPC, and WSS using the same file-based workflow
- WebSocket support for testing and documenting WebSocket APIs
- gRPC support for testing and documenting gRPC APIs
- OpenAPI validation to ensure requests match API specifications
- Editable `.env` files directly within Voiden
- Shortcut key (Ctrl + .) to open the drag/context menu (Copy, Cut, Delete, etc.)
- Separate actions for inserting blocks: Add block above (Cmd + Shift + ↑) and Add block below (Cmd + Shift + ↓)
changed
- Optimized rendering performance for large OpenAPI specifications by eliminating inefficient re-renders
- Improved handling of imperfect or non-strict API specifications
- Improved text contrast for error messages
- Replaced the single 'Add block' action with two focused options for adding blocks above or below
fixed
- Resolved performance lag when opening large OpenAPI files caused by unnecessary UI updates
- Resolved issues with importing Postman legacy collections that do not include variables when generating Voiden files
- Fixed Authentication Plugin issues where Basic Auth and OAuth1 encryption failed with environment and runtime variables
- Enabled scrolling on the Changelog and Welcome pages
v1.0.0
11/11/2025First Stable Release
Voiden reaches stable with full API testing, project management, native menus, linked blocks, CLI integration, Git branch management, and cross-platform support.
added
- Project management support
- Advanced request execution pipeline
- REST, GraphQL, Webhooks, and Postman import support
- Comprehensive settings panel and auth plugins
- Native macOS menu bar with full keyboard shortcut support
- Hamburger menu for Windows/Linux
- Linked block references across documents
- Command palette enhancements and new file creation commands
- Autosave support for unsaved files across restarts
- Voiden CLI binary for launching files and folders from terminal
- One-click CLI installation and uninstall from settings
- Git branch UI redesign with search, icons, and visual feedback
- Create new Git branches directly from search input
- Toast notifications for Git success and failure states
changed
- Git branch dialog redesigned to match Command Palette UX
- Improved keyboard navigation and hover feedback
- Enhanced CLI installation documentation across platforms
- Improved grip menu styling and paste validation
- Linked blocks now use relative paths for better portability
- Bottom panel default size increased for better usability
fixed
- Resolved editor copy-paste issues
- Fixed keyboard shortcut inconsistencies on Windows and Linux
- Fixed keyboard shortcuts inside CodeMirror blocks
- Fixed menu-triggered selection loss
- Fixed singleton block duplication issues
- Fixed autosave cleanup on startup
- Fixed CLI not opening folders when app is already running
- Fixed Git errors failing silently
- Improved JSON content-type detection
- Fixed slash command popup triggering unexpectedly
- Improved auto-update reliability
v0.10.7
7/8/2025macOS Intel Support & Bug Fixes
This release adds native support for Intel-based Macs and resolves several UI and feature-related issues from previous versions.
added
- Added native support for macOS Intel architecture
fixed
- Fixed issue with opening links in the in-app browser instead of the default browser.
- Resolved problems with the 'Duplicate File' option in the file explorer context menu
- Corrected issues with the 'Request Snapshot' feature in the response panel viewer
- Resolved the issue of not being able to retry requests when the API is not accessible.
v0.10.6
6/27/2025Enhanced Navigation & Linux Support
This release introduces productivity-enhancing features like file duplication and request snapshots, along with official support for Linux distributions (.deb and .rpm).
added
- Displayed app version in the UI footer for easier reference and debugging
- Added 'Duplicate File' option to the file explorer context menu
- Introduced 'Request Snapshot' feature in the response panel to capture the full state of a response
- Released official Linux support with downloadable .deb and .rpm installers
fixed
v0.10.5
6/7/2025Changelog Viewer & Stability Boost
Major updates to changelog and bug fixes
added
- In-app changelog viewer
- In-app links to Discord community and GitHub repository
fixed
- Resolved sync issues with large markdown documents
- Resolved issues with invalid markdown documents
- Fixed errors related to the JSON block and request execution
- Fixed the tab scroll issue on Windows and Linux
- Fixed hotkey combinations to behave correctly based on the OS
- Fixed the response headers table to reliably display key/value pairs in all cases
- Fixed newline indentation in the JSON block
- Fixed autofocus on JSON blocks
v0.9.30
5/1/2025Enhanced Terminal Support & Markdown Engine
Major improvements to terminal experience and Markdown rendering.
added
- Full Voiden Terminal CLI for offline editing and scripting
- Real-time Markdown preview with enhanced renderer
- Support for custom markdown extensions in `.void` files
fixed
- Resolved sync issues with large markdown documents
- Improved terminal input responsiveness
v0.9.25
12/22/2024Extension Support + Plugin Improvements
The plugin system gets powerful new hooks and UX updates.
added
- Extension framework for community-built plugins
- File attachment support inside blocks
- Pre-built plugins for Mermaid, Charts, and Swagger rendering
changed
- Plugin loading performance improved
fixed
- Fixed plugin unmount bugs
v0.9.20
12/8/2024File Support & Block Import
Managing reusable components just got easier.
added
- Attach external files (PDF, images, JSON) to request or doc blocks
- Import request blocks across `.void` files
- Cross-file block references and auto-complete
changed
- Block parser refactored for import/export awareness
v0.9.15
11/24/2024Themes, Shortcuts, and Polish
Aesthetic and UX updates across the board.
added
- New dark/light themes + theme switcher
- Keyboard shortcuts for block navigation and doc mode toggle
changed
- Unified editor styling for better contrast and readability
fixed
- Fixed color glitches in dark mode
v0.9.10
11/10/2024Request Blocks: Levelled Up
Request blocks get smarter, faster, and more dynamic.
added
- Support for chained request blocks (with response referencing)
- Built-in support for REST, GraphQL, and Webhooks
- Syntax-aware editor with real-time linting
fixed
- Retry bug in request block execution
v0.9.5
10/27/2024Docs Meet API Calls
Embed live API calls in docs like never before.
added
- Live request blocks embedded inside documentation
- API response previews with customizable templates
changed
- Improved block UI for inline execution
v0.8.9
9/29/2024Blocks Everywhere
Voiden gets block-first editing across the entire app.
added
- Universal block mode for all editor types
- New "logic block" for conditional flows and dynamic rendering
v0.8.5
9/15/2024Preview Everything
Instant feedback for your content and API calls.
added
- Live preview pane for Markdown + response data
- Toggle between raw and formatted response views
v0.8.1
9/1/2024Early Foundations
The groundwork for what’s to come.
added
- Basic programmable block support
- Markdown parser with block injection capability
- Early Git integration prototype