← 全部工具

salvatorecorvaglia/luna

热度 65 更新于 效率与自动化

Cross-platform remote & local workflow workstation

githubauto-collected

安装

暂未验证可直接使用的安装命令,请查看项目官方文档或 Release。

Luna 🌙

Cross-platform remote & local workflow workstation

Luna is a high-performance, cross-platform desktop application designed to streamline your remote and local workflows. Browse SSH/SFTP servers and S3-compatible object stores side-by-side with your local filesystem, with a powerful terminal (SSH or local shell) just a tab away.

---

✨ Key Features

🖥️ High-Performance Terminals

  • Hardware Acceleration: Powered by xterm.js using WebGL and Canvas renderers for low-latency rendering.
  • Advanced Layouts & Presets: Supports vertical and horizontal split panes, dynamic resizing, and saving/restoring workspace layout presets.
  • Broadcast Input: Broadcast commands to multiple active terminal tabs simultaneously.
  • Automation & Snippet Vault: Store reusable command snippets in a searchable Snippet Vault and record automated terminal keypress sequences with the Macro Recorder.
  • Session Audit & Shell History: Index command history for fast search and export detailed session audit logs in JSON, HTML, or plain text formats.
  • Built-in CLI Reference: Access interactive, searchable CLI command reference documentation directly inside the terminal workstation.
  • Session Recovery: Long-lived session management in the main process preserves scrollback buffers, cursor states, and tab setups through renderer reloads or window refreshes (e.g., Cmd+R).
  • Reliable Reconnection: Automatically re-establishes dropped SSH sessions according to your ssh.autoReconnect preference, with clear status feedback if a manual reconnect attempt fails.
  • Custom Themes: Dynamically maps terminal color palettes directly onto the React application UI for unified styling.

🔌 SSH Port Forwarding & Tunnel Manager

  • Full Tunneling Support: Configure and manage Local, Remote, and Dynamic (SOCKS5 proxy) SSH tunnels.
  • Live Status Monitoring: Monitor active tunnels, port bindings, and forwarding status directly from the interactive Status Bar.
  • Explicit Public Binds: A bind is certified as loopback by address, never by hostname, so a doctored /etc/hosts entry cannot turn a local forward into a publicly reachable one without the opt-in.

📁 SFTP File Manager & Folder Sync

  • Folder Synchronization: Perform directional or bidirectional directory synchronization between local and remote paths with conflict detection.
  • Visual File Operations: Drag-and-drop file transfers, directory creation, deletion, and renaming over remote SSH channels.
  • Enhanced Inline File Editor: Open, view, search, word-wrap, live-tail, and edit local or remote files (code, config scripts, logs) directly inside FilePreview.
  • Enhanced Accessibility: Fully optimized keyboard navigation (e.g., Space to toggle multi-row selection) and standard-compliant ARIA attributes. Split-pane and sidebar handles are focusable separators that resize with the arrow keys, and transfer progress is exposed as a labelled progressbar.
  • Safety Guards: Protective recursion depth limits and warning thresholds to prevent accidental bulk deletions.
  • Corruption-Safe Downloads: Downloads write to a temporary file and are atomically renamed into place, preventing partial or corrupted files if a transfer is interrupted.

🪣 S3 Object Storage Browser

  • Multi-Provider Support: Seamlessly connect to AWS S3 and any S3-compatible APIs (MinIO, Cloudflare R2, Backblaze B2, etc.).
  • Pagination & Safety Limits: Intelligently paginates massive buckets, offering user alerts to prevent application hangs or memory limits.
  • Presigned URLs: Generate temporary access URLs for object sharing with customizable expiration times.

🔒 Enterprise-Grade Security & Credential Tools

  • IPC Payload Validation: Enforces strict payload validation and input sanitization across all main-process IPC service handlers to protect internal services.
  • IPC Resource Limits: Rate limiters and session caps on S3, SSH, and credential IPC channels bound resource usage from a chatty or compromised renderer, and a single-instance lock prevents concurrent processes from racing database or credential writes.
  • Built-in Password Manager: Generate strong passwords with configurable complexity and securely manage stored credentials, with optional 1Password and Bitwarden CLI lookups on macOS, Windows, and Linux.
  • OS-Protected Credentials: Integrates with system keychains (Keychain Services on macOS, Credential Manager on Windows, Gnome Keyring/libsecret on Linux) to prevent credential leakage. On Linux the backend actually in use is inspected: a basictext keyring encrypts with a hardcoded key and is reported as unprotected rather than counted as OS-backed.
  • Non-Destructive Key Handling: A locked or access-denied keyring is a hard, recoverable error — Luna reports a locked state, leaves the encrypted master key byte-for-byte intact instead of regenerating it, and asks you to unlock and restart. Credential rows that cannot be decrypted are retained for re-entry, never deleted.
  • Tamper Protection: Actively audits and alerts the operator of corrupted or unauthorized credential modifications on disk.
  • Hardened Desktop Runtime: Electron fuses disable ELECTRONRUNASNODE, NODEOPTIONS, and --inspect, and the app loads only from the asar; top-level navigation is allowlisted to the bundled renderer; the database (with its WAL/SHM siblings) and the encrypted key file are created owner-only; and file writes open with ONOFOLLOW so the path cannot be swapped for a symlink after validation.
  • No Third-Party Assets At Runtime: Inter and JetBrains Mono ship inside the app as woff2 subsets, so both Content-Security-Policy definitions are 'self'-only and no launch makes a CDN request.
  • Clear Visibility: Alerts the user immediately via toast notifications if the workspace falls back to unencrypted plaintext or memory-only keys due to missing OS libraries.

📥 One-Click Importers