Skip to content
scarletkcPublic

About

Open-source desktop SSH client with an AI assistant and end-to-end encrypted sync through your own Cloudflare account

Topics

Resources

Contributing

Security policy

Stars

157 stars

Watchers

1 watching

Forks

Repository files navigation

Hatoba logo

Hatoba

Open-source desktop SSH client with an AI assistant and end-to-end encrypted sync through your own Cloudflare account

Website | Download | Documentation

Release CI Tauri Sync License Mentioned in Awesome Rust

hatoba-promo-en.mp4

Hatoba keeps your hosts, keys, and terminal sessions in one place, syncs them between your devices, and puts an AI assistant beside each terminal.

  • AI in every terminal. The assistant reads the screen, runs commands, and edits files on the host, and you choose what it may do without asking.
  • No Hatoba server. Sync runs entirely in your Cloudflare account, so nobody else holds your data.
  • End-to-end encrypted. Everything is encrypted on your device before it leaves, so a leaked Worker, D1 database, or even the whole Cloudflare account exposes only ciphertext.
  • Local first. Everything works offline, and sync is optional.
  • Windows first. A custom title bar with Snap Layouts, Mica, Segoe UI and Cascadia fonts, and Windows input methods. Each release also has Linux packages and an experimental macOS build.

Features

  • AI assistant: reads the screen, runs commands, edits files on the host or your own computer, and searches the web. You approve its actions, or let Auto mode approve the safe ones. It uses your own OpenAI-compatible or Anthropic API key and supports skills and MCP servers.
  • Hosts: groups, tags, fuzzy search, ~/.ssh/config import, ProxyJump, and proxies. Type ssh user@host in the search box to connect without saving a host.
  • Resource usage: the CPU, memory, disks, and network of every saved host, read over SSH with nothing to install on the servers.
  • Terminal: tabs, truecolor, CJK input methods, search, and clickable links, with local shells such as PowerShell, WSL, or your login shell beside the SSH tabs.
  • SFTP: a file panel beside the terminal with drag-and-drop upload and download, and remote files edited in your own editor, uploaded on every save.
  • Port forwarding: local, remote, and SOCKS forwards that can start with the connection or run without a terminal.
  • Authentication: passwords, Ed25519, ECDSA, and RSA keys, ssh-agent, and 2FA, with OpenSSH, PEM, and PuTTY key import and key generation.
  • Security: host key verification, a master password with a recovery code, and auto-lock.
  • Sync: incremental sync between your devices, with conflicts you can review item by item and a device list with revocation.
  • Languages: English, Simplified Chinese, Traditional Chinese, and Japanese, following the system language unless you pick one in Settings.

The documentation covers each one in detail.

Download

Download for Windows Download for Linux Download for macOS

The download page offers the newest release for your system, with its checksums and install steps, and Releases has every version.

Package managers can install and update it too. On Windows, from the Extras bucket of Scoop:

scoop bucket add extras
scoop install extras/hatoba

On Arch Linux and distributions based on it, install hatoba-bin from the AUR with an AUR helper such as yay:

yay -S hatoba-bin

The maintainer uses Windows, so the Linux and macOS builds get little testing on real machines. If something doesn't work on them, please open an issue. To build Hatoba yourself, follow the development guide.

Security

Keys are derived from your master password with Argon2id, and every item is encrypted with AES-256-GCM before it is stored or synced. The Worker stores ciphertext and the hashes it needs to sign you in, never your master password or any plaintext. If you forget the master password and lose the recovery code, your data cannot be recovered. The security model describes the key hierarchy and the threat model.

The AI assistant sends the model provider your messages, their attachments, the terminal's screen as each message is sent (unless you turn that off), and what its tools read. Host addresses, passwords, and keys reach the provider only when they appear on the screen, in a tool result, or in an attachment you send.

Set up sync

Sync is optional. It runs on a Worker and a D1 database that you deploy once to your Cloudflare account, and the free plan usually covers personal use. Hatoba can deploy them for you with a Cloudflare API token; otherwise deploy them with one click from the browser or with wrangler, then connect the first device with the Worker URL and a setup token you generate during deployment. Other devices need only the Worker URL and the master password.

Deploy the sync Worker walks through each way and connecting Hatoba, and covers upgrades, resets, and backups.

Documentation

License

Hatoba is licensed under MIT.

About

Open-source desktop SSH client with an AI assistant and end-to-end encrypted sync through your own Cloudflare account

Topics

Resources

Contributing

Security policy

Stars

157 stars

Watchers

1 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages