1
0
Fork 0
mirror of https://github.com/gnachman/iTerm2.git synced 2025-12-04 04:23:59 -05:00
No description
Find a file
2025-12-03 15:29:28 -08:00
.github Add FUNDING.yml 2020-06-25 22:22:33 -07:00
.gitlab/issue_templates Add template for security report 2023-08-06 13:46:58 -07:00
api/library/python/iterm2 Remove bogus main menu item and rebuild menu_ids in python API docs 2025-11-11 11:47:00 -08:00
BetterFontPicker Rebuild deps with Xcode 26.0 2025-09-18 14:35:22 -07:00
ColorPicker Fix colorpicker eyedropper colorspace support 2025-10-08 16:39:24 -07:00
images Add a subtle bezel to the app icon so it doesn't look tilted. Issue 12561 2025-10-18 11:10:41 -07:00
Interfaces Add profile setting to disable progress bars 2025-11-29 16:55:33 -08:00
iTerm2.xcodeproj Add support for text replacements. Issue 9980 2025-12-02 12:42:40 -08:00
iTerm2ImportStatus Update interface builder files for tahoe control sizes, except the main settings panels which I configured to use the old sizes because fml 2025-09-09 13:35:16 -07:00
iTerm2SandboxedWorker Kitty image rendering cares about having a correct scaledSize which was previously not preserved. Fix that. The bug only affected out-of-process image decoding, which went through an encode-decode. During decoding, the scaled size was not preserved, so fix that too. Issue 11766 2025-10-18 11:11:00 -07:00
iTerm2XCTests Fix vertical alignment of timestamps 2025-12-01 21:56:48 -08:00
iTermAI Make an icon for iTermAI. I'm re-releasing this as 1.1 because existing iTerm2 installations won't run a newer version 2025-03-31 09:31:02 -07:00
iTermBrowserPlugin Icon for browser plugin 2025-09-09 13:35:16 -07:00
iTermServiceHelper/iTermServiceHelper.xcodeproj/xcshareddata/xcschemes Add iTermAI. This is a small application that performs network I/O to AI providers. By not installing it you can be sure it's impossible to accidentally send info out. 2024-05-22 15:50:31 -07:00
Model.xcdatamodeld/Model.xcdatamodel Add an index to lastUse on recent directories. If there are more than 1000, remove the older ones. 2017-10-30 22:46:27 -07:00
ModernTests Indicate number of lines of output in command info. Issue 12596 2025-11-06 13:53:38 -08:00
OtherResources Make clock status bar component optionally show server time and timezone 2025-11-27 11:21:18 -08:00
pidinfo Refactor conductor to deal with sendable problems 2025-07-02 16:58:08 -07:00
plists Set LSHandlerRank to Alternate for http(s) 2025-11-12 15:46:24 -08:00
proto Expose style info to Python API. Issue 11848 2024-09-11 14:41:22 -07:00
pwmplugin More tweaks to spec 2025-11-19 11:32:30 -08:00
Resources Bump shell integration 2025-12-03 15:29:19 -08:00
SearchableComboListView Add key binding action to toggle a checkbox in settings. Issue 12579 2025-10-28 22:07:15 -07:00
ShellLauncher Add bash shell integration injection and add flag to enable automatic shell integration injection to prefs 2022-06-03 00:37:14 -07:00
SignedArchive Fix deprecations in SignedArchive 2025-07-02 16:58:08 -07:00
SignPlugin Use javascript for AI plugin to avoid code signing races 2024-06-02 15:12:28 -07:00
sources Add missing file 2025-12-03 15:29:28 -08:00
submodules Bump shell integration 2025-12-03 15:29:19 -08:00
SwiftyMarkdown Add portholes. 2022-04-29 00:15:22 -07:00
tests Fix handling of kitty images with transmitAndDisplay followed by more transmit chunks. Issue 12483 2025-09-27 20:47:22 -07:00
ThirdParty 🐛 fix(psmtabbarcontrol): sync add tab button appearance with style (#540) 2025-11-30 21:39:25 -08:00
tools Remove unneeded message in release notes 2025-09-18 15:07:43 -07:00
WebExtensionsFramework Tweak API of registry 2025-07-15 21:50:19 -07:00
.gitignore Add .claude/*.local.json to gitignore (#544) 2025-12-01 15:57:14 -08:00
.gitmodules Add SFSymbolEnum 2025-08-04 21:52:03 -07:00
AIStreaming.png Add AI Chat UI 2025-02-25 12:37:26 -08:00
CLAUDE.md Revert "Change how stoplight buttons work on macOS 26. Copying the buttons (using standardWindowButton:forStyleMask:) is cursed - I have no idea why this API exists if it doesn't produce a usable button, but whatever - so instead we do more or less what Chrome has done and only use the "real" buttons but hide them or fade them in and out as needed. This fixes a bug where buttons did the wrong thing on hover, and hopefully fixes a bug where they'd flicker sometimes. We do still have the ability to tweak the vertical position of the buttons with the private _titleHeight override. Issue 12474" 2025-11-09 16:40:51 -08:00
clock.png Add support for AI completion 2025-03-05 11:26:40 -08:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2021-01-09 11:14:50 -08:00
command.png Add support for AI completion 2025-03-05 11:26:40 -08:00
CommandIcon.png Add AI Chat UI 2025-02-25 12:37:26 -08:00
COPYING Add a COPYING file to clarify license. Issue 12556 2025-10-18 11:10:45 -07:00
deps.sb Make rustup path more specific 2025-09-09 13:35:14 -07:00
document.png Add support for AI completion 2025-03-05 11:26:40 -08:00
flowchart.png Add regex visualization to triggers settings 2025-05-25 21:55:04 -07:00
flowchart@2x.png Add regex visualization to triggers settings 2025-05-25 21:55:04 -07:00
idn-chars.html Use a plugin to enable the browser functionality 2025-09-05 15:58:45 -07:00
iTerm2.entitlements Change both main app's and extension's entitlements to specify com.apple.security.application-groups of (team prefix)iTerm. I'm not sure that mattered. Remove --deep from main app, and change provider's Info.plist's NSExtensionFileProviderDocumentGroup to match the app group. It now works! 2022-06-05 09:54:46 -07:00
iTerm2.sdef Add title to tab in applescript. shh don't tell anyone I don't want to support applescript 2025-08-08 17:53:21 -07:00
iTerm2SharedARC-Bridging-Header.h checkpoint 2020-01-26 18:03:47 -08:00
iTermFileProviderNightly.entitlements Fix file provider. 2022-07-20 22:35:51 -07:00
iTermMinimalComposerViewController.h If you click on a path in the prompt, open a window showing subdirectories. 2025-04-12 16:08:43 -07:00
iTermMinimalComposerViewController.m If you click on a path in the prompt, open a window showing subdirectories. 2025-04-12 16:08:43 -07:00
last-xcode-version Rebuild deps with Xcode 26.0 2025-09-18 14:35:22 -07:00
LICENSE Place license in LICENSE file for a more standard location. Leae README.license behind to avoid breaking links 2015-10-17 20:37:06 -07:00
LiquidGlassButton.swift Add PSMTahoeTabStyle 2025-09-09 13:35:15 -07:00
Makefile Add key binding action to toggle a checkbox in settings. Issue 12579 2025-10-28 22:07:15 -07:00
prove_network_in_app.sh Implement BrowserExtensionBackgroundService for background script execution 2025-07-03 23:23:59 -07:00
README.license README.license 2014-07-15 10:26:52 -07:00
README.md Modernize README with improved structure and design (#543) 2025-12-01 16:08:26 -08:00
sparkles.png Add support for AI completion 2025-03-05 11:26:40 -08:00
test-find-iframe.html Fix find on page to work with frames 2025-08-07 11:24:53 -07:00
test_network_in_app.swift Implement BrowserExtensionBackgroundService for background script execution 2025-07-03 23:23:59 -07:00
version.txt Fix version.txt, which fixes the nightly build 2025-10-01 11:33:53 -07:00

iTerm2

macOS Terminal Replacement

Version Platform

WebsiteDownloadsDocumentationFeatures


About

iTerm2 is a powerful terminal emulator for macOS that brings the terminal into the modern age with features you never knew you always wanted.

Key Features

  • tmux Integration - Native iTerm2 windows/tabs replace tmux's text-based interface. Run tmux -CC and tmux windows become real macOS windows. Sessions persist through crashes, SSH disconnects, and even app upgrades. Collaborate by having two people attach to the same session.
  • Shell Integration - Deep shell awareness that tracks commands, directories, hostnames, and usernames. Enables click-to-download files via SCP, drag-and-drop uploads, command history per host, recent directories by "frecency," and marks at each prompt.
  • AI Chat - Built-in LLM chat window that can optionally interact with terminal contents. Link sessions to get context-aware help, run commands on your behalf, or explain output with annotations.
  • Inline Images - Display images (including animated GIFs) directly in the terminal. Use imgcat to view photos, charts, or visual output without leaving your workflow.
  • Automatic Profile Switching - Terminal appearance changes automatically based on hostname, username, directory, or running command. SSH to production? Background turns red. Different environments get different visual contexts.
  • Dedicated Hotkey Windows - System-wide hotkey summons a terminal that slides down from the top of the screen (or any edge), even over fullscreen apps. Pin it or let it auto-hide.
  • Session Restoration - Sessions run in long-lived server processes. If iTerm2 crashes or upgrades, your shells keep running. When iTerm2 restarts, it reconnects to your sessions exactly where you left off.
  • Built-in Web Browser - Browser profiles integrate web browsing into iTerm2's window/tab/pane hierarchy. Copy mode, triggers, AI chat, and other terminal features work in browser sessions.
  • Configurable Status Bar - Per-session status bar showing git branch, CPU/memory graphs, current directory, hostname, custom interpolated strings, or Python API components.
  • Triggers - Regex patterns that fire actions when matched: highlight text, run commands, send notifications, open password manager, set marks, or invoke Python scripts.
  • Smart Selection - Quad-click selects semantic objects (URLs, file paths, email addresses, quoted strings). Right-click for context actions. Cmd-click to open.
  • Copy Mode - Vim-like keyboard selection. Navigate and select text without touching the mouse. Works with marks to jump between command prompts.
  • Instant Replay - Scrub backward through terminal history to see exactly what was on screen at any moment, with timestamps. Perfect for catching fleeting errors.
  • Python Scripting API - Full automation and customization via Python. Create custom status bar components, triggers, menu items, or entirely new features.
  • Open Quickly - Cmd-Shift-O opens a search across all sessions by tab title, command, hostname, directory, or badge. Navigate large session collections instantly.

Installation

Download

Get the latest version from iterm2.com/downloads

Build from Source

See our build guide for detailed instructions.


Development

Building

# Clone the repository
git clone https://github.com/gnachman/iTerm2.git
cd iTerm2

# Build with Xcode
xcodebuild -project iTerm2.xcodeproj -scheme iTerm2 -configuration Debug

Contributing

We welcome contributions! Please read our contribution guide before submitting pull requests.


Bug Reports & Issues

Note: We use GitLab for issues because it provides better support for attachments.


Resources

Resource Link
Official Website iterm2.com
Documentation iterm2.com/documentation
Community iTerm2 Discussions
Downloads iterm2.com/downloads

License

iTerm2 is distributed under the GPLv3 license.


Support

If you love iTerm2, consider: