explaingit

candratama/tamagosh

Analysis updated 2026-06-24

11GoAudience · ops devopsComplexity · 2/5Setup · easy

TLDR

Terminal SSH connection manager in Go with a built-in two-pane SFTP browser, AES-256-GCM encrypted password storage, and ed25519 key generation.

Mindmap

mindmap
  root((tamagosh))
    Inputs
      Saved server entries
      SSH key files
      Encrypted passwords
    Outputs
      SSH sessions
      File transfers
      Generated ed25519 keys
    Use Cases
      Manage many SSH servers
      Browse remote files
      Edit remote files locally
      Generate SSH keys
    Tech Stack
      Go
      sshpass
      AES-256-GCM
      SSH
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Manage a list of SSH servers with passwords stored locally and encrypted with AES-256-GCM

USE CASE 2

Open a Norton Commander style SFTP browser to copy files between local and remote with progress bars

USE CASE 3

Generate fresh ed25519 SSH keys from inside the terminal app

USE CASE 4

Edit remote files in your local editor with automatic download and re-upload

What is it built with?

GoSSHSFTPsshpass

How does it compare?

candratama/tamagoshjimzhang168872/vpnkitpedroborgesdev/tunnerse
Stars111111
LanguageGoGoGo
Setup difficultyeasymoderatemoderate
Complexity2/53/53/5
Audienceops devopsops devopsdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · easy Time to first run · 5min

Single go install command, but password mode also needs the sshpass tool installed separately.

In plain English

Tamagosh is a terminal program for managing SSH connections to remote servers. It is written in Go and shows your saved servers in a list, where you can add, edit, delete, or filter them with single key presses. Hitting Enter on a connection opens an SSH session right there in the terminal. Passwords are saved locally and encrypted with AES-256-GCM, so you do not need a separate password store, GPG, or a system keyring. Each connection can use either a password or an SSH key. Password mode needs the sshpass tool installed, and the password is injected at connect time rather than typed manually. SSH key mode points at a private key file on disk, and if the key has a passphrase, that passphrase is also encrypted locally and fed to ssh through SSH_ASKPASS, so it never appears in the process arguments. Pressing K in the list lets you generate a fresh ed25519 key from inside the app, with the public and private files written into the config directory at the right permissions. A built-in SFTP browser opens with the f key. It shows two panes, one for your local machine and one for the remote server, in a Norton Commander style. You can copy files or entire folders with a real byte level progress bar, multi-select with the space bar, rename, delete, make directories, change file modes, jump to a path, sort, toggle hidden files, and bookmark folders per connection. Pressing e opens any file in your editor, and for remote files Tamagosh downloads the file to a temporary location, lets you edit it, then re-uploads it if you saved changes. Installation is one command, go install github.com/Candratama/tamagosh@latest, plus optionally sshpass for password mode. The first run creates the configuration directory under ~/.config/tamagosh, including the encryption key file with mode 0600. The program is a single static binary with no Python or Node dependencies, supports mouse clicks and scroll wheel inside the terminal, and uses the Gruvbox material dark hard color palette. The README also mentions auto-migration from an older config path used by an earlier name of the same project.

Copy-paste prompts

Prompt 1
Install tamagosh with go install and add my first SSH server with a key based connection
Prompt 2
Show me how tamagosh encrypts saved passwords and where the AES key file lives on disk
Prompt 3
Open the SFTP browser in tamagosh and copy a folder from a remote server with a progress bar
Prompt 4
Generate a new ed25519 key from inside tamagosh and explain where the public and private files end up
Prompt 5
Configure tamagosh to use sshpass for password connections and confirm passwords never appear in process args

Frequently asked questions

What is tamagosh?

Terminal SSH connection manager in Go with a built-in two-pane SFTP browser, AES-256-GCM encrypted password storage, and ed25519 key generation.

What language is tamagosh written in?

Mainly Go. The stack also includes Go, SSH, SFTP.

How hard is tamagosh to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is tamagosh for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.