Skip to content

Clavyn v0.1.1

Latest

Choose a tag to compare

@computerbox124 computerbox124 released this 07 Sep 23:10
· 56 commits to main since this release

Clavyn v0.1.1 — First Stable Release

Clavyn (formerly OpenTermius) is a desktop SSH terminal manager with split panes, vault-secured credentials, SFTP file browsing, and biometric unlock.

This release consolidates 24 alpha builds into the first stable release.


Rebrand & Design System (#7)

  • Renamed from OpenTermius to Clavyn across all Cargo crates (clavyn-core, clavyn-desktop), package manifests, Tauri config, workflows, scripts, and docs.
  • New Grok Bot-inspired UI design system: neutral, compact, desktop-native interface with a 252px sidebar, 36px rows, 7px radius, and a full light/dark token set (neutral grays, blue reserved for focus/links/informational state).
  • Fixed dark mode: theme tokens were inside @layer base, causing Tailwind to strip the entire .dark block. Moved to plain CSS so dark mode applies correctly.
  • Theme-aware terminal chrome: the session strip and pane headers now adapt to light/dark instead of using hardcoded dark colors. The xterm viewport itself stays dark.
  • Preserved user data across the rename: kept the Tauri identifier (org.opentermius.app) and macOS keychain service (com.opentermius.vault) so upgrading users retain all saved hosts, keys, vault data, and Touch ID credentials. Migrated localStorage keys with fallback to the old names.

Persistent Terminal Sessions & Multi-Host Workspace (#6)

  • Sessions survive navigation: terminal sessions and xterm instances are no longer remounted or reconnected when switching between Terminal, Files, and other views.
  • Split pane resilience: drag-drop, move-to-tab, and pane swapping preserve the original SSH session and xterm DOM — no reconnection or output loss.
  • SSH identity resolution: linked identities are resolved at connection time and frozen into the transport host. Editing an identity does not relabel a live terminal; a reconnect is required to pick up the new username.
  • Input ownership hardening: keyboard focus is tracked per-pane, preventing input from leaking to background sessions during vault unlock, password prompts, or session picker interactions.
  • SFTP ownership & concurrency: SFTP connections are tied to their terminal session and properly cleaned up on close.
  • Vault concurrency: vault unlock/lock operations are serialized to prevent race conditions.
  • Failure isolation: a failed connection in one pane does not affect other panes or tabs.
  • E2E browser tests: added Playwright-based browser UI tests with a mocked Tauri IPC fixture, covering session creation, identity snapshots, picker cancellation, and workspace navigation.

Touch ID Biometric Vault Unlock for macOS (#5)

  • Replaced the biometric stub with a real macOS Keychain + Touch ID implementation behind the opt-in macos-biometric Cargo feature.
  • Vault passphrase is stored in the Data Protection Keychain, bound to the current vault generation so an orphaned Keychain item can never become authoritative for a newly initialized vault.
  • Legacy file-based Keychain credential cleanup is performed opportunistically on startup.

SFTP Remote File Browser (#4)

  • Added a remote SFTP file browser accessible from the Files navigation item.
  • Uses native open/save dialogs for choosing local upload/download paths.
  • Streaming transfers with progress indication.

Vault Auto-Lock & Security Hardening (#2, #3)

  • Auto-lock on inactivity: vault auto-locks after a configurable idle timeout (default 15 minutes).
  • Lock-on-sleep: optionally locks after the app has been backgrounded for an extended period.
  • Authenticated passphrase verification: vault passphrase is verified before any unlock is accepted — an incorrect passphrase cannot mark the vault as unlocked.
  • Biometric support gating: biometric unlock is safely gated behind feature detection and vault initialization state.

In-Terminal Search (#1)

  • Added in-terminal search using @xterm/addon-search.
  • Press Cmd+F / Ctrl+F (or click the search icon in the pane header) to open the search bar.
  • Supports case-sensitive, whole-word, and regex search modes.

Release Infrastructure

  • Cross-platform release CI via GitHub Actions (macOS arm64 + x86_64, Linux, Windows).
  • Custom update checker that queries the GitHub releases API including prereleases (GitHub's releases/latest redirect excludes prereleases).
  • NSIS installer for Windows (replaces MSI to fix alpha version detection).
  • Local release automation scripts (scripts/release.sh, scripts/version.sh).

Downloads

Platform binaries and installers are built by the release workflow and will appear below when the builds complete.

Screenshots

Hosts (light)

Split two hosts (light)

Split two hosts (dark)

SFTP files (light)

UI tour


Full changelog: v0.1.1-alpha.1...v0.1.1