Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. SSH
  3. kyrat

kyrat

GPL-2.0Shell

SSH wrapper that transfers and sources your local dotfiles to remote sessions without requiring installation on the remote host.

GitHubGitHub
282 stars20 forks0 contributors

What is kyrat?

Kyrat is an SSH wrapper script that transfers and sources your local dotfiles (bashrc, vimrc, inputrc, tmux.conf, zshrc) to remote SSH sessions. It solves the problem of inconsistent shell environments when working across multiple servers by bringing your personalized configuration with you without requiring any installation on remote hosts.

Target Audience

System administrators, DevOps engineers, and developers who frequently SSH into multiple remote servers and want to maintain a consistent shell environment across all their sessions.

Value Proposition

Kyrat provides a lightweight, zero-installation solution for dotfile synchronization that works without root access on remote hosts, unlike alternatives that require package installation or complex setup procedures on each server.

Overview

SSH wrapper script that brings your dotfiles always with you on Linux and OSX

Use Cases

Best For

  • Maintaining consistent shell aliases and functions across multiple servers
  • Bringing custom vim configurations to remote editing sessions
  • Keeping tmux configurations synchronized across different machines
  • Ensuring consistent inputrc settings (like case-insensitive tab completion) on all SSH connections
  • Working with multiple client shells (bash, zsh) while keeping configurations portable
  • Securely transferring dotfiles without leaving permanent traces on remote hosts

Not Ideal For

  • Environments with strict SSH security policies that limit command-line argument length or script execution
  • Users needing to synchronize dotfiles beyond the supported types (e.g., .gitconfig, .profile, .ssh/config)
  • Cross-platform teams that include Windows users, as Kyrat only supports Linux and macOS clients
  • Scenarios requiring permanent dotfile installation on remote hosts for all user sessions

Pros & Cons

Pros

Zero Remote Installation

Requires no software installation or root access on remote hosts, as dotfiles are encoded and passed via ssh command line, making it ideal for shared or restricted servers.

Secure and Clean Transfer

Uses Base64 encoding and Gzip compression to obfuscate dotfiles during transfer, and automatically removes them from remote /tmp directories on session exit, enhancing security.

Flexible Shell Support

Allows spawning bash, zsh, or sh shells remotely via the KYRAT_SHELL environment variable, accommodating different user preferences without remote configuration.

Cross-Platform Client Support

Works on both Linux and macOS systems, enabling consistent dotfile usage across different local machines, as highlighted in the platform-specific installation instructions.

Cons

Restricted Dotfile Types

Only supports bashrc, vimrc, inputrc, tmux.conf, and zshrc, excluding common configuration files like .gitconfig or .profile, which limits its utility for full environment synchronization.

Setup and Dependency Hurdles

Requires bash >=4.0 and GNU coreutils, with manual installation via git clone and PATH export—no package manager support—making setup more complex than drop-in solutions.

Limited Documentation for Issues

The README's troubleshooting section is intentionally left blank, offering no guidance for resolving potential problems, which could frustrate users encountering errors.

Frequently Asked Questions

Quick Stats

Stars282
Forks20
Contributors0
Open Issues8
Last commit3 years ago
CreatedSince 2014

Tags

#vim#remote-development#bash#ssh-wrapper#shell-configuration#linux#tmux#dotfiles-management#macos#zsh

Built With

B
Bash
G
GNU coreutils

Included in

SSH2.8k
Auto-fetched 19 hours ago

Related Projects

xxhxxh

🚀 Bring your favorite shell wherever you go through the ssh. Xonsh shell, fish, zsh, osquery and so on.

Stars6,050
Forks124
Last commit1 month ago
ssh-pingssh-ping

Making SSH more convenient

Stars886
Forks25
Last commit2 years ago
ssh-vaultssh-vault

🌰 encrypt/decrypt using ssh keys

Stars508
Forks33
Last commit4 days ago
SSHPry v2SSHPry v2

SSHPry v2 - Spy & Control os SSH Connected client's TTY

Stars401
Forks77
Last commit8 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub