iTerm2  by gnachman

Terminal emulator reimagined for macOS

Created 14 years ago
16,768 stars

Top 2.8% on SourcePulse

GitHubView on GitHub
Project Summary

iTerm2 is a macOS-native terminal emulator that modernizes the command-line interface for developers and power users. It enhances productivity and workflow integration by offering advanced features beyond traditional terminals, aiming to bring the terminal into the modern age.

How It Works

The core approach involves deep shell integration, tracking commands, directories, and hostnames to enable features like native tmux window management, click-to-download files, and context-aware AI assistance. It leverages persistent server processes for session reliability and offers a built-in web browser for integrated online workflows.

Quick Start & Requirements

Installation is primarily via direct download from iterm2.com/downloads. Building from source requires cloning the repository and using Xcode. The application is exclusively for macOS.

Highlighted Details

  • tmux Integration: Replaces text-based tmux with native macOS windows/tabs, enabling persistent sessions across crashes and upgrades.
  • Shell Integration: Deep shell awareness tracks commands/directories, enabling click-to-download SCP, drag-and-drop uploads, and prompt marking.
  • AI Chat: Integrated LLM chat offers context-aware help, command execution, and output explanation, optionally interacting with terminal content.
  • Inline Images: Displays images and GIFs directly in the terminal via tools like imgcat.
  • Session Management: Robust session restoration, hotkey windows, automatic profile switching (hostname, directory), and "Open Quickly" search across sessions.
  • Advanced Interaction: Vim-like copy mode, instant replay for scrubbing history, smart selection for semantic objects, and regex-based triggers.
  • Extensibility: Python Scripting API for automation and customization of status bars, triggers, and features.
  • Integrated Browser: Browser profiles allow web browsing within iTerm2, supporting terminal features.

Maintenance & Community

Developed by George Nachman and community contributors. Issues are tracked on GitLab Issues, and community discussions are available via iTerm2 Discussions.

Licensing & Compatibility

Distributed under the GPLv3 license, which may impose copyleft restrictions on derivative works. Primarily intended for macOS.

Limitations & Caveats

The application is strictly limited to the macOS platform.

Health Check
Last Commit

1 day ago

Responsiveness

Inactive

Pull Requests (30d)
2
Issues (30d)
0
Star History
162 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.