Open-sourced terminal/ssh/sftp/telnet/serialport/RDP/VNC/Spice/ftp client(linux, mac, win).
For experienced developers, you may try the web app version running in browser(including mobile device): electerm-web or docker image for electerm-web
Online demo: https://electerm-demo.html5beta.com
Features
- Works as a terminal/file manager or ssh/sftp/ftp/telnet/serialport/RDP/VNC/Spice client
- Support Window 7+(X64/ARM64), Mac OS 10.15+(x64/arm64), Linux(x64/arm64), even old Linux with glibc 2.17+ like UOS/Kylin/Ubuntu 18.04 etc
- Global hotkey to toggle window visibility (similar to guake, default is
ctrl + 2) - Multi platform(linux, mac, win)
- ๐บ๐ธ ๐จ๐ณ ๐ง๐ท ๐ท๐บ ๐ช๐ธ ๐ซ๐ท ๐น๐ท ๐ญ๐ฐ ๐ฏ๐ต ๐ธ๐ฆ ๐ฉ๐ช ๐ฐ๐ท ๐ฎ๐ฉ ๐ต๐ฑ Multi-language support(electerm-locales, contributions/fixes welcome)
- Double click to directly edit (small) remote files.
- Auth with publicKey + password.
- Support Zmodem(rz, sz).
- Support ssh tunnel.
- Support Trzsz(trz/tsz), similar to rz/sz, and compatible with tmux.
- Transparent window(Mac, win).
- Terminal background image.
- Global/session proxy.
- Quick commands
- UI/terminal theme
- Sync bookmarks/themes/quick commands to github/gitee secret gist
- Quick input to one or all terminals.
- AI assistant integration (supporting DeepSeek, OpenAI, and other AI APIs) to help with command suggestions, script writing, and explaining selected terminal content
- MCP (Model Context Protocol) widget for AI assistants and external tools integration - see MCP Widget Usage Guide
- Deep link support: Open connections with URLs like
telnet://192.168.2.31:34554orssh://user@host:22- see Deep link support wiki - Command line usage: check wiki
Download
Install
- For Mac user:
brew install --cask electerm - With snap:
sudo snap install electerm --classic - For some Linux distribution, you can find it from OS default App store(Ubuntu, Deepin, Mint...).
- For some linux OS, the
rpm,deb, orsnaprelease may not work, you can try thetar.gzor.appImagerelease. - For Windows users, you can install it from windows store, command-line installer winget and scoop is also recommended:
# winget https://github.com/microsoft/winget-cli winget install electerm.electerm # scoop https://github.com/lukesampson/scoop scoop bucket add dorado https://github.com/chawyehsu/dorado scoop install dorado/electerm
- Install from Debian repository (for Debian/Ubuntu-based systems) with
aptcommand
Check https://electerm-repos.html5beta.com/deb
- Install from npm
npm i -g electerm # After installation, it will immediately open for windows and linux, # For macOS, it will open the drag to install panel
Upgrade
- Auto upgrade: When a new version is released, you will get an upgrade notification after you start electerm again. You can then click the upgrade button to upgrade.
- Download: Just download the latest edition, reinstall.
- Npm: If you install from npm, just run
npm i -g electermagain. - If use Snap or some other distribution system, these systems may provide upgrades.
Known issues
https://github.com/electerm/electerm/wiki/Know-issues
Troubleshoot
https://github.com/electerm/electerm/wiki/Troubleshoot
Discussion
Support
Would love to hear from you, please tell me what you think, submit an issue, Start a new discussion, create/fix language files or create pull requests, all welcome.
Sponsor this project
github sponsor
https://github.com/sponsors/electerm
kofi
wechat donate
Dev
# May only works in Linux # needs nodejs/npm, suggest using nvm to install nodejs/npm # with nodejs 22.x git clone git@github.com:electerm/electerm.git cd electerm npm config set legacy-peer-deps true npm i # start vite dev server, requires port 5570 npm start # in a separate terminal session run app npm run app # code format check npm run lint # code format fix npm run fix
Test
npm run b npm run prepare-test cp .sample.env .env # edit .env, fill your test host/username/password, may only works in mac OS npm run test
Test build
# May only works in Linux # Install yarn first(to do yarn autoclean) # See https://yarnpkg.com/en/docs/install # Build linux only with -l npm i npm run b npm run pb ./node_modules/.bin/electron-builder --linux tar.gz # or replace tar.gz to rpm/deb/AppImage # check dist/ folder # build for linux arm/ ./node_modules/.bin/electron-builder --linux --arm64
Video guide
Change log
Visit Releases.
License
MIT


