# Migrate to Warp from iTerm2

Warp imports your iTerm2 profile automatically, bringing over theme, font, keybindings, hotkey window, and more in a few clicks. This page walks through the importer, what it covers, and what to reconfigure manually after.

## What transfers automatically

Warp ships a built-in iTerm2 importer that reads your default profile from `~/Library/Preferences/com.googlecode.iterm2.plist`. It imports:

* **Theme** - foreground, background, cursor, and all 16 ANSI colors (light and dark variants if configured).
* **Font** - family and size (when the font exists on your system and is supported by Warp).
* **Default shell** - if you've set a custom Command in your iTerm2 profile.
* **Working directory behavior** - Warp translates iTerm2's "Reuse previous session's directory" and similar options.
* **Window dimensions** - rows and columns.
* **Opacity and blur.**
* **Copy-on-select, mouse and scroll reporting, and Option-as-Meta settings.**
* **Global hotkey** - if you use a hotkey window or hotkey activation, Warp maps it.

To run the importer:

1. In Warp, open the [Command Palette](https://docs.warp.dev/terminal/command-palette).
2. Search for **Import External Settings**.
3. Select **iTerm2 Profile: Default**. Warp only imports the profile marked as your Default Bookmark in iTerm2.
4. Choose which settings to keep or skip on the preview screen.

<figure><img src="https://4009768362-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPsjNxoJ0NFCXW6rRdHH3%2Fuploads%2Fgit-blob-355fb38a9eca18812a736fe79f11c7ee142ec30f%2Fmigrate-to-warp.png?alt=media" alt="Select a settings profile to import"><figcaption><p>Select a settings profile to import</p></figcaption></figure>

## Use Warp's agent for follow-up settings

If the importer doesn't pick up something you care about — a non-default profile, an unusual keybinding, a specific setting — ask Warp's agent to translate it directly. Warp ships a [`settings.toml` file](https://docs.warp.dev/terminal/settings) and a bundled `modify-settings` skill that lets the agent read your iTerm2 plist and write equivalent values into Warp's settings.

1. In Warp, switch to [Agent Mode](https://docs.warp.dev/agent-platform/warp-agents) with `⌘+I`.
2. Paste a prompt like:

   > Read my iTerm2 preferences with `defaults read com.googlecode.iterm2` and port any settings that the importer didn't cover (extra profiles, custom keybindings) into my Warp `settings.toml` using the `modify-settings` skill. Show me a diff before applying.
3. Review the proposed diff and approve. Warp hot-reloads `settings.toml`.

## What to reconfigure manually

A few iTerm2 features don't map directly and need a manual pass after import:

* **Multiple profiles.** Warp imports only your Default profile. If you rely on multiple iTerm2 profiles, create equivalent [tab configs](https://docs.warp.dev/terminal/windows/tab-configs) in Warp.
* **Keyboard shortcuts.** Warp's [keyboard shortcuts](https://docs.warp.dev/getting-started/keyboard-shortcuts) cover most iTerm2 bindings out of the box, but custom bindings need to be recreated in **Settings** > **Keyboard shortcuts**.
* **Split panes and arrangements.** Rebuild using [split panes](https://docs.warp.dev/terminal/windows/split-panes) and [tab configs](https://docs.warp.dev/terminal/windows/tab-configs).
* **Triggers.** Warp doesn't have a direct equivalent. Reach similar outcomes through [YAML workflows](https://docs.warp.dev/terminal/entry/yaml-workflows) or Agent Mode.

### Choose your prompt

After the import, choose which [prompt](https://docs.warp.dev/terminal/appearance/prompt) to use:

1. [**Warp prompt**](https://docs.warp.dev/terminal/appearance/prompt#warp-prompt) - Warp's native prompt with drag-and-drop context chips for git branch, directory, timestamps, and more. Configure in **Settings** > **Appearance** > **Prompt**.
2. [**Shell prompt (PS1)**](https://docs.warp.dev/terminal/appearance/prompt#custom-prompt) - inherits your existing shell prompt configuration unchanged. Pick this if you want Warp to match your iTerm2 prompt exactly.

## Warp-native equivalents

Features switchers commonly look for after leaving iTerm2, and where they live in Warp:

| From iTerm2                  | In Warp                                                                                                                                                                          |
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Hotkey window (Quake mode)   | [Global hotkey](https://docs.warp.dev/terminal/windows/global-hotkey) (imported automatically when detected in your iTerm2 profile)                                              |
| Triggers                     | [YAML workflows](https://docs.warp.dev/terminal/entry/yaml-workflows) for repeatable actions; Agent Mode for pattern-based automation                                            |
| Profiles                     | [Tab configs](https://docs.warp.dev/terminal/windows/tab-configs) for layouts; [Warp Drive](https://docs.warp.dev/knowledge-and-collaboration/warp-drive) for shared team setups |
| Autocomplete menu            | [Autosuggestions](https://docs.warp.dev/terminal/command-completions/autosuggestions) + [tab completions](https://docs.warp.dev/terminal/command-completions/completions)        |
| Instant replay               | [Session restoration](https://docs.warp.dev/terminal/sessions/session-restoration)                                                                                               |
| Password manager integration | [Warp Drive environment variables](https://docs.warp.dev/knowledge-and-collaboration/warp-drive/environment-variables)                                                           |

For more on what you can configure after migrating, see the [Warp quickstart](https://docs.warp.dev/getting-started/quickstart) and [Customizing Warp](https://docs.warp.dev/getting-started/customizing-warp).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.warp.dev/getting-started/migrate-to-warp/migrate-to-warp-from-iterm2.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
