A lightweight all-in-one terminal with 30+ protocols โ SSH, RDP, SFTP, databases, Kubernetes and more With a built-in autonomous AI Agent that plans and runs multi-turn shell commands
Remote terminal, local & serial terminal, file transfer, remote desktop, database, containers, and server monitor โ covering all remote access needs.
Remote Terminal โ SSH / Telnet / Mosh / Raw TCP with password or key authentication; includes SSH tunnel port forwarding so any connection can route through an SSH jump host.
Local & Serial Terminal โ PowerShell / CMD / Git Bash / WSL plus serial connections with configurable baud rate, data bits, stop bits, parity, and local echo.
File Transfer โ SFTP / SCP / FTP / FTPS / SMB / WebDAV / S3 / Zmodem with dual-pane browsing and rz/sz support in SSH terminals.
Server Monitor โ Real-time CPU, memory, disk, network, processes, ports, and network interfaces.
AI Assistant
Autonomous AI Agent that independently plans and executes multi-turn shell commands directly in your terminal.
Autonomous Multi-Turn Execution โ The AI Agent can plan, execute, observe results, and iterate across multiple rounds of shell commands without manual intervention.
LLM Integration โ Sidebar chat with Anthropic/OpenAI-compatible API, supporting Claude, GPT and other compliant models.
Flexible Execution Modes โ Bypass, dangerous only, dangerous + write, or confirm all โ you control how much oversight the AI Agent needs.
Persistent Conversations โ Chat history is saved per session, so conversations survive app restarts.
Terminal Integration โ AI commands execute directly in the active terminal tab, with optional pinning to a specific tab or following your active one. Collaborate side-by-side in split panes, each with its own terminal context.
Smart Completion โ While typing in SSH terminals, get real-time suggestions from your command history and AI-powered command rewrites.
Skills & Commands โ Reusable skill workflows and prompt-template commands, attached with / in the AI input; the AI can also save new skills itself.
Personalization
Connection management, split panes, cloud sync, themes โ your terminal, your way.
Connection Manager โ Group, quickly search, create, and batch-operate server connections.
Split Panes โ Drag terminal tabs into the content area to split freely and combine them into a workspace; drag panel edges to resize and rearrange.
Cloud Sync โ Encrypt and auto-sync settings via your own decentralized private repo on GitHub, GitLab, or Gitee โ no worry about data loss or leaks, and pick up your work seamlessly across devices.
Custom Keybindings โ Freely bind keyboard shortcuts for every action for full keyboard-driven operation, hands never leaving the keyboard.
Themes โ 28 terminal themes plus 3 UI themes (Dark / Deep Blue / Light) and a customizable background image.
Remote terminal for legacy devices and embedded systems
Terminal
Mosh
Server connections over high-latency or intermittent networks
Terminal
Serial
Serial port terminal with configurable baud rate and other parameters
Terminal
Raw TCP
Raw TCP console that opens a plain socket and transceives raw bytes
Terminal
Local
PowerShell, CMD, Git Bash, and other local shells
Terminal
WSL
Open installed WSL distributions via local terminal (Windows only)
File Transfer
SFTP
Server file management and transfer
File Transfer
SCP
Fallback protocol for legacy SSH servers that do not support SFTP
File Transfer
FTP / FTPS
Website hosting, NAS file transfer
File Transfer
SMB
Windows shared folders, NAS file access
File Transfer
WebDAV
WebDAV server file management
File Transfer
S3
Amazon S3 compatible object storage
File Transfer
Zmodem
In-terminal file transfer via rz/sz commands
Remote Desktop
RDP
Windows server remote desktop management (Windows only)
Remote Desktop
VNC
Linux server remote control
Remote Desktop
SPICE
KVM/QEMU VM management
Remote Desktop
X11
X Window forwarding
Database
MySQL
MySQL protocol: MySQL, MariaDB, TiDB, and more
Database
PostgreSQL
PostgreSQL protocol: PostgreSQL, CockroachDB, and more
Database
Oracle Database
Oracle Database connections through a pure Go driver
Database
SQL Server
SQL Server connections through a pure Go driver
Database
rqlite
Lightweight distributed DB built on SQLite with Raft consensus
Database
Redis
In-memory key-value store with visual key browsing and editing
Database
MongoDB
Document database with tree browsing, query editor, and inline editing
Database
Elasticsearch
Distributed search and analytics engine with index and document management
Containers
Kubernetes
Cluster resource browsing and management, Pod logs and exec, performance metrics
Containers
Docker
Container and image management, on the local machine or remote hosts over SSH
Containers
Podman
Docker-compatible container engine, on the local machine or remote hosts over SSH
Containers
nerdctl (containerd)
containerd container management with namespace switching
Containers
WSLC
Windows WSL2 Container runtime (Windows only)
Oracle Database support is implemented with a pure Go driver. uniTerm does not bundle Oracle Database, Oracle Instant Client, OJDBC, wallet files, or Oracle brand assets; users are responsible for their own Oracle licenses, credentials, and database access.
Windows (amd64 / arm64): installer uniterm-windows-*-installer-*.exe, or portable uniterm-windows-*-portable-*.zip
macOS (Intel / Apple Silicon): Download uniterm-darwin-*-*.dmg
Linux (amd64 / arm64): Download uniterm-linux-*-*.tar.gz, .deb, or .rpm
About Windows antivirus false positives: As this open-source software has not purchased a code-signing certificate, the unsigned executable may trigger false positives in some antivirus engines (e.g. Windows Defender). This is a known issue with Go/Wails applications (see wailsapp/wails#3308). You can add an exclusion rule in your antivirus to allow it. Please download only from the official open-source channels โ GitHub and Gitee. If you are still concerned about malware, you can download the source code and build and run it locally yourself.
Windows: WebView2 runtime (included in Windows 10+; older versions need a one-time install)
macOS: No extra dependencies (uses the system WebKit)
Linux: libgtk-3-0 and libwebkit2gtk-4.1-0 (preinstalled on most desktop distros)
Quick Workflows
SSH Connection
Click New Connection in the Connection Manager
Fill in host, port, and authentication (password or private key)
Click Connect to open an SSH terminal session
AI Assistant
Go to Settings and configure your AI provider (API endpoint, model, and key)
Open a terminal tab (SSH or local)
Open the AI sidebar chat โ type your task, and the AI Agent executes commands directly in your terminal
SFTP File Transfer
In the Connection Manager, right-click an SSH connection
Select Connect SFTP
Browse, upload, download, and drag-and-drop files in the dual-pane file manager
Tech Stack
Layer
Technology
Desktop Framework
Wails v3
Backend
Go
Frontend
Vue 3 + Pinia + Element Plus
Terminal
xterm.js
AI Protocol
Anthropic Messages API / OpenAI Chat Completions API
Build from Source
Requires Go 1.26+, Node.js 20+, and wails3 CLI v3.0.0-beta.12 (install with go install github.com/wailsapp/wails/v3/cmd/wails3@v3.0.0-beta.12). Additionally, macOS needs Xcode Command Line Tools, and Linux needs libgtk-3-dev and libwebkit2gtk-4.1-dev.
git clone https://github.com/ys-ll/uniterm.git
cd uniTerm
cd frontend && npm install && cd ..
wails3 dev # Development
wails3 build # Production build
See ROADMAP.md for the current protocol / feature status and what's planned next. For per-release history, see CHANGELOG.md.
Star this Project
If uniTerm is helpful to you, please consider giving it a โญ Star โ it's the best encouragement for the project and helps more people discover it.
Feedback & Contributing
This is a personal hobby project maintained in the author's spare time, with no commercialization or sponsorship plans โ anyone who shares the same interest is warmly welcome to join, discuss, and build together.
Issues, suggestions, and feedback are welcome at GitHub Issues, and code contributions via Pull Request are always welcome. Due to the wide variety of terminal environments and usage scenarios, the author cannot cover every possible case in testing โ if you run into any issues, feel free to fork the project and contribute directly. This project welcomes vibe coding.
Thanks to the following people for contributing code and improvements, and to everyone who reported issues and shared suggestions โ you help make uniTerm better โค๏ธ