Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. SSH
  3. i2cssh

i2cssh

MITPython

A csshX-like SSH tool for iTerm2 that connects to multiple machines using split panes and broadcast input.

GitHubGitHub
568 stars69 forks0 contributors

What is i2cssh?

i2cssh is a command-line utility that enables simultaneous SSH connections to multiple remote machines within iTerm2 using split panes. It solves the problem of managing numerous terminal windows by consolidating connections into a single iTerm2 window with broadcast capability, making it ideal for administering server clusters or cloud instances.

Target Audience

System administrators, DevOps engineers, and developers who regularly manage multiple servers or cloud instances via SSH and use iTerm2 as their terminal emulator on macOS.

Value Proposition

Developers choose i2cssh over alternatives like csshX because it integrates natively with iTerm2's split-pane interface and Python API, offering faster, more reliable session management without relying on AppleScript or separate window management.

Overview

csshX like ssh tool for iTerm2

Use Cases

Best For

  • Managing SSH connections to server clusters or cloud instances simultaneously
  • Executing commands across multiple servers at once via broadcast input
  • Organizing SSH sessions into reusable cluster configurations
  • Automating multi-server administration workflows within iTerm2
  • Replacing csshX with a more modern iTerm2-native solution
  • Controlling pane layouts and tab groupings for complex multi-host scenarios

Not Ideal For

  • Users on Linux or Windows without access to iTerm2 on macOS
  • Teams that rely on tmux or screen for session persistence and detachment
  • Environments requiring lightweight, scriptable SSH management without GUI dependencies

Pros & Cons

Pros

Native iTerm2 Integration

Leverages iTerm2's Python API for reliable automation, avoiding AppleScript and key-emulation, resulting in faster and more maintainable session management as noted in the Philosophy and NOTE sections.

Flexible Cluster Configuration

Supports YAML-based cluster definitions in ~/.i2csshrc, allowing reusable profiles with customizable SSH parameters, layouts, and includes, as detailed in the i2csshrc section.

Broadcast Command Capability

Utilizes iTerm2's 'Send input to all sessions' feature (⌘-shift-I) to execute commands simultaneously across all connected SSH sessions, enhancing efficiency for server administration.

Advanced SSH Customization

Offers extensive options like SSH agent forwarding, custom commands (e.g., kubectl exec via -x), environment variables, and gateway connections, as shown in the SSH options and usage.

Cons

Platform and Tool Lock-in

Exclusively dependent on iTerm2 on macOS, making it unusable for users on other terminal emulators or operating systems, limiting its portability.

Configuration Complexity

Requires managing a YAML config file with non-transitive includes and precedence rules (global < cluster < command line), which can be error-prone and confusing, as explained in the i2csshrc section.

UI Limitations

As admitted in the TODO, it lacks proper handling of window resizing and full-screen modes when layouts don't fit, potentially leading to a suboptimal user experience.

Open Source Alternative To

i2cssh is an open-source alternative to the following products:

c
csshX

csshX is a cluster SSH tool for managing multiple servers simultaneously through a single terminal window.

Frequently Asked Questions

Quick Stats

Stars568
Forks69
Contributors0
Open Issues2
Last commit7 months ago
CreatedSince 2011

Tags

#iterm2#ssh-management#terminal#cli-tool#python#automation#server-management#sysadmin-tools

Built With

Y
YAML
P
Python

Included in

SSH2.8k
Auto-fetched 13 hours ago

Related Projects

tmtm

Migrated to https://codeberg.org/Ganneff/tm

Stars56
Forks4
Last commit1 year ago
tmuxtmux

Terminal multiplexer

Stars0
Forks0
Last commit
ClusterSSHClusterSSH

Controls a number of xterm windows via a single graphical console

Stars0
Forks0
Last commit
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