Skip to content

Releases: binaricat/Netcatty

v1.1.81

Choose a tag to compare

@binaricat binaricat released this 19 Aug 02:47
81dce5a

✨ Release Highlights

Netcatty v1.1.81 adds App Lock (password plus Touch ID / Windows Hello), SFTP archive extract, OSC desktop notifications, a Spanish UI locale, and a cluster of terminal copy / SSH / AI reliability fixes.

🔒 App Lock

  • Settings can enable App Lock with a password, idle timeout, lock-on-background, and a title-bar lock button. Locked windows hide session details, block shortcuts, and queue ssh:// deep links until unlock (#1609).
  • macOS Touch ID and Windows Hello can unlock; optional auto-prompt on reopen. A forgotten-password reset is available from the lock screen.
  • The lock overlay still lets you drag the window; unlock controls stay clickable (#3059).

📂 SFTP extract and bookmarks

  • Right-click Extract here for zip, tar, tar.gz / tgz, tar.bz2, tar.xz, gz, bz2, and xz on remote and local panes (#3042).
  • Bookmark popover closes as soon as a saved path is selected (#3055).

🔔 Terminal notifications, copy, and input

  • OSC 9 / 777 / 99 desktop notifications for remote jobs (Settings → Terminal → Behavior), including hibernated sessions; click the toast to jump back (#3037).
  • History-preview copy works while vim owns the screen; wrap-boundary spaces survive copy; SearchAddon matches are not copied (#3035, #3036, #3038).
  • Previous-line keyword highlight survives Enter chunks that carry a bare CR; hidden focus-mode panes stay full-size so \r progress no longer floods the buffer (#3040, #3048).
  • Esc+. is passed through for readline yank-last-arg (#3047).

🔌 SSH, snippets, and i18n

  • TERM-SSHD transports are not idle-parked; Copy Tab / SFTP-held last-close reuse is confirmed first (#3030).
  • Bastion / PAM products can launch Netcatty with PuTTY-style CLI args (-ssh, -P, -l, -pw) (#3044).
  • Snippet shortkeys ignore disabled app shortcuts when checking conflicts (#3029).
  • Neutral Spanish (es) UI locale (#3008).

🤖 AI, MCP, and Grok

  • Grok models expose reasoning-effort selection and keep legacy model / effort choices (#3056).
  • Active thinking streams are no longer aborted at 2 minutes while tokens are still arriving (#3052).
  • SSE data: lines without a space after the colon are accepted (#3027).
  • Cursor CLI login on Windows cmd shims; MCP no-arg tools accept omitted arguments (#3039, #3050).

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

Code signing policy

Netcatty is applying to the SignPath Foundation open-source program. Once
approved, covered Windows release artifacts will use Free code signing provided by SignPath.io, certificate by SignPath Foundation.
See the
Code signing policy
and Privacy policy.

What's Changed

  • Update Nix release metadata for v1.1.80 by @netcatty-bot in #2998
  • feat(i18n): add neutral Spanish (es) UI locale by @difagume in #3008
  • chore: update star history charts by @github-actions[bot] in #3009
  • fix(ai): accept SSE data lines without a space after the colon by @binaricat in #3027
  • fix(snippets): ignore disabled app shortcuts in shortkey conflicts by @binaricat in #3029
  • fix(ssh): do not idle-park TERM-SSHD transports by @binaricat in #3030
  • fix(terminal): copy history preview while vim owns the screen by @binaricat in #3035
  • fix(terminal): keep wrap-boundary spaces when copying by @binaricat in #3036
  • fix(ai): detect Cursor CLI login on Windows cmd shims by @binaricat in #3039
  • fix(terminal): do not copy SearchAddon match selections by @binaricat in #3038
  • feat(terminal): show desktop notifications for OSC 9/777/99 by @binaricat in #3037
  • fix(terminal): keep previous line highlighted when the Enter chunk carries a bare CR by @binaricat in #3040
  • feat(sftp): add right-click extract for archives by @binaricat in #3042
  • feat(ssh): accept PuTTY-style CLI args from bastion hosts by @binaricat in #3044
  • feat(terminal): pass Esc+. through for readline yank-last-arg by @binaricat in #3047
  • fix(terminal): keep hidden focus-mode panes full-size to stop \r progress spam by @binaricat in #3048
  • fix(mcp): accept omitted arguments for no-arg tools by @binaricat in #3050
  • fix(ai): do not abort active thinking streams at 2 minutes by @binaricat in #3052
  • Feat: 添加应用锁屏功能 by @Ryanisgood in #1609
  • fix(sftp): close bookmark popover after path selection by @binaricat in #3055
  • fix(ai): support Grok Build reasoning effort by @binaricat in #3056
  • fix(app-lock): keep window drag region on lock overlay by @binaricat in #3059

New Contributors

Full Changelog: v1.1.80...v1.1.81

v1.1.80

Choose a tag to compare

@binaricat binaricat released this 14 Aug 19:47
fe8344e

✨ Release Highlights

Netcatty v1.1.80 makes the AI composer stay responsive while you type, finishes the keyword-highlight flicker work, and hardens SFTP replace / reconnect plus a few terminal transfer and settings gaps.

🤖 AI composer stays responsive

  • Expanding the chat panel and typing the first characters no longer hitch: Streamdown / Shiki wait until the composer is idle, history stays plaintext until the renderer is warm, and the composer stays mounted on hidden retained panels (#2993, #2997).
  • The textarea is uncontrolled — per-keystroke draft flushes and ChatInput chrome re-renders are gone. Send still reads the live box, then clears immediately so the last prompt does not linger (#2995, #2996).
  • Before an agent injects a command into an interactive PTY, unfinished prompt-line input is discarded so the wrapper is not concatenated onto what you already typed (#2982 / #2962).
  • Windows OpenSSH AI exec detects PowerShell / cmd instead of falling through to a bash wrapper (#2960).

🔦 Keyword highlight and search

  • Existing highlighted rows are no longer repainted on ordinary Enter / output; quiet catch-up recolors offscreen first and refreshes the viewport once (#2951, #2994).
  • Esc / close / clear no longer leaves yellow search cells behind, including WebGL atlas stains and decorations that revived after reset (#2986, #2981 / #2980).

📂 SFTP replace and reconnect

  • Conflict Replace keeps the remote file so mode bits (e.g. +x) survive upload; a missing destination is treated as no-conflict instead of a hard lstat error (#2955, #2991).
  • The SFTP side panel rebinds after SSH Start-over reconnect instead of holding a stale browse channel (#2958).

⌨️ Terminal, transfers, and connect UX

  • Large ZMODEM rz uploads wait for a real transport drain, so Windows SSH no longer drops the session after a flood (#2968).
  • Alternate-screen Shift+Enter sends Kitty CSI-u so Codex sees a real shift-enter; sudo autofill stays off on Shift+Enter broadcast targets (#2975).
  • Connecting progress only moves forward — the bar no longer rewinds when hop / phase / TCP-dial state changes (#2989).
  • Mounted-disk capacity scales into T / P units (136.37G/6.93T instead of 118736.4G) (#2949).

🗂️ Vault, settings, and system

  • Scripts can target dynamic groups by path — hosts added later match automatically (#2897).
  • Settings → System → Session Restore can open a local terminal on launch when nothing is restored (#2965).
  • Closing auto-sync is no longer undone by a later version save rewriting stale autoSync: true (#2978 / #2976).
  • System overview shows cumulative interface RX / TX traffic alongside live rates (#2953).

✨ Smaller polish

  • macOS 16×16 / 32×32 icons lose the bright one-pixel frame (#2957).
  • Settings system footer hints have room under cards (#2990).

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

Code signing policy

Netcatty is applying to the SignPath Foundation open-source program. Once
approved, covered Windows release artifacts will use Free code signing provided by SignPath.io, certificate by SignPath Foundation.
See the
Code signing policy
and Privacy policy.

What's Changed

  • Update Nix release metadata for v1.1.79 by @netcatty-bot in #2948
  • feat(terminal): scale mounted-disk capacity into T and P units by @atoz03 in #2949
  • feat(vault): 添加动态组路径支持用于自动化脚本 by @yintian710 in #2897
  • fix(mac): remove bright frame from small icons by @LJAYi in #2957
  • fix(terminal): avoid keyword highlight flicker by @binaricat in #2951
  • fix(ai): detect Windows OpenSSH shell for PTY exec wrappers by @netcatty-bot in #2960
  • fix(zmodem): wait for transport drain on large rz uploads by @netcatty-bot in #2968
  • fix(sftp): preserve remote permissions on upload replace by @netcatty-bot in #2955
  • fix(sftp): rebind side panel after SSH start-over reconnect by @netcatty-bot in #2958
  • fix(ai): clear unfinished terminal input before agent inject by @binaricat in #2982
  • fix(terminal): prevent search highlights from reviving after reset by @netcatty-bot in #2981
  • chore(ci): keep Cursor automation on triage only by @binaricat in #2983
  • fix(terminal): send CSI-u Shift+Enter on alternate screen by @netcatty-bot in #2975
  • fix(cloud-sync): stop version saves from re-enabling auto-sync by @netcatty-bot in #2978
  • fix(system-manager): show interface RX/TX total traffic on overview by @netcatty-bot in #2953
  • feat(settings): add startup landing preference for local terminal by @netcatty-bot in #2965
  • fix(terminal): drop leftover search highlights after Esc by @binaricat in #2986
  • fix(terminal): keep connection progress from rewinding by @binaricat in #2989
  • fix(settings): give system footer hints space under cards by @binaricat in #2990
  • fix(sftp): treat IPC-wrapped lstat absence as no conflict by @binaricat in #2991
  • fix(dev): do not reload the app on stale Vite optimize 504s by @binaricat in #2992
  • fix(ai): stop first-type hitch after expanding the chat panel by @binaricat in #2993
  • fix(terminal): refresh keyword catch-up once on tall viewports by @binaricat in #2994
  • fix(ai): keep composer typing off the draft notify path by @binaricat in #2995
  • fix(ai): clear the composer as soon as a message is sent by @binaricat in #2996
  • fix(ai): keep ChatInput chrome still while typing by @binaricat in #2997

Full Changelog: v1.1.79...v1.1.80

v1.1.79

Choose a tag to compare

@binaricat binaricat released this 12 Aug 11:43
aced2a9

✨ Release Highlights

Netcatty v1.1.79 tightens terminal keyword highlighting, hardens SFTP (sudo / virtual root), and fixes a cluster of SSH reconnect and AI provider-URL issues.

🔦 Keyword highlight

  • Idle Enter no longer treats Ubuntu RTT onScroll (before buffer dims update) as a user scroll, so still-visible keyword matches do not flash (#2931, #2879).
  • Prompt redraw after idle Enter mutes decoration dispose/apply for the Enter guard window, avoiding an xterm full-viewport repaint that made custom rules (e.g. ~ / #) flicker.
  • End / jump-back-to-bottom during the Enter guard still scans immediately by tracking prior scrollback browsing; sustained command output lifts the mute early via write-burst detection.
  • Earlier Enter-guard work for bottom-pinned echo deferral is included (#2880).

📂 SFTP: sudo, virtual root, and session reuse

  • Sudo SFTP can reuse the existing SSH session (including MFA-aware paths) and aligns session-backed open with openSftp fallbacks (#2938, #2945).
  • Virtual-root sessions, provisional root listing, and home-candidate recovery when realpath root is not listable (#2934, #2941).
  • Side-panel auto-connect dedupe edge cases fixed.

🔌 SSH reconnect & terminal

  • Parked reconnect no longer restores a stale CWD; Dropbear server-stats stay safe; connect scripts rerun cleanly on manual reconnect (#2917, #2932, #2928).
  • Terminal font shortcuts / focus routing, command popups after vault hydration, docker/tmux popup timeout, and theme header button alignment (#2906, #2929, #2937).

🤖 AI providers

  • Anthropic-compatible Base URL only gets /v1 appended when the URL is bare — custom paths are no longer double-prefixed (#2946 / #2944).
  • host_open session lifecycle hardened.

📝 Notes & polish

  • Notes tree width resize is driven from the DOM for smoother drag; narrow sidebar titles ellipsize correctly (#2909, #2908).
  • Workspace host-drop focus targets, port-forward panel polish, macOS small app icon, and assorted system-manager mount filters.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

Code signing policy

Netcatty is applying to the SignPath Foundation open-source program. Once
approved, covered Windows release artifacts will use Free code signing provided by SignPath.io, certificate by SignPath Foundation.
See the
Code signing policy
and Privacy policy.

What's Changed

Full Changelog: v1.1.78...v1.1.79

v1.1.77

Choose a tag to compare

@binaricat binaricat released this 10 Aug 17:03
8856c7e

✨ Release Highlights

Netcatty v1.1.77 is a productivity-and-stability release: multi-tab shell performance is reworked, System Manager grows Ports/Services panels, workspace AI chat survives merge/dissolve, Notes paste/rendering is much closer to GitHub README quality, and Linux deb/rpm/pacman packages finally get in-app auto-update.

⚡ Faster multi-tab shell

  • Terminal hot props are isolated and Host-island mega-subscribers are removed so theme, CWD, title, and AI panel churn no longer re-render every pane (#2790, #2809).
  • StrictMode double-fire cleanups and Notes page jank fixes keep edit mode responsive under heavy note lists (#2810).

🖥️ System Manager: Ports & Services

  • New Ports and Services tabs (with capability gating) let you inspect listening ports and systemctl units without leaving the terminal side panel (#2817).
  • Disk overview shows PVE CT ZFS/bind mounts; Ascend 910B NPU tables parse correctly on CANN 24.x hosts (#2837, #2812).

🤖 AI chat across workspace merge

  • Merging, dissolving, or detaching panes keeps the active chat, side panel, and SFTP mounts instead of dropping into a blank draft (#2851 / #2855 family).
  • Follow-up typing after merge no longer silently creates a New Chat; MCP permissions restore on startup; sidebar Catty no longer exposes host_open (#2876, #2861, #2859).
  • Settings gain a one-click provider connection test (#2845).

📝 Notes: paste, images, and link chrome

  • HTML clipboard paste goes through Turndown; long markdown, remote images, badge rows, centered blocks, and GitHub-like image scaling are preserved (#2868, #2869).
  • MDX link preview toolbar stays anchored on the link instead of drifting into the notes tree (#2877).

📂 SFTP path UX and terminal handoff

  • Path chrome gets its own toolbar row with tail-preferring breadcrumbs, pinned roots (including UNC), and a trailing overflow menu (#2857 family).
  • Open current path in linked terminal jumps the paired shell to the folder you are browsing (#2825).
  • Tree view search filtering and safer single-file overwrite / zmodem replace close real-world transfer gaps (#2829, #2863).

⌨️ Terminal autocomplete and history

  • History recall, mid-line edits, search-highlight cleanup, CJK IME punctuation, pinyin snippet titles, dnf completion, and SSH echo/path lag handling keep suggestions local and fail-closed when needed (#2850, #2849, #2834, #2814, #2840, #2831).
  • Session logs no longer record alternate-screen TUI paint (htop/vim) as terminal history (#2875).

⚙️ Settings, vault, scripts, and updates

  • Settings global search with expandable jump suggestions (#2816).
  • Port-forward runtime state is authoritative in the main process for consistent tray/restart behavior (#2819).
  • Host context menu can copy hostname; Scripts toolbar adds expand/collapse-all and delete-selected (#2820, #2828).
  • Linux deb/rpm/pacman packages enable in-app auto-update, with recovery when a previous install attempt failed.

✨ Smaller polish

  • Closing a temporary session restores the previous tab; external-editor temp downloads no longer look empty; and assorted SFTP/SSH bastion and CI automation false-positive fixes.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

Code signing policy

Netcatty is applying to the SignPath Foundation open-source program. Once
approved, covered Windows release artifacts will use Free code signing provided by SignPath.io, certificate by SignPath Foundation.
See the
Code signing policy
and Privacy policy.

What's Changed

  • perf: isolate Terminal hot props, cut memory/jank, and repay architecture debt by @binaricat in #2790
  • fix(ci): stop Cursor automation verify-gate false positives by @binaricat in #2800
  • fix(notes): protect title IME, surface persist failures, harden paste by @binaricat in #2803
  • fix(tabs): restore previous tab after closing temporary session by @binaricat in #2804
  • fix(terminal): stop keyword highlight flicker on Enter by @binaricat in #2805
  • fix(terminal): raise autocomplete suggestion cap for snippet matches by @binaricat in #2797
  • fix(sftp): stop treating external-editor temp download as empty by @binaricat in #2799
  • fix(system-manager): show Ascend 910B NPU info from CANN 24.x npu-smi tables by @binaricat in #2812
  • perf: StrictMode + Host-island mega-subscriber elimination by @binaricat in #2809
  • fix: StrictMode 双发清理 + 笔记页卡顿优化 by @binaricat in #2810
  • feat(settings): 设置全局搜索(可展开联想跳转) by @binaricat in #2816
  • feat(portforward): make main process authoritative for runtime state (#2288) by @binaricat in #2819
  • feat(system-manager): 端口占用与 systemctl 服务面板 (#2561) by @binaricat in #2817
  • fix(autocomplete): match Chinese snippet titles via pinyin and pre-echo input by @netcatty-bot in #2814
  • fix(sftp): apply search filter in tree view by @netcatty-bot in #2829
  • fix(terminal): add dnf command autocomplete for RHEL-family hosts by @netcatty-bot in #2840
  • fix(ssh): open Copy Tab shell before PID discovery on rate-limited bastions by @netcatty-bot in #2808
  • fix(terminal): commit CJK punctuation from IME insertText by @netcatty-bot in #2834
  • feat(sftp): open current path in linked terminal by @netcatty-bot in #2825
  • feat(ai): add one-click provider connection test in settings by @netcatty-bot in #2845
  • feat(scripts): add expand/collapse all and delete-selected toolbar actions by @netcatty-bot in #2828
  • fix(system): show PVE CT ZFS/bind disk mounts in overview by @netcatty-bot in #2837
  • fix(terminal): keep autocomplete local when SSH echo/path lags by @netcatty-bot in #2831
  • fix(notes): recover long markdown paste when Lexical insert no-ops by @netcatty-bot in #2838
  • ui(scripts): compact side panel toolbar like host tree by @binaricat in #2847
  • feat(vault): add copy hostname action in host context menu by @netcatty-bot in #2820
  • fix(terminal): clear leftover search highlights after reset by @netcatty-bot in #2853
  • fix(terminal): restore autocomplete popup after HMR dispose and pre-echo gate by @binaricat in #2852
  • fix(terminal): record full command after mid-line history edit by @netcatty-bot in #2854
  • fix(sftp): give path its own toolbar row and prefer the tail by @binaricat in #2857
  • fix(ai): keep host_open off sidebar Catty by @netcatty-bot in https://github.com/binaricat/Netc...
Read more

v1.1.76

Choose a tag to compare

@binaricat binaricat released this 06 Aug 23:40
443202b

✨ Release Highlights

Netcatty v1.1.76 is a transfer- and ops-heavy release: SFTP bulk paths are fail-closed and concurrent end-to-end, the System panel gains GPU/NPU monitoring, vault credentials stop poisoning local/cloud state after decrypt failures, and terminal workspaces pick up disconnect/reconnect plus better long-session AI navigation.

🚀 SFTP throughput and reliability

  • Bulk downloads no longer fall back to a slow serial stream path; concurrent pipelined transfers stay on the fast path (including sudo fan-out on a shared channel).
  • Parallel directory discovery, folder pre-scan, and skip-unchanged make large folder uploads/downloads start sooner and transfer less redundant data.
  • Folder drops update the scan UI immediately and avoid an expensive full-tree pre-scan before progress appears.
  • Append-only / growing-file downloads, cancelable OPEN gates, write OPEN serialization, and safer conflict/resume handling harden real-world transfer edge cases.

🖥️ System panel: GPU / NPU

  • The System side panel now shows GPU and NPU utilization so you can watch accelerator load alongside CPU, memory, and disk while connected.

🔐 Credentials safety

  • If vault decryption fails, Netcatty no longer re-encrypts and overwrites good ciphertext—protecting both local storage and cloud sync from poison writes.

⌨️ Terminal sessions and workspaces

  • Workspace split status bars gain disconnect / reconnect controls for the focused pane.
  • Hibernate wake keeps the newest scrollback; host info bar shows the server name; clipboard image paste (remote, opt-in) and better mouse/keyboard passthrough for Kitty and mouse-tracking apps.
  • Split-workspace tabs prefer a stable host name; session tabs and the quick switcher can open Edit Host.

🔌 Plugins, AI, and settings

  • Plugin sync providers with encrypted sidecar sync; schema upgrades backfill bindings without wiping secrets/backups.
  • Long AI chats get an in-chat jump list; Grok Build lands as a managed agent (ACP / streaming); Catty gains context controls and a clearer compact flow.
  • OpenCode turns no longer die solely because a terminal tool failed; one-click clear-all for session logs.

🪟 Platform polish

  • Windows: frameless window rounded corners and tray transparency restored; broken arm64 installers no longer ship from x64 CI; Explorer “Open in Netcatty” menu install/toggle is more robust.
  • macOS: Local Network TCC / first-hop handling hardened for LAN SSH.

✨ Smaller polish

  • SFTP CJK IME-safe filter input, external-edit temps surviving tab switches, snippets bulk delete, split terminal side panels, AI composer resize, sync theme rehydrate / groupConfig guards, and assorted SSH bastion rate-limit and automation reconnect fixes.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

Code signing policy

Netcatty is applying to the SignPath Foundation open-source program. Once
approved, covered Windows release artifacts will use Free code signing provided by SignPath.io, certificate by SignPath Foundation.
See the
Code signing policy
and Privacy policy.

What's Changed

  • fix(sftp): restore SSH session reuse for side-panel browse by @myderr in #2652
  • fix: harden CI and Cursor automation by @binaricat in #2654
  • feat(tabs): show host name on split-workspace tabs instead of "Workspace" by @chenqin231 in #2658
  • feat(terminal): add setting to show context menu over fullscreen apps (tmux/vim) by @chenqin231 in #2657
  • feat(ai): add Catty context controls by @binaricat in #2667
  • feat(ai): Grok Build managed agent by @hang666 in #2666
  • fix(ssh): trigger macOS Local Network prompt from main process by @netcatty-bot in #2664
  • fix(sftp): keep conflict dialog actions on one row by @binaricat in #2669
  • fix(snippets): paste into Monaco find widget, not script body by @binaricat in #2668
  • chore: update star history charts by @github-actions[bot] in #2672
  • fix(sftp): allow downloading append-only growing files by @binaricat in #2670
  • fix(sftp): stop skipped conflicts from reopening after restart by @binaricat in #2675
  • fix(sftp): show sudo hosts under Connected in host picker by @binaricat in #2674
  • fix(windows): Explorer Open-in-Netcatty toggle and launch fix by @binaricat in #2671
  • feat: add nested split terminal side panels by @binaricat in #2686
  • feat(SnippetsManager): add bulk delete for scripts by @yintian710 in #2690
  • fix(settings): stop terminal font size oscillating across windows by @netcatty-bot in #2691
  • fix(terminal): keep cursor-row background behind keyword highlights by @binaricat in #2694
  • Fix macOS Bitwarden SSH agent forwarding by @binaricat in #2695
  • fix: prevent keyword highlights flashing on Enter by @binaricat in #2693
  • fix(lint): remove unused eslint-disable in monaco paste test by @binaricat in #2700
  • fix(ssh): keep connect automation on fresh connections by @binaricat in #2703
  • fix(ci): harden Cursor automation handoffs by @binaricat in #2711
  • fix(ssh): Copy Tab reuse survives bastion channelOpen rate limits (#2704) by @binaricat in #2717
  • [Bug] Fix host connect script queue selection (#2705) by @binaricat in #2716
  • fix(terminal): keep broadcast through command colons by @binaricat in #2715
  • feat(terminal): auto-upload clipboard images on paste (remote sessions, opt-in setting) by @yh4922 in #2676
  • fix(terminal): deliver right-click mouseup to mouse-tracking apps by @netcatty-bot in #2722
  • fix: allow deleting global command history entries by @binaricat in #2706
  • fix(ai): stop OpenCode turns dying on terminal tool failures by @binaricat in #2724
  • fix(sftp): truncate long names in clipboard upload dialog by @netcatty-bot in #2735
  • feat(tabs): add edit host to session tab and quick switcher menus by @netcatty-bot in #2729
  • fix(sftp): keep external-edit temps across terminal tab switches by @netcatty-bot in #2730
  • fix(terminal): show server name in host info bar by @netcatty-bot in #2732
  • fix(appearance): stop custom accent jitter during color picker drag by @netcatty-bot in #2744
  • feat(plugins): add sync providers and encrypted sidecar sync by @binaricat in...
Read more

v1.1.75

Choose a tag to compare

@binaricat binaricat released this 31 Jul 06:52
ffd5818

✨ Release Highlights

Netcatty v1.1.75 focuses on making the desktop shell feel faster under multi-tab workloads, hardening SFTP transfer lifecycle, and expanding agent/plugin integration. Cursor-line highlighting, workspace clone/split with cwd inheritance, and several host-management UX improvements land alongside a large reliability pass.

⚡ Faster multi-tab shell

  • TerminalLayer, top-tab switching, App shell domains, and AI side-panel UI are isolated so history, CWD, title, and theme churn no longer force full-pane re-renders.
  • Hidden AI panels defer heavy UI while streaming, keeping the active terminal responsive.
  • Host pickers and large vault lists are virtualized for big inventories.

🛡️ SFTP transfer reliability

  • Pause, resume, and hard reconnect reuse the same transfer runtime with safer progress epochs and sparse-settle budgets.
  • Upload content digests ignore ctime-only drift that previously false-flagged identical files.
  • Large folder uploads, maximized editor save after reconnect, and POSIX double-slash paths are more predictable.

🖥️ Terminal session UX

  • Optional cursor-line highlight keeps the active row readable without wiping keyword colors or selection (opt-in).
  • Clone or split tabs inherit the current working directory; multi-pane workspaces can be copied with per-pane CWD.
  • Host-tree toolbar is customizable; local-terminal and quick-connect icons are cleaner; Network Device Mode gets a session-header tip.
  • Mosh/ET now enforce vault host-key verification; xterm WebGL atlas fixes come from upstream with a lower default scrollback.

🤖 Agents, plugins, and automation

  • CodeBuddy integrates the full Tencent AI agent SDK surface (permissions, hooks, MCP, settings).
  • Plugin connection, authentication, and importer providers land for host-owned auth challenges and safe vault imports.
  • Terminal scripts side-panel UX is refined; Windows gains Explorer “Open in Terminal”.

✨ Smaller polish

  • Searchable font pickers, Windows portaled UI font inheritance, CJK label line-height fixes, snippets as centered modals, large vault import/group management, Gist large-vault raw download proxy, system theme in quick controls, and assorted editor/AI/CI fixes.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

Code signing policy

Netcatty is applying to the SignPath Foundation open-source program. Once
approved, covered Windows release artifacts will use Free code signing provided by SignPath.io, certificate by SignPath Foundation.
See the
Code signing policy
and Privacy policy.

What's Changed

  • fix(ci): restore Cursor issue automation by @binaricat in #2515
  • fix(ci): correct Cursor sandbox command parsing by @binaricat in #2523
  • fix(sftp): prevent large folder upload renderer stalls by @binaricat in #2517
  • fix(ci): restore Cursor automation authentication by @binaricat in #2527
  • feat(plugins): add connection, authentication, and importer providers by @ryan-wong-coder in #2413
  • fix: preserve SFTP editor saves after maximize by @binaricat in #2533
  • fix(ci): prevent lint-and-test hangs by @binaricat in #2532
  • feat(scripts): improve terminal scripts side panel UX by @binaricat in #2525
  • fix(ssh): enforce vault host keys for Mosh and ET by @binaricat in #2529
  • feat: add system theme to quick controls by @binaricat in #2538
  • fix: open OSC 8 terminal links after confirmation by @binaricat in #2535
  • fix(terminal): prevent false coding CLI tab icons by @binaricat in #2536
  • feat(settings): add searchable font pickers by @binaricat in #2537
  • docs: add privacy and code signing policies by @binaricat in #2543
  • fix(ci): accept fenced Cursor research status by @binaricat in #2539
  • feat(windows): add Explorer open-in-terminal menu by @binaricat in #2542
  • fix(ci): update star history via PR on protected main by @binaricat in #2547
  • fix(ci): use GITHUB_TOKEN for star history PRs by @binaricat in #2548
  • chore: update star history charts by @binaricat in #2549
  • fix(ci): proxy GitHub screenshots before Cursor research by @binaricat in #2551
  • fix(terminal): keep Enter reconnect working after disconnect by @binaricat in #2550
  • [Feature] Optimize large Vault imports and group management by @binaricat in #2540
  • feat(snippets): open quick add/edit as a centered modal by @binaricat in #2552
  • chore: switch .gitignore to allowlist layout by @binaricat in #2554
  • fix(ai): use writable temp workspace for Cursor CLI MCP by @itzhang89 in #2558
  • perf(vault): virtualize host pickers for large inventories by @binaricat in #2553
  • fix(ai): pass cursorAuthMode into list-models for CLI login by @netcatty-bot in #2563
  • fix(ai): route auto-detected network devices to raw PTY exec (#2367) by @tces1 in #2564
  • fix(terminal): suppress autocomplete on alternate screen (#2530) by @binaricat in #2565
  • feat(terminal): suggest Network Device Mode via a session-header tip by @tces1 in #2566
  • feat(ssh): unify transport leases and converge transfer keep-alive by @binaricat in #2555
  • fix(settings): allow toggling individual keyword highlight rules by @netcatty-bot in #2574
  • fix(sftp): accept panel completed while directory walk still in flight by @netcatty-bot in #2569
  • fix(terminal): speed up dense keyword highlighting by @binaricat in #2581
  • fix(terminal): release hidden ended sessions by @binaricat in #2582
  • fix(ai): prevent stuck OpenCode questions by @binaricat in #2586
  • fix(sftp): restore editor tab saves after maximize by @tces1 in #2580
  • fix(ci): launch Electron perf test without sandbox by @binaricat in #2588
  • Improve settings controls and virtualize host lists by @binaricat in #2596
  • fix(editor): soften Monaco find-match highlight for readability by @netcatty-bot in #2593
  • fix(editor): lighten matching bracket highlight by @netcatty-bot in #2592
  • fix(host-details): keep identity suggestions open on...
Read more

v1.1.73

Choose a tag to compare

@binaricat binaricat released this 26 Jul 16:40
c720bdb

✨ Release Highlights

Netcatty v1.1.73 adds opt-in inline images and group-based automation targeting, then delivers a broad reliability pass for file transfers and long-running terminal sessions. SFTP and SCP transfers are safer across pause, resume, cancellation, reconnects, and tab changes, while full-screen terminal apps remain responsive when windows are hidden or under sustained output.

🖼️ Inline images in the terminal

  • Preview images, charts, and rich terminal output directly over SSH with Kitty, SIXEL, and iTerm inline image support.
  • Inline images are opt-in and disabled by default. New settings provide size, memory, and cache safeguards for long-running sessions.
  • Images remain available within the current session when the terminal is temporarily hidden.

🎯 Select automation targets by vault group

  • Automation scripts can now add or remove every host in a vault group at once, including hosts inside nested groups.
  • The selected hosts are saved with the script, so later vault changes cannot silently redirect an existing automation run.

🛡️ Safer, more predictable SFTP and SCP transfers

  • Downloads, uploads, resumable transfers, and server-to-server copies now share the same safety checks, protecting files that change while a transfer is running.
  • Pause and resume are faster and clearer, with durable progress tracking and stronger checks that the source is still the same file.
  • Upload throughput is restored, browsing remains available when switching top-level tabs, and clipboard or folder uploads stay attached to the host where they started.
  • Transfer cancellation once again targets the intended task, and interrupted replacements restore the previous destination when possible.

🖥️ More stable terminal sessions

  • Full-screen tools such as Herdr no longer freeze during sustained output, and hidden or covered terminal windows continue making bounded progress.
  • Windows terminal clearing now works consistently, and Mosh sessions advertise 256-color support correctly.

☁️ Smaller reliability improvements

  • Cloud sync can keep local data and overwrite the cloud copy after a reinstall or master-password change without requiring the old cloud password.
  • Known-host scans and imports filter public service entries from GitHub, GitLab, Bitbucket, and Azure DevOps.
  • Cursor CLI keeps authentication and permission modes isolated between sessions and switches modes more reliably.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

What's Changed

  • fix(ci): Cursor triage crash + already_available how-to close by @binaricat in #2439
  • fix(ci): prefer already_available for primary how-to asks by @binaricat in #2441
  • fix(ci): post Cursor triage as netcatty-bot by @binaricat in #2444
  • fix(ci): attribute Cursor automation commits to netcatty-bot by @binaricat in #2445
  • fix(#2436): [Bug] 终端闪现-Terminal Flash / Screen Flicker by @binaricat in #2440
  • fix(ci): plain triage reply tone, no Cursor disclaimer by @binaricat in #2447
  • fix(ci): stop Codex loop failing on draft conversion by @binaricat in #2448
  • fix(#2458): [Bug] 新增的文件传输列表功能的暂停和全部暂定功能不生效 by @netcatty-bot in #2459
  • fix(ci): close Cursor automation handoffs and label state machine by @binaricat in #2461
  • 修复了 Netcatty 终端中 Docker 日志显示 OSC 颜色序列乱码的问题 by @Jinmoli in #2460
  • fix(#2456): [Bug] Codex CLI 提问时流意外断开:error decoding response body by @netcatty-bot in #2457
  • fix(#2453): [Bug] 为什么会出现这种突然出现一大段卡屏的现象 by @netcatty-bot in #2454
  • fix(sftp): raise upload WRITE fanout for higher throughput by @binaricat in #2452
  • fix(terminal): complete Windows ConPTY clear handling by @binaricat in #2465
  • fix(terminal): prevent Herdr rendering freezes by @binaricat in #2472
  • fix(terminal): prevent coalescer wake-up loss stalling TUI output by @netcatty-bot in #2470
  • fix(mosh): pass -c 256 so remote TERM is xterm-256color by @netcatty-bot in #2481
  • fix(ci): reduce flaky failures and PR runtime by @binaricat in #2474
  • feat(snippets): select target hosts by vault group by @netcatty-bot in #2463
  • refactor(sftp): unify transfer safety after #2452 by @binaricat in #2468
  • perf(sftp): upload fanout (64×32KiB) + dead-code cleanup by @binaricat in #2482
  • Revert #2460 OSC color handling test by @binaricat in #2484
  • fix(cloud-sync): keep-local overwrite skips remote decrypt by @netcatty-bot in #2469
  • fix(docs): restore star history chart with static SVGs by @binaricat in #2490
  • fix(ci): bump star-history workflow to actions/checkout@v7 by @binaricat in #2491
  • fix(sftp): close clipboard upload dialog before transfer by @binaricat in #2493
  • fix(sftp): cancel external uploads by task id by @binaricat in #2495
  • fix(sftp): keep browse sessions across top-tab switches by @netcatty-bot in #2498
  • fix(sftp): make transfer pause responsive and visible by @binaricat in #2486
  • fix(known-hosts): filter out public service hosts from scan/import by @CJAY1997 in #2500
  • docs: document issue/PR format gate in agent guides by @binaricat in #2504
  • fix(sftp): unify transfer control under process-level TransferRuntime by @binaricat in #2509
  • feat(terminal): support Kitty/SIXEL/iTerm inline images in terminals by @Lynricsy in #2508
  • feat: continue issue automation after follow-ups by @binaricat in #2475
  • fix(ai): harden Cursor CLI auth and Ask-mode session isolation by @itzhang89 in #2507
  • fix(sftp): restore cancel-by-task, clipboard confirm, and browse stay-alive by @binaricat in #2510
  • fix(sftp): pin clipboard uploads to originating tab by @binaricat in #2494
  • fix(sftp): resolve hook dependency warnings by @binaricat in #2511

New Contributors

Full Changelog: v1.1.72...v1.1.73

v1.1.72

Choose a tag to compare

@binaricat binaricat released this 24 Jul 05:42
874b178

✨ Release Highlights

Netcatty v1.1.72 is a focused follow-up to the v1.1.71 transfer-center release. The headline is restoring SFTP upload/download throughput on the default resumable path, so large transfers on high-latency links no longer crawl as sequential 32 KB requests. Alongside that: keychain layout polish, more reliable AI terminal command completion when output has no trailing newline, and a stronger Cursor CLI issue/PR automation loop in CI.

⚡ SFTP transfer throughput restored

v1.1.71 made normal SFTP transfers resumable by default, but that path accidentally bypassed the parallel read/write window. On high-latency connections a single file could fall back to sequential small requests and look much slower than before.

In v1.1.72:

  • Default resumable uploads and downloads again use parallel request windows, recovering previous throughput characteristics.
  • Pause checkpoints wait for in-flight ranges before reporting pause, so resume integrity stays intact.
  • Compatibility stream fallbacks remain available when a dedicated SFTP channel cannot be opened.

If transfers felt slower right after updating to 1.1.71, this build is the fix (see #2424 / #2429).

🔑 Keychain layout polish

Vault keychain UI is easier to scan and more consistent:

  • Identity/layout discoverability improvements for credentials (#2421 / #2426).
  • The header New Key action matches Import Certificate and New Identity as a secondary control, so the three header actions read as peers instead of one primary accent button (#2435).

🤖 AI terminal tools: complete without a trailing newline

Agent-driven terminal execution no longer hangs when command output ends without a final newline (for example curl ... | head -c 200). Completion markers can sit immediately after the last output byte; Netcatty still detects finish, preserves the final bytes for foreground and background jobs, and returns promptly instead of waiting until timeout (#2431 / #2437).

🛠️ CI automation (internal)

Issue/PR automation now uses a Cursor CLI implement path with a Codex review loop, safer sandbox defaults on GitHub Actions, code-first triage that must open real paths before classifying, and the ability to open draft PRs with the triage token. These changes mainly improve how fixes land in the repo; they do not change day-to-day app UI.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

What's Changed

Full Changelog: v1.1.71...v1.1.72

v1.1.71

Choose a tag to compare

@binaricat binaricat released this 23 Jul 17:04
f7c1bd2

✨ Release Highlights

Netcatty v1.1.71 is a large transfer-and-platform release. The headline is a global SFTP transfer center modeled after dedicated multi-connection clients: transfers keep running when you close a panel, can pause and resume across reconnects, and show up from a single top-bar control. Alongside that, the plugin host grows real permission, UI, and terminal-provider surfaces; terminals pick up Kitty keyboard completion, smarter exit behavior, and TUI redraw fixes; and AI agents gain Cursor subscription login plus silent MCP sessions.

📦 Global SFTP transfer center

SFTP transfers no longer live only inside the side panel you opened. A new global transfer center in the top bar lists active, queued, completed, and failed work across hosts, with badges for count and attention states.

Under the hood this is a full transfer lifecycle redesign, not a cosmetic queue:

  • Dedicated transfer connections with a connection pool, so browsing and bulk transfer do not starve each other the way a single shared session often does.
  • Pause / resume / prioritize / cancel for top-level jobs, including directory trees, with checkpoints retained so large downloads and uploads can continue after interrupt, app restart, or temporary network loss.
  • Conflict handling (skip / replace / stop) that stays consistent when you resolve in the same moment a job is pausing or canceling, including batch “Stop” that cancels the remaining unfinished set cleanly.
  • Directory jobs that rehome child tasks correctly, keep cancelled children out of the failed bucket, and avoid poisoned cancel latches when you resume.
  • Open-folder / open-file UX and controls refined so you can jump from a finished row back to the right place without hunting through panels.

Closing an SFTP panel no longer means losing track of in-flight work: transfers stay visible and controllable from the global center until you dismiss them.

🧩 Plugin platform: permissions, UI, and terminals

The plugin foundation from recent builds expands into surfaces plugins can actually use:

  • A permission and security boundary with capability authorization, safer activation, companion trust checks, and session-grant revocation when a worker exits.
  • Native UI contributions so plugins can present views and lifecycle-owned UI without fighting the host’s tab and context refresh rules.
  • A terminal provider API for ordinary providers: host state, transport identity, command completion, and lifecycle hardening so providers do not leak listeners, double-submit, or return stale results.
  • A reviewed privileged terminal data pipeline for the cases that need deeper terminal I/O under explicit policy.

Plugin work remains gated for development where appropriate, but the contracts are substantially closer to something installable and reviewable.

⌨️ Terminal: Kitty keyboard, exit policy, and TUI stability

Terminal sessions behave more predictably for modern TUIs and long-lived tabs:

  • Kitty keyboard protocol support is completed and key-release handling is preserved for broadcast paths, so tools that rely on rich key reporting work more reliably.
  • New exit auto-close setting, plus fixes so non-zero shell exits no longer drop tabs unexpectedly—you choose when a session should disappear.
  • Claude Code / Codex-style DEC 2026 full redraws no longer stack ghost frames (#2291); delayed full clears keep the right context.
  • Ctrl+C with scroll-on-input scrolls to the bottom again so interrupt feedback is visible; hidden log output is batched to cut unnecessary work.
  • Session startup commands run after restore, and search highlights clear when the search field is emptied.

🤖 AI agents: Cursor login and silent MCP sessions

  • Cursor CLI login is supported so subscription quota can be used without forcing only API-key mode.
  • MCP silent sessions can run without hijacking your visible tab set; when you need to inspect them, they open in an attach terminal popup instead of stealing focus from the workspace.
  • External MCP settings layout and a top-bar External MCP quick toggle make turning agent integration on and off faster during daily use.

📁 SFTP reliability beyond the transfer center

Even outside the new center, everyday SFTP is sturdier:

  • Opening SFTP can reuse the already-authenticated terminal SSH session.
  • High-latency download throughput is restored, with safer bounds and concurrent progress preservation.
  • SFTP follows the terminal cwd more correctly on macOS/BSD remotes and on first open; copied tabs keep distinct cwd state.
  • Recursive directory deletion is more reliable; active transfers remain reachable after the panel is closed.

🧭 Hosts, vault, and top-bar controls

Day-to-day host management is smoother: add and edit hosts from the terminal host list, improved keychain identity layout, CSV import/export of key authentication, FreeBSD host icons, and a dedicated top-bar quick controls panel for theme, opacity, and related toggles. Windows gains a portable data directory option. SSH MFA prefers keyboard-interactive when appropriate (including jump hosts), and port forwarding recovers OTP auth routing plus auto-start after network recovery.

Also in this release: Russian UI localization completion, host picker keyboard navigation, host-details resize and row-height polish, tray session close buttons, and assorted lint/UI color consistency fixes for the new transfer and quick-control controls.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

What's Changed

Read more

v1.1.70

Choose a tag to compare

@binaricat binaricat released this 19 Jul 05:00
f900b96

✨ Release Highlights

Netcatty v1.1.70 focuses on smoother terminal interaction, clearer system information, and faster everyday file workflows. It also strengthens the plugin foundation for future extensions.

⚡ Smooth typing after large terminal output

Typing no longer triggers unnecessary full-screen redraws when the terminal is already at the bottom. Large-output sessions remain responsive, while typing still returns you to the latest output when you are viewing earlier history.

💽 Correct disk totals on multi-disk hosts

The compact terminal status now totals all mounted disks instead of showing only the first filesystem. The expanded view still shows each mounted disk separately.

📂 Faster SFTP navigation

SFTP adds an optional “Folders first” mode, keeps sorting consistent across files and folders, and supports incremental keyboard selection in both list and tree views.

📝 Manual logs follow your selected format

Toolbar-started session logs now respect the configured text, raw, or HTML format and use the matching file extension, even when automatic logging is disabled.

🧩 A stronger plugin foundation

The plugin platform gains durable package storage and isolated browser and utility runtimes behind the development gate, providing safer lifecycle and recovery boundaries for upcoming plugin features.

Download based on your OS:

OS Download
Windows Setup x64
macOS DMG Apple Silicon DMG Intel X64
Linux AppImage x64 DebPackage x64 RpmPackage x64 ArchPackage x64
AppImage arm64 DebPackage arm64 RpmPackage arm64 ArchPackage arm64

What's Changed

Full Changelog: v1.1.69...v1.1.70