ShellCanvas: an open-source graphical workspace for SSH servers
ShellCanvas: an open-source graphical workspace for SSH servers
ShellCanvas is a free, open-source desktop app for managing remote servers over SSH. It brings a file manager, terminal sessions, and a text editor into one graphical workspace, with a separate workspace for each host.
How it works
The interface runs on your computer. Connect using your existing SSH account, then open files and terminals in movable windows. You do not need to install a ShellCanvas agent on the remote server.
This makes it useful when a job spans several tools:
- Inspect a directory
- Read a configuration file
- Run a command
- Keep the results visible beside the files you are working with
Full file operations use SFTP. There are limited fallbacks for compatible hosts where SFTP is unavailable, but a restricted shell or appliance will not necessarily support the same operations as a regular Linux server.
Built with Rust, Tauri and React
ShellCanvas uses Rust and Tauri 2 for the desktop application and React for its interface. The code is available under MPL-2.0.
The app includes:
- Saved SSH hosts
- Multiple terminal sessions
- File transfers
- A text editor
Apps and themes can be installed from GitHub, with permissions reviewed before installation. SDKs are available for developers who want to extend the workspace.
Trying the preview
- Download the package for your system from shellcanvas.com.
- Install or open it, then add a host you can access over SSH.
- Review the host key and connect with your SSH credentials.
- Open Files and Terminal to try a normal server-management task.
Windows, Linux, and macOS packages are available. This is an early preview: Windows has had the most hands-on testing, while the Linux and macOS builds need more real-world feedback.
Feedback that would help
I'm particularly interested in how this workflow behaves on different SSH hosts and in places where moving between files, terminals, and editors still feels awkward.
- Reproducible issues and contributions are welcome in the repository.
- If you try it, include your client OS, remote OS, and the operation involved when reporting a problem.
- Please leave credentials, private keys, and sensitive server data out of reports.
Comments
No comments yet. Start the discussion.