Release notes

The latest is version 0.43.18 — always available on the download page. venus can also check for updates from inside the app (menu → “Check for Updates…”).

0.43.27 latest · November 2026

Better crash diagnostics.

  • Rare native crashes now record their cause. A few low-level crashes previously left no explanation in the diagnostics log. Venus now captures the underlying reason at the moment it happens, so they can be pinpointed and fixed — and it’s hardened so a stray error in menu or keyboard-shortcut handling is logged and skipped instead of ending the app.

0.43.26 October 2026

Reliable copy & paste in the terminal.

  • ⌘C now copies what you actually selected. With several tabs open, ⌘C could copy an old selection from a different tab; it now always copies the selection in the terminal you’re working in.
  • Right-click Copy/Paste in the terminal. Right-click inside a terminal for a proper Copy/Paste menu — no more reaching for the Edit menu.

0.43.25 October 2026

A thank-you to our existing users.

  • A free year of Venus Pro, on us. If you were already using Venus before this release, every Pro feature stays unlocked on your device for a year — nothing to buy. Update to 0.43.25 and it applies automatically.

0.43.24 October 2026

Snappier file browsing over slower connections.

  • Folders you revisit open instantly. The file browser now remembers the last listing of each folder and shows it immediately when you go back to it (or press Up), refreshing in the background — a big difference on high-latency connections where every listing is a round trip.
  • One less round trip when opening Files and after an idle pause, so the first folder appears sooner. Uploads also now confirm an existing file directly on the server before overwriting, so a same-named file is never replaced without asking.

0.43.23 October 2026

Smoother file transfers, and full tab names on hover.

  • Faster, smoother Files during transfers. The transfer progress bar no longer makes the whole file browser stutter while a file is uploading or downloading — the progress now updates in place, so the file lists stay responsive (and you can keep browsing) even on large folders and fast connections.
  • See a tab’s full name on hover. When you have several tabs open and the titles are clipped, hover a tab to see its full name.

0.43.22 October 2026

The file browser recovers from dropped connections on its own, and you can resize its columns.

  • No more hang after an idle SFTP connection drops. If a Files connection is dropped while you’re away (server idle-timeout, sleep, or a flaky network), venus now detects it quickly and reconnects on its own — showing “Reconnecting…” and reloading the folder — instead of freezing on a dead connection.
  • Resizable file-browser columns. Drag the edge of the Size or Modified column to resize it; the Name column grows to fill the rest so long filenames are readable. Your column widths are remembered.

0.43.21 October 2026

If venus ever freezes, it now records what went wrong — privately, on your machine.

  • Freeze & crash diagnostics. If the window ever stops responding or venus crashes, it now writes a local diagnostics report (the frozen thread’s stack, or the crash details) to ~/Library/Application Support/venus/diagnostics.log and offers to reveal it on next launch. Nothing is uploaded — it stays on your machine, and you choose whether to send it to support. This helps us find and fix the rare freezes that need a force-quit.

0.43.20 October 2026

Reload a tab without touching the others.

  • Reload any tab. Each tab now has a ⟳ reload button (and ⌘R on macOS, plus a “Reload tab” command in ⌘K). Reloading reconnects that tab’s session — SSH/shell sessions reconnect, Files/Database/Remote Desktop tabs refresh — while every other tab keeps running. A half-typed, unrun SQL query is preserved across a Database-tab reload.

0.43.19 October 2026

A more native feel — the browser’s right-click menu on the app is gone.

  • No more web-style right-click menu. Right-clicking the window chrome (title bar, sidebar, tabs, terminal frame) no longer shows the WebView’s “Reload / Inspect” menu. Text fields and the terminal keep a proper native menu for copy and paste.

0.43.18 October 2026

Fixes uploads that failed when a file with the same name already existed.

  • Replacing an existing file over SFTP now works. Uploading onto a name that already existed could fail with “SFTP rename failed”. venus now replaces the existing file correctly (it’s swapped in only after your upload has fully arrived).

0.43.17 October 2026

Faster file transfers, folder-upload progress, and a replace/skip prompt.

  • Much faster SFTP transfers. Larger transfer buffers let the connection stay busy instead of waiting on round-trips — uploads especially are several times faster, and the gain grows on higher-latency links.
  • Folder uploads show progress. Uploading a folder now shows a real progress bar and transfer rate, and you can cancel part-way through a large file inside it.
  • Replace or skip when a name already exists. Uploading or downloading something whose name is already there now asks first — Replace (folders merge, same-named files overwrite) or Skip — instead of silently overwriting.

0.43.16 October 2026

File browser: see modified times, and jump straight to a session's folder.

  • Modified date now shows the time too. The Files list showed only the date in the Modified column; it now shows the date and time, so you can tell recent changes apart at a glance.
  • Open the file browser at a terminal's current folder. From an SSH session (including inside tmux), run “Open current folder in Files (SFTP)” from the command palette (⌘K) to open the file browser right at the folder that session is in — no clicking down the tree.

0.43.15 October 2026

Restored file-browser tabs reconnect properly.

  • Your SFTP/Files tab reconnects after a restart. When venus reopened a restored file-browser tab, it could get stuck on “Connecting…” or fail — because it wasn’t re-reading your saved password, key passphrase, or jump host. It now reconnects with the right credentials, just like your terminal tabs, and shows a Reconnect button if it needs your vault unlocked first.

0.43.14 September 2026

Windows gets a custom, branded title bar.

  • A proper venus title bar on Windows. Instead of the plain Windows title bar, venus now draws its own — the venus logo, your tabs and controls, and native-style minimize / maximize / close buttons, all in a single bar. It matches the clean look venus has on macOS.

0.43.13 September 2026

Cross-platform reliability: Windows & Linux fixes, plus macOS improvements.

  • Browsing SFTP folders can no longer crash the app. On Windows, a remote file with an unusual (non-Unicode) name could bring the whole app down mid-listing; it now skips that one entry cleanly and keeps your other sessions alive.
  • Cancelling a command now stops the whole job. Cancelling a build, script, or npm task terminates its child processes too, instead of leaving some running in the background holding ports.
  • Panels find your tools more reliably. Formatters, language servers, and tasks now pick up the same PATH your terminal uses, so tools installed via Homebrew, nvm, or rustup work in the side panels — not just the terminal. On Windows, npm-based tools (Prettier, TypeScript/Pyright language servers) now launch correctly.
  • Accurate disk usage on macOS. The resource dashboard now reads the real data volume, so it reflects true disk pressure instead of showing near-empty on a full disk.
  • Windows & Linux polish. Correct handling of Windows paths across the file browser, database and git panels, dev containers and recipes; graceful behaviour where a feature isn't available on your platform; and clearer guidance for updating on Linux.

0.43.12 September 2026

Windows support (beta), safer SFTP folder transfers, and licensing reliability fixes.

  • venus now runs on Windows (beta). A Windows installer is available from the download page. Panels that only make sense on a remote host — the resource dashboard, scheduled shell jobs, service discovery — now degrade gracefully on a local Windows machine instead of failing, and background helpers no longer flash a console window.
  • Folder transfers are now as safe as single files. Cancelling or interrupting a whole-folder upload or download no longer risks truncating an existing file — each file is written to a temporary name and swapped into place only once it completes, so an interrupted transfer never leaves a half-written or destroyed file behind.
  • Your Pro status is more resilient. Hardened the licensing checks so a transient read error at startup can never downgrade or overwrite a valid paid license, and a corrupt server-side revocation list now fails safe rather than silently letting revoked licenses through.

0.43.11 September 2026

Pro is now permanent for existing users, plus SFTP transfer controls and a friendlier paste dialog.

  • Venus Pro, permanently, for everyone already using venus. Every device that had venus installed before this release is now upgraded to Pro for good — no purchase, no expiry. Update to 0.43.11 and, the next time venus checks in, your Pro badge appears and stays. New installs continue on the standard trial.
  • Cancel an in-progress SFTP transfer. Uploads and downloads now show a Cancel button. Cancelling stops the transfer promptly and cleans up the partial file, so you're never left with a half-written result.
  • Live transfer speed in the file browser. While a file is uploading or downloading, the progress line now shows the direction and current speed (↑/↓ MB/s) alongside the bytes transferred — the same at-a-glance bandwidth readout the terminal has.
  • Your SFTP tab comes back on relaunch. When you quit and reopen venus, an open file-browser tab is now restored along with your terminal sessions, reconnecting to the saved host. Previously the file-browser tab was the only one that silently disappeared.
  • Keyboard-friendly multi-line paste confirmation. When you paste multiple lines into the terminal, the safety dialog now takes keyboard focus with Cancel selected by default — press Enter to cancel, Tab to move to Paste, Esc to dismiss. No more reaching for the mouse.

0.43.10 September 2026

Fixes the "New folder" button in the file browser.

  • "New folder" now works in the SFTP/file browser. The button that asks for a new folder's name did nothing — the naming prompt never appeared. It now opens a proper dialog where you type the name and hit Create, both for remote (SFTP) and local folders.

0.43.9 September 2026

Copy from tmux and vim now reaches your clipboard.

  • Clipboard support for tmux, vim, and remote apps (OSC 52). When a program running in the terminal copies text — a tmux mouse selection, a vim yank, anything that uses the standard OSC 52 clipboard sequence — venus now writes it to your Mac clipboard. Previously a copy made inside tmux stayed in tmux's own buffer and never reached the system clipboard, so pasting elsewhere gave your old clipboard. For tmux, enable it once with set -g set-clipboard on in your ~/.tmux.conf. (venus only ever sets the clipboard this way — it never lets a remote app read it back.)

0.43.8 September 2026

Public URLs for local ports, and a startup fix.

  • Fixed a blank window on launch. A build issue in 0.43.7 could leave the window blank white on startup, with no interface drawn. This release fixes it — and adds a safeguard so any future startup error shows a readable message instead of an empty window. If you were affected, updating clears it.
  • Public URLs — share a local port over HTTPS. A new "Public URLs" section in Services turns any local port into a public https://…trycloudflare.com address in seconds, powered by Cloudflare Quick Tunnels — great for sharing a dev server or previewing a webhook. No account or config needed; the tunnel is created on demand and closes the moment you stop it or quit venus. Each new port asks you to confirm before it goes public, and the URL is shown with one-click copy and open. Requires cloudflared (brew install cloudflared); venus tells you if it's missing.

0.43.7 September 2026

Terminal copy, made bulletproof.

  • ⌘C reliably copies your terminal selection. Copy now runs the moment you press ⌘C and grabs whatever is highlighted in the terminal — regardless of which layer drew the highlight — so a selected line always lands on the clipboard. Copy in text fields is unchanged.

0.43.6 September 2026

⌘C now copies from the terminal.

  • Copy works in the terminal. Fixed a bug where pressing ⌘C (or Edit → Copy) with terminal text selected copied nothing — leaving whatever you'd copied before on the clipboard. Copy now reliably grabs the terminal's selection, while copy in text fields keeps working as before.

0.43.5 September 2026

Terminal copy fix.

  • Reliable copy from the terminal. Fixed a bug where copying a terminal selection — especially while dragging to select, with copy-on-select on — could leave partial or wrong text on the clipboard. Copies now always capture the full, final selection.

0.43.4 September 2026

Remote Desktop hardening + reliability.

  • Per-session password on the remote desktop. Each Remote Desktop session now generates its own password, so on a shared host other local accounts can't reach your streamed desktop — it's protected end to end, on top of the SSH tunnel and localhost-only binding.
  • Always starts clean. Fixed a case where a restored desktop session could bring back a broken app, leaving a blank screen where the mouse moved but nothing could be typed or opened. The remote desktop now starts fresh every time.

0.43.3 September 2026

A thank-you to long-time users, and steadier trial handling.

  • A little something for early users. If you've been with venus since before this release, there's a small thank-you waiting the next time you open the app.

0.43.2 September 2026

A small terminal quality-of-life fix.

  • Inline suggestion accept moved to Shift+Tab. The dim command suggestion from your history is now accepted with Shift+Tab (or → / End), leaving plain Tab free for your shell's own completion — so typing a folder name and pressing Tab completes it, and Enter runs it.

0.43.1 September 2026

Remote Desktop refinements, plus two fixes from everyday use.

  • Remote Desktop, more solid. Reliable keyboard input on the remote desktop, a one-click End session button to shut the virtual display down cleanly, and no more spurious system password prompts on headless servers.
  • SFTP folder sync opens properly. The folder-sync window now appears as a normal centered dialog instead of overlapping the rest of the app.
  • Terminal Tab completes again. Pressing Tab in the terminal now runs your shell's own completion — and keeps focus in the terminal — instead of being captured, so Tab-then-Enter works the way you expect.

0.43.0 September 2026

A new way to reach a headless server: its desktop, right inside venus.

  • Remote Desktop over SSH. Open a graphical desktop on a headless Linux/Unix host straight from venus. A virtual display is started on the remote and streamed into a tab entirely through your existing SSH connection — no VNC port is exposed on the network, and nothing extra needs to be opened in a firewall.

0.42.0 September 2026

Another database-copy safeguard against silent value changes.

  • NULLs can't silently become generated ids. Copying a NULL into a MySQL AUTO_INCREMENT column would silently replace it with a new generated id. The copy now stops with a clear message instead — the same protection already applied to SQLite auto-generated keys.

0.41.0 September 2026

A reliability fix for Telnet connections.

  • Telnet panes can no longer get stuck open. If a Telnet peer stopped accepting data, sending a large amount of input could hang the connection so the pane couldn't be closed. It now detects a stalled peer and closes the session cleanly with a reason instead.

0.40.0 September 2026

Reliability and security fixes from the continued code review.

  • Cancelled remote commands never leave a secrets file behind. A cancelled command that used stored credentials could, in rare cases, leave a temporary credentials file on the remote host; it is now always removed.
  • No garbled output on a fast session start. Fixed a rare startup race where a burst of very early output could be spliced incorrectly and confuse the terminal display; early output past the buffer limit is now cleanly truncated instead.
  • Quieter after a dropped session. Typing into a pane whose connection has already dropped no longer raises a stray internal error.

0.39.0 September 2026

A four-reviewer bug hunt over the 0.38.0 database-migration changes fixed real regressions and closed one more injection vector.

  • No more false refusals on valid SQLite copies. The new NULL-primary-key safeguard could wrongly block a legitimate copy whose key genuinely preserves NULL. It now checks the target's actual key form and only refuses when a NULL would truly be replaced by a generated id.
  • Migration isolation narrowed to where it's needed. The concurrency fix now applies only to cross-engine copies; same-engine copies keep their previous consistent-snapshot behavior, so a column default that reads another table stays stable across the whole copy.
  • Booby-trapped-target protection extended. The copy now also refuses a target whose CHECK constraint reaches code through a user-defined type or domain, not just a direct function or operator call.
  • Comparison exports never drop their warnings. Ambiguity warnings are now included even when a comparison produced no rows to export.

0.38.0 September 2026

A second, deeper validation pass over the database-migration tools closed real data-safety gaps.

  • No silent primary-key corruption on SQLite→SQLite copies. A SQLite integer primary key that legally held a NULL could be turned into an auto-generated number during a schema-plus-data migration. The copy now stops with a clear message instead of silently changing the value.
  • Safer migrations when the target changes underneath. The freshly-created target is now re-checked under a lock that reliably sees the very latest state (PostgreSQL) and blocks a concurrent insert until the copy commits (MySQL), so a row slipping in mid-migration can no longer be quietly appended.
  • Migration refuses a booby-trapped target. If a target table carries a CHECK constraint that calls a non-built-in function or operator, the copy now refuses rather than letting that code run during insert.
  • Compare exports carry their caveats. When a comparison is flagged as ambiguous (e.g. MySQL can't tell a real NULL from the text "NULL"), the CSV/JSON export now includes that warning, so an exported "identical" result can't read as clean when it wasn't.

0.37.0 September 2026

The last of the database-migration audit fixes.

  • No silent binary corruption from SQLite. SQLite lets a BLOB column hold plain text; migrating such a value to a PostgreSQL/MySQL binary column used to reinterpret it (corrupting it). The migration now stops with a clear message so you can clean the source instead.
  • Clearer partial-zero-date handling. MySQL partial zero-dates like 2024-00-15 (month 00) now get the same friendly "no PostgreSQL equivalent" message as 0000-00-00, instead of an opaque driver error.

0.36.0 September 2026

More database-migration hardening from the audit.

  • Interval columns are flagged. Migrating a PostgreSQL interval to MySQL now warns that it maps to MySQL's TIME, which is limited to ±838 hours and can't represent months or days — so the narrowing is disclosed instead of silent.
  • Stronger fresh-target guarantee. A cross-engine copy re-checks, under an exclusive lock at write time, that the freshly-created target is still empty — closing a tiny window where another writer could have added rows between the safety check and the write.

0.35.0 September 2026

Safety and accuracy fixes for the database migration and comparison tools, from a full audit.

  • Migration rehearsal can't touch production. A rehearsal clones your database to test a migration safely — but if the source had a foreign table (a link to another database), the clone inherited it and a rehearsed migration could have written to that real remote system. Rehearsal now refuses up front when the source has any foreign table or server, before anything is created.
  • Truer data comparisons. Two values that only look equal after number-normalization — like 007 vs 7, or 1.0 vs 1 in a text column — are no longer hidden as "identical"; both stored values are shown and the count is flagged. And a comparison involving MySQL now warns that MySQL's output can't tell a real NULL from the literal text "NULL".
  • Consistent comparison target. A blank schema in table-compare now defaults to public for PostgreSQL, so both sides always read the same table instead of depending on each connection's search path.

0.34.0 September 2026

Two follow-ups from the interface review: a docked Tools panel and a safer tunnels list.

  • Pinned Tools panel docks properly. Pinning the Tools launcher as a side panel now makes room for it — the terminal shrinks and reflows beside it — instead of covering the right edge of your terminal.
  • Clearer port-forwarding. The Active tunnels list shows every SSH tunnel running in Venus, not just the current host's, and now says so with a reminder to check the route before stopping one — so you don't close another connection's tunnel by mistake.

0.33.0 September 2026

A round of UI polish from a full interface review, plus lighter live log streaming.

  • Clearer errors and warnings. Errors now show in a red banner (not the same green as "Broadcast on"); a saved-host change that fails to persist now tells you instead of silently reverting after restart; and the audit log no longer shows a read failure as an empty log.
  • Safer destructive actions. Delete, drop-stash, and remove-worktree buttons are now visibly marked as dangerous before you click.
  • Fewer dead ends. Disabled buttons explain why they're disabled — the commit button names what's blocking it, and project-only tools in the sidebar rail say "open a project first."
  • Small fixes: a working SSH session with a blocked latency probe no longer reads as "unreachable"; a filtered file list says "no files match the filter" instead of "empty directory"; the Container Logs icon is now distinct from Docker's; and disabled buttons no longer show a clickable cursor.
  • Lighter live logs. The log viewer now re-renders only the lines that changed as new output streams in, on top of the off-screen skipping added last release.

0.32.0 September 2026

Lighter log viewing for large buffers.

  • Only visible log lines are rendered. The log viewer and container logs now let the browser skip off-screen lines until you scroll to them, so a big buffer — up to the 50,000-line maximum — stays light instead of drawing every line at once. Wrapping, auto-follow, and "Jump to bottom" work exactly as before.

0.31.0 September 2026

Mark any API request header as secret — no more relying on the name to guess.

  • Secret headers, by choice. Each request header now has a Secret checkbox. Marking a header secret masks its value, redacts it from Copy-as-cURL, and keeps it out of the command line — so a custom credential header like X-Api-Key is protected even though its name doesn't look like a password.
  • Honest URL values. Query-parameter values are no longer shown masked, since they always travel in the URL; use a {{secret_variable}} for anything that must stay private in a URL.

0.30.0 September 2026

A sweep of forms and dialogs across the app — safer edits, clearer fields, fewer surprises.

  • No accidental credential loss. Editing a saved connection and switching to an auth method that needs no password now warns you before the stored credential is removed from your Keychain.
  • Confirm before big or destructive actions. "Run on many terminals" now confirms the command and how many terminals it targets; deleting a trigger, and overwriting or deleting a saved comparison, now ask first.
  • Close dialogs with Escape. Settings and License now close on Escape like every other dialog, and stacked dialogs close in the right order.
  • Cleaner, clearer forms. A show/hide toggle on the database password field; the connection host picker no longer silently shows the wrong host if one was deleted; number fields (scrollback, schedule interval/timeout) no longer snap to odd defaults; and a few inputs gained proper labels.

0.29.0 September 2026

Input fields stop auto-filling and auto-correcting what you type.

  • No more auto-filled values. The macOS webview no longer drops saved form or contact data (a past hostname, a username) into empty fields — the New Connection form, and every other input, now starts genuinely blank.
  • Show/hide password. The password and passphrase fields have a reveal toggle (also part of the 0.28 changes, now reaching everyone).

0.28.0 September 2026

Cleaner input fields and the last of the streaming-path trigger fixes from the review.

  • No more auto-correct in fields. The macOS text engine no longer auto-capitalizes or "corrects" what you type into any field — hostnames, usernames, paths, commands and SQL now stay exactly as entered.
  • Cleaner New Connection form. The host, username, and other fields no longer show made-up example values that looked pre-filled, and the password field now has a show/hide toggle.
  • Triggers catch large bursts. A big paste or a fast-scrolling build log — more than 256 lines arriving at once — is now fully scanned for triggers instead of being skipped as a whole.
  • No lost first output. A session's opening banner or first prompt is now shown even when it arrives in the split second before the pane finishes connecting, instead of being dropped.
  • Triggers cover the final line. Trigger matching now includes a session's last line at exit — a closing prompt or status line with no trailing newline — and is no longer cut short while earlier output is still being processed.

0.27.0 September 2026

Correctness fixes and a smoother, snappier interface, from a multi-agent review of the whole app.

  • Precise decimal diffs. The data-diff now compares numbers by their exact value, so equivalent forms (1, 1.0, 1e0) match while genuinely different high-precision decimals are reported as different — no more false "identical" from rounding.
  • Trustworthy comparisons. Cross-connection comparisons now use the same result parser as a normal query run: trailing empty rows are kept, a truncated side is clearly flagged as a provisional diff, and SQLite multi-statement output is read correctly instead of being misparsed.
  • Trigger highlights restored. Output-trigger line highlights in the terminal now render reliably.
  • Snappier typing and scrolling. The query-result grid, process monitor, and command palette no longer do needless work on unrelated keystrokes and hovers, keeping large result sets and process lists smooth.

0.26.0 September 2026

A round of correctness and safety fixes across several tools.

  • Safer saved data. Configuration (hosts, snippets, and more) is now written atomically, so a crash or a full disk while saving can no longer corrupt or truncate your existing library.
  • Command palette respects your mouse. Only a left-click activates a palette result — a right- or middle-click no longer connects a host or runs an action by accident.
  • Accurate data diff. Large integer values that exceed normal number precision are no longer mistakenly reported as identical, and comparing results with duplicate column names now asks you to alias them instead of silently comparing the wrong cells.
  • Robust global search. A single malformed saved item can no longer crash search and hide all your other results.
  • Fresh comparison results. Swapping or changing a database connection now clears the previous diff instead of showing it under the wrong labels.
  • Triggers work during the trial. Output triggers and notifications now fire during the Pro trial, not only with a paid license.

0.25.0 September 2026

Safer, resumable cross-engine migrations.

  • Resume an interrupted migration. If a cross-engine migration fails or is cancelled partway, re-running it now safely resumes the tables it had already created (and were left empty) instead of refusing them until you clean up by hand — while still only ever writing into tables this migration created.
  • Stronger fresh-target proof. Each target table this run creates is stamped with a unique marker at creation time, verified again right before any data is written, so a migration can never write into a table it did not create — even across identical-looking connections.
  • No stray actions during an apply. While a migration is running, Preview and the connection pickers are locked, and only one run happens at a time, so a mis-click can't detach or overlap a live migration.
  • More resilient on large schemas. A long catalog scan on one side no longer lets the other connection time out mid-migration.

0.24.0 September 2026

A correctness sweep for cross-engine database migration, plus a terminal fix.

  • Faithful cross-engine data copy. A batch of fixes to migrating between database engines: a MySQL JSON column now copies correctly (it was mis-encoded); a MySQL ON UPDATE CURRENT_TIMESTAMP column no longer stops its table from copying; a SQLite value physically stored as a non-integer under an INTEGER column is caught instead of being silently rounded into an integer target; and a table with many mid-sized rows no longer trips the transfer's size limit.
  • Same-server safety for migrations. The command that runs schema changes now always connects over TCP to the exact host and port you chose, so it can't diverge onto a local socket; and a fresh-target migration can no longer be confused between two different SSH hosts that happen to share the same host/port/database.
  • Clearer handling of key-less tables. Migrating a table that has no primary key now creates it with a clear note that the target is unkeyed, instead of doing so silently.
  • Terminal broadcast stays clean. With input broadcast across split panes, a program's automatic terminal replies (such as a cursor-position report) are no longer echoed into the other panes.

0.23.0 September 2026

A terminal responsiveness fix for SSH sessions under heavy input.

  • Closing a busy SSH pane is instant again. Pasting a large amount of input into a remote program that isn't reading its input could fill the connection's send buffer and stall the session — freezing new output and making the pane slow to close. Input is now buffered without blocking, so output keeps flowing and the pane closes immediately even while a big paste is still draining.

0.22.0 September 2026

A second security-and-reliability pass over the SSH command runner, from a Codex review.

  • Commands never run on a stale host. Pooled SSH connections are now matched to the exact host, port, user, and key they were opened with — so editing a saved host's address or username and running a command can no longer reuse the old connection and hit the wrong server or account.
  • A cancelled action stays cancelled. If you cancel (or a wrapper times out) an SSH command while it is still authenticating, it no longer fires after the connection finally opens — the run ends as cancelled without touching the remote.
  • Staged secrets are always cleaned up. Environment values staged for a remote command are removed even when the command can't start (a missing working directory, a failed launch, or a cancel) — no more stray temp file left behind.
  • Full command output. A fast-finishing local command no longer risks having its last bytes dropped; output is fully drained before the run is reported complete.
  • Saved API collections don't collide. Two collection saves happening close together can no longer overwrite each other's index entry.
  • Quieter teardown. Resizing a terminal pane whose session has already ended no longer raises a stray error.

0.21.0 September 2026

A dual-review reliability and security pass across the terminal, SSH auth, the API client, and cross-engine migration.

  • Terminal sessions stay put. A pending auto-reconnect timer could fire after you had already reconnected a dropped SSH session by hand — tearing down the live session and your running program. Reconnect timers are now cancelled the moment a session comes back, is closed, or the vault locks.
  • Key-passphrase prompts are safer. Prompts for multiple panes are now queued instead of stealing each other, a prompt is dismissed when you reconnect, and submitting a passphrase can no longer apply it to a pane whose connection changed underneath it.
  • Saved secrets are never dropped. When migrating a host's plaintext password into the Keychain, the plaintext is now removed only after the Keychain write succeeds — a failed write no longer loses the secret from both places. Decrypted vault values staged for a startup command are cleaned up even if the pane is closed mid-connect.
  • API client secrets stay out of process arguments. Secret variables used in a request body or URL are now delivered to curl through a private staged config file instead of the command line, where they were visible to other processes (and, over SSH, in the remote command). GraphQL request bodies are covered too.
  • Cross-engine migration fixes. MySQL copies that failed at connection time now work; a Postgres timestamp-with-time-zone is normalized to UTC before it reaches a MySQL column; and the translator now refuses, up front, schemas it cannot faithfully reproduce (unsigned auto-increment keys, text/blob primary keys, and over-length identifiers) instead of emitting DDL that fails mid-run.
  • Colorize respects your choice. If you deliberately turn the SSH color setup back on, it stays on across restarts.

0.20.0 September 2026

Migrate a schema and data across database engines.

  • Cross-engine database migration. Move a schema and its data between different engines — MySQL ↔ PostgreSQL, with SQLite as a source — translating types to the target dialect, with a preview of the generated DDL and any lossy conversions, dry-run by default, and a confirmation that names the exact target engine, host, and database. The source is only ever read. For safety, this first version migrates into new tables it creates (it won't write into a pre-existing table), so it's ideal for standing up a target on a different engine.

0.19.1 September 2026

A broad reliability pass across fifteen more tools.

  • Fixes across the workspace. A second deep review touched the webhook capture, session replay, CI reproduction, timeline, command history, snippets, notes, environment files, scratchpad, launch recipes, global search, SFTP sync, secret scan, log viewer, and API client — fixing Unicode corruption in truncated logs, a response-metadata forgery in the API client, secret-redaction gaps, save/clipboard races, and many smaller correctness issues.

0.19.0 September 2026

Connect with a passphrase-protected key, plus more reliability across git, tasks & automation.

  • Passphrase-protected SSH keys. Connecting with an encrypted private key that isn't in your ssh-agent now prompts for its passphrase (with an option to remember it) instead of just failing — and connection/auth errors surface clearly, a jump-host loop can't hang a connect, and a host whose first DNS address is dead still connects via a live one.
  • Git & worktrees. Rename diffs and staging respect the correct side, history parsing is robust to control characters and custom git config, stash actions target by full object id, and worktree runtime teardown races are fixed.
  • Tasks, scheduler, triggers & runbooks. Correct Make/justfile parsing, scheduler concurrency and cron day-step handling, trigger matching that ignores hidden terminal control sequences (with a bounded regex worker), and runbook parameter inference that ignores comments.

0.18.1 September 2026

A second reliability & security pass across hosts, containers, and sharing.

  • SSH host management. Inline validation for host/port/user/key-path, `~/.ssh/config` token expansion (%u, ProxyJump, IPv6), a jump-host cycle guard, saves that can't drop a stored credential, and clearer host-key prompts ("Connect once", Escape-to-reject). Plus a fix so a known_hosts file without a trailing newline can't be corrupted when a new host key is pinned.
  • Services, Docker & container logs. Commands are bounded and cancellable, discovery no longer presents incomplete results as authoritative, host-wide Docker actions no longer depend on the project directory, and error messages are classified correctly.
  • Sealed team sharing. Tightened validation (only known fields survive an import), sturdier multi-writer roster/grant handling, and clearer verification UI — with the existing trust guarantees preserved.

0.18.0 September 2026

Cancel a 2FA prompt, and a deep reliability pass on the editor and database explorer.

  • Cancel a 2FA / keyboard-interactive prompt. When a host asks for a TOTP/verification code, the prompt now has a Cancel button and closes on Escape — no need to submit a blank or wrong code to back out.
  • "Colorize remote output (SSH)" is now off by default. Most hosts already set their own colors in .bashrc, and the injected setup command echoed visibly in the shell — so Venus no longer injects it unless you opt in. (Already have it on and want it off? Uncheck it in Settings.)
  • Editor reliability. A thorough pass closed data-loss and race paths around tab switching during save, reload failures, line endings, format-on-save, and LSP rename/completion edits, plus stale change-gutter refreshes, search-state restoration, diff edge cases, and language-server sync/shutdown.
  • Database explorer reliability. Query results can no longer fabricate columns or row counts from vertical (\G), multi-statement, or non-tabular output; a capped result is no longer shown as complete; a trailing carriage return in a MySQL value is preserved through display and export; and connection/auth errors surface clearly instead of being swallowed.

0.17.0 September 2026

Keep your local shells alive across restarts, and control remote colors.

  • Restore local terminals into tmux. Opt in (Settings) and each local pane runs inside a stable tmux session, so reopening Venus reattaches to the same running shell — live processes and scrollback come back, not just the directory. Needs tmux installed; a full reboot still starts fresh (the OS ends the tmux server). The remote equivalent — per-host "Persistent session (tmux)" — already existed.
  • Colorize toggle now always works. "Colorize remote output (SSH)" could get stuck on with no way to turn it off. It's now a normal preference you can switch off — handy when your host's own .bashrc/dircolors already sets the colors you want.

0.16.1 September 2026

A close-button fix.

  • Window closes reliably with a dev-container running. When a worktree dev-container runtime was active, clicking the window's close button tore the runtime down but then couldn't finish closing the window. It now closes as expected.

0.16.0 September 2026

The editor autocompletes and renames — with the language server doing the thinking.

  • Completions. As you type, the editor offers completions from your project's language server — with kinds, signatures, and documentation, and snippet placeholders you can tab through. Composes with the built-in editing; triggered on the characters each server asks for.
  • Rename symbol. Press F2 to rename a symbol across your project. Every file the change would touch is shown for confirmation before anything is written, and the rename is strictly confined to the current trusted project — a language server can never steer an edit outside it. Off unless language servers are enabled.

0.15.0 September 2026

Language intelligence in the editor, and a top-to-bottom reliability & security pass.

  • Language server support (LSP). The editor now shows inline error and warning squiggles, type and documentation on hover, and go-to-definition — powered by your project's own language servers (TypeScript, Python, Rust, Go, and more). Off by default and enabled per trusted project; it only ever reads your code, and go-to-definition can't leave the project.
  • Hardening across every tool. A comprehensive review pass touched all of Venus, cross-checked by independent AI reviewers. Highlights: secrets can no longer slip into global-search results near a size limit; the API client, log viewer, and CI viewer bound and cancel their commands; the process monitor verifies a PID before it signals; destructive git actions (stash drop, worktree remove) re-confirm their exact target; sealed team sharing strips run-on-connect commands and credentials from imported hosts; environment files parse safely; and projects now save atomically so a bad write can't lose your list.

0.14.0 September 2026

The editor learns your git history — and can tidy up on save.

  • Git change gutter & inline blame. The editor marks added, modified, and removed lines against HEAD right in the gutter, and hovering a line shows who last changed it and when. Read-only — it never runs a git write — and works on local files and over SSH.
  • Format on save. Opt in to run your project's formatter (Prettier, gofmt, rustfmt, Black, clang-format) when you save. Off by default, only in projects you've marked trusted, prefers the formatter installed in the project, and never touches a file outside it. Or format on demand with Format document. If the formatter is slow or stalls, it's bounded and cancelled with your buffer kept intact.

0.13.0 September 2026

A front door to every tool, and move data between databases.

  • Tools launcher. A searchable, categorized grid of every tool — icon, name, and description — opened with ⌘., the command palette, or the new Tools button. Pin it open as a side panel if you like. No more hunting the icon rail.
  • Database migration & sync. Copy tables, a schema, or a whole database between two connections of the same engine — staging to prod, one provider or host to another — with a schema-diff preview, dry-run by default, an optional rehearse-on-a-throwaway-copy, and a confirmation that names the exact target. The source is only ever read. (Data copy uses your installed database driver via Python; schema preview needs neither.)
  • Under the hood. Groundwork toward Windows and Linux builds — no change to how venus behaves on macOS.

0.12.1 September 2026

A small fix.

  • Correct version in About. The About panel now shows the actual installed version (it had been displaying an old, hardcoded number regardless of updates).

0.12.0 September 2026

Put your routine commands on autopilot.

  • Command scheduler. Run a saved command, snippet, or runbook on a schedule (an interval or a simple cron), with per-run history and a notification on failure. Runs while venus is open; scheduled SSH jobs connect non-interactively and fail closed (they never silently trust a changed host key or hang on a prompt).
  • Cross-platform groundwork. Under-the-hood work toward Windows and Linux builds — no change to how venus behaves on macOS.

0.11.0 September 2026

Operate whole fleets, search everything, and go deeper on your data — with a safety net.

  • Run across hosts. Run a command, snippet, or runbook non-interactively across a whole group of SSH hosts at once, with a per-host results grid, a confirm that names every target, cancel, and re-run-failures.
  • Dangerous-command guard. A confirmation before venus runs a clearly-destructive command on your behalf (rm -rf /, DROP DATABASE, force-push, and friends), naming the target.
  • Import from ~/.ssh/config. Bring your existing SSH hosts (and their proxies/keys) into venus in a couple of clicks, deduped against what you already have.
  • Remote resource dashboard. CPU, memory, disk, load, and uptime across a group of hosts at a glance.
  • Global search. One search across your hosts, snippets, notes, runbooks, saved queries, projects, and command history.
  • Database explorer, deeper. An interactive ER/schema diagram, and a cross-environment data diff to compare a query or table between two connections (staging vs prod).
  • Multi-container logs. Tail and filter logs from several Docker containers or Kubernetes pods at once in one merged, color-by-source view.

0.10.0 September 2026

Edit remote files in place, learn the shortcuts, and get more out of the database explorer.

  • Edit remote files over SSH. Open a file from the SFTP browser straight into the built-in editor and save it back over SFTP — permissions preserved, with a warning if it changed on the server underneath you.
  • Keyboard-shortcut cheatsheet. Press ⌘/ (or find it in the command palette) for a searchable list of every shortcut.
  • Database explorer, deeper. Per-connection query history, saved queries, one-click CSV/JSON export, and a read-only schema overview of your tables and columns.
  • Guided first run & "What's new". A short welcome on first launch, and a concise summary of what changed after each update.
  • Under the hood. Stronger SSH host-key handling — an unreadable known_hosts is now flagged as unverifiable instead of quietly treated as a new host — plus more honest vault error handling.

0.9.2 September 2026

Small keyboard polish across the app.

  • Press Escape to close dialogs. The upgrade prompt, host import, passcode prompt, and update dialog now close with the Escape key, matching the rest of the app.

0.9.1 September 2026

A small fix: the “Upgrade to Team” button in sealed sharing now opens the correct pricing page.

  • Correct upgrade link. The Team-tier prompt in sealed sharing pointed at an old address; it now opens venus.tensordata.com/pricing.html.

0.9.0 September 2026

Run inside your dev container, share with your team more safely, and bind richer environment profiles.

  • Dev Container execution. Point a project at its devcontainer.json and run its tasks, terminals, and commands inside the container — same tools, containerized runtime. Opt-in per project, only on trusted projects.
  • Safer team sharing. Sealed sharing now pins each teammate's key on first sight and raises a prominent alarm if a key ever changes, so a compromised sync channel can't silently swap a recipient. Creating a shared roster or grant is correctly gated to the Team tier. (Team tier.)
  • Richer environment profiles. A launch profile can now bind a saved API environment (not just an SSH host), and reproducing a CI failure opens the checked-out worktree for you.

0.8.1 September 2026

A polish release from real user feedback — the window behaves like a native macOS window again, and SSH logins keep their welcome.

  • Move, tile, and zoom the window. The window can be dragged anywhere, snapped to a screen edge for tiling, and zoomed by double-clicking the title bar — all restored to standard macOS behavior.
  • SSH login messages are preserved. Connecting to a host no longer clears the screen, so your server's message-of-the-day, last-login line, and banners stay visible.

0.8.0 September 2026

Deeper into your team, your data, and your CI — plus a way to see what just happened.

  • Team sharing is here. Share a host or snippet with a teammate as a sealed, end-to-end-encrypted, revocable capability — the server never sees it in plaintext. (Team tier.)
  • Debugging timeline. Opt-in, on-device capture of what happened across your tools — task runs, API requests, SQL, and pinned logs — with a redacted export to hand off an investigation.
  • CI failure → local reproduction. Pull a failed GitHub Actions run's logs, see the failing step, and get an approximate local reproduction in a worktree.
  • Migration rehearsal. Test a schema change on a throwaway copy of your database before you run it for real, then see exactly what changed — the copy is always cleaned up.
  • Worktree runtime isolation. Give each branch its own ports, Compose project, and optional throwaway database so parallel branches (or coding agents) don't collide.

0.7.1 September 2026

  • Fixed the account links. "Manage subscription" and "Upgrade to Pro" now open the correct pages on venus.tensordata.com.

0.7.0 September 2026

The developer workspace goes deeper — into your containers, your whole project stack, and (as a foundation) your team.

  • Container & pod shells. Open a real terminal into a Docker container or a Kubernetes pod — with your themes, history, and tools — and stream its logs into the log viewer.
  • Launch recipes & environment profiles. Start your whole stack (database → backend → frontend → tunnel) in one action, with readiness checks and clean teardown — and switch every tool (SSH, API, Docker, Kubernetes) to the same target with a single profile.
  • Project doctor. Before you hit an opaque failure, see why a project won't run here — tool versions, missing env vars, occupied ports, Docker availability — each with an actionable fix.
  • Team tier (foundation). The cryptographic groundwork for sealed, end-to-end-encrypted sharing of hosts and snippets with teammates — revocable, and never readable by the server. The sharing interface arrives next.
  • Updates you won't miss. A new version now shows a clear update prompt instead of an easy-to-overlook banner.

0.6.0 September 2026

A big release — a wave of new developer-workspace tools across the terminal, editor, database, and API client, plus new panels for runbooks, sync, and webhooks.

  • Terminal. Native command-completion notifications (get pinged when a long build finishes or fails), session recording & replay (kept private, on your device), and a global command history you can search across every host.
  • API client. GraphQL support (query editor, variables, schema introspection) and request collections with variable capture, chaining, and pass/fail assertions.
  • Database. Turn any query result into inline charts & pivots, and diff two schemas with an ER diagram and review-only migration SQL.
  • Editor. A real 3-way git merge-conflict resolver — resolve conflicts per-hunk instead of editing raw markers.
  • Vault secret injection. Reference a vault secret as ${vault:NAME} in a task, .env, or SSH startup command — resolved in memory at run time, never written to disk, history, or logs. Manage secrets from Settings.
  • New tools. Executable runbooks (runnable, trust-gated markdown), SFTP folder sync & watch-and-upload, local webhook capture & replay, and a git secret scanner that flags credentials before you commit.
  • A polished UI pass across the sidebar, command palette, settings, and tabs.

0.5.1 September 2026

  • Runtime hardening. Trimmed venus's macOS hardened-runtime entitlements to the minimum the app actually needs, shrinking the attack surface.
  • Cloud sync. Starting a new cloud-sync setup now requires a Pro or Team license. Devices already syncing are unaffected.

0.5.0 September 2026

A security & reliability release. A broad, independent security review — across the app, its backend, and the licensing service — hardened venus end to end and closed a range of issues.

  • Stronger by default. venus now runs its interface under a strict Content-Security-Policy — a defense-in-depth layer on top of its existing, careful input handling.
  • Trial & licensing fixes. The 7-day Pro trial now correctly unlocks every Pro feature while it is active, and license changes (including revocation) apply reliably.
  • Vault. Setting or changing the vault passcode now requires a stronger passcode. Existing passcodes keep working.
  • Hardening across the tools. Input-validation and data-safety improvements across the database explorer, cloud sync, API client, and logging — closing edge cases found in the review.
  • Open-source attribution. venus now ships a complete third-party license notices file for its open-source components.

0.4.1 September 2026

  • Database Explorer is now a tab. It opens as a first-class tab in the tab bar instead of a pop-up — so it stays put beside your terminals, and your connections, schema tree, and query results persist as you switch tabs.

0.4.0 September 2026

  • New left activity bar. The workspace panels moved from the crowded titlebar into a clean vertical icon rail on the left, grouped and labelled — one click to any tool.
  • Process monitor. A live, sortable list of processes on your Mac or a remote SSH host — CPU, memory, and RSS — with filter, auto-refresh, and a guarded kill/force-kill.
  • Log viewer. Follow a file (tail -f), journalctl, or docker logs live, with a bounded buffer, pause, and a regex filter — local or over SSH.
  • Markdown preview. Preview .md files right beside the editor, rendered through a strict, security-audited allowlist sanitizer.
  • Hardening. A broad cross-validation pass across the new panels and the API client, database explorer, and environment manager — closing data-loss, correctness, and security edge cases.

0.3.1 September 2026

  • Fixed a blank screen on first launch. On a fresh install with no project open yet, the app could come up to a blank white window. Resolved — venus now launches straight to its normal window.

0.3.0 September 2026

venus grows from a terminal & SSH client into a terminal-first developer workspace. Open any folder — on this Mac or on a host over SSH — as a project, and a suite of developer tools is right there, working the same whether your code is local or remote.

  • Projects. Point venus at a directory (local or on a remote host) and it becomes a project with its own terminals, files, environment, and tasks.
  • Code editor & file tree. A real editor with syntax highlighting for many languages and a project file tree — with safe saves that warn before overwriting a file changed on disk, over SFTP as well as locally.
  • Git & worktrees. Status, stage, commit, branches, and diffs from a dedicated panel, plus management of Git worktrees and agent workspaces — local or over SSH.
  • Task runner & project search. Save and run your common commands with streamed output and a stop button, and search the whole project fast (ripgrep/grep) with jump-to-result in the editor.
  • Database explorer. Browse schemas, tables, and columns and run SQL against PostgreSQL, MySQL, or SQLite — including databases reachable only over SSH. Passwords stay in your Keychain.
  • API client & Docker. Send REST requests and inspect responses beside the services they talk to, and manage containers, images, and logs on your machine or a remote Docker host.
  • Environment manager. Edit project environment variables and .env files directly, scoped to each project.
  • Persistent remote sessions. Opt in per host to keep a remote shell (via tmux) running across disconnects, so a reconnect drops you back into the same session and scrollback.
  • Signed & notarized. venus is now signed with an Apple Developer ID and notarized by Apple, so it installs and opens with a normal double-click — no right-click workaround — and in-app auto-updates apply cleanly.
  • Security & reliability. Remote command secrets are staged in a private, 0600 file rather than the process command line, terminal copy is more reliable, and a broad cross-validation pass hardened the new panels against data-loss and edge cases.

0.2.1 September 2026

  • Fixed terminal copy. Copy-on-select and the copy shortcut (⌘C; plain Ctrl+C stays the shell interrupt) now use the native clipboard reliably.
  • Reliability. Assorted stability fixes across sessions and the connection editor.

0.2.0 September 2026

  • Cloud sync (opt-in, end-to-end encrypted, Pro). Sync your hosts, snippets, settings, and workspaces across your Macs with a single sync code. Everything is encrypted on your device — the server only ever stores unreadable ciphertext, and secrets stay in your Keychain.
  • More ways to connect. Telnet and a Serial console join SSH and local shells, plus a dynamic SOCKS proxy (ssh -D) in the forwarding panel.
  • Stronger security. SSH certificate authentication, plus optional Touch ID as a convenience unlock for the encrypted vault (macOS). Note: today the unlock passcode is stored with macOS login-Keychain protection — OS-enforced biometric gating of the stored secret is not in place yet.
  • Faster in the terminal. Host tags with keyboard-first filtering, per-host startup commands, a “Run on many hosts…” action, ⌘R command-history recall, and local inline command autosuggestions.
  • Quality of life. Session focus mode, a richer native About panel, in-app update checks, and connection-editor and reliability fixes.

0.1.0 initial release

  • Local terminal with tabs and split panes, truecolor and WebGL rendering, themes.
  • SSH host manager — key/agent/password auth, jump hosts (ProxyJump), host-key verification.
  • Dual-pane SFTP file manager with drag & drop, recursive transfers, permissions, preview, and an in-app editor.
  • Local and remote port forwarding, reusable snippets, a ⌘K command palette.
  • Encrypted vault (Argon2id + XChaCha20-Poly1305), workspaces, and session restore.

venus runs on macOS (Apple Silicon, requires macOS 12 (Monterey) or later), Windows (10/11, 64-bit), and Linux (x86-64) — Windows and Linux are recent betas. Questions? info@tensordata.com.