Паспорт проекта
- Тип
- Проекты и продукты
- Задача
- Дать пользователю macOS единое рабочее окружение для терминальных сессий, удалённых tmux-процессов, контекстной помощи и расширения через скрипты.
- Для кого
- Пользователи macOS, работающие с shell/tmux и множеством терминальных сессий; разработчики Python-расширений и пользователи контекстной помощи AI.
- Технологии
- Python / API / LLM
- Что потребуется
- Начиная с указанной 3.7.0beta10 требуется macOS 13+.
- Основание
- 31 первоисточников
За 30 секунд
Дать пользователю macOS единое рабочее окружение для терминальных сессий, удалённых tmux-процессов, контекстной помощи и расширения через скрипты.
Отображает работу терминала, отслеживает команды/каталоги через shell integration, объединяет tmux с native UI, запускает regex-trigger actions и Python-автоматизацию.
Терминальный экран и inline images, история команд/marks, окна и вкладки tmux, результаты автоматизированных действий, ответы и annotations AI Chat.
Как это работает
На входе
Команды, клавиатурный ввод, вывод процессов и shell/tmux-события; regex-правила, Python-скрипты и необязательные запросы LLM с содержимым терминала.
Механизм
Отображает работу терминала, отслеживает команды/каталоги через shell integration, объединяет tmux с native UI, запускает regex-trigger actions и Python-автоматизацию. AI Chat может читать контекст связанной сессии и выполнять разрешённые действия.
Результат
Терминальный экран и inline images, история команд/marks, окна и вкладки tmux, результаты автоматизированных действий, ответы и annotations AI Chat.
Что важно понять
Техническое устройство
Процессы отделены от GUI в multiserver daemon; перед созданием restored sessions выполняется асинхронный partial attach с 10-секундным timeout. Companion relay описывает Noise XK end-to-end channel; каталог AI-моделей обновляется отдельно с consent и применяется при следующем запуске.
Для чего создано
Дать пользователю macOS единое рабочее окружение для терминальных сессий, удалённых tmux-процессов, контекстной помощи и расширения через скрипты.
Для кого
Пользователи macOS, работающие с shell/tmux и множеством терминальных сессий; разработчики Python-расширений и пользователи контекстной помощи AI.
Сценарии использования
tmux -CC как обычные окна macOS; SCP-файлы через shell integration; regex-trigger для уведомления или скрипта; анализ терминального вывода в AI Chat; наблюдение и ввод с paired iPhone.
Идея решения
Сохранить терминальные процессы независимо от GUI и соединить их состояние с native UI, shell-aware действиями и программируемыми hooks, чтобы контекст не приходилось вручную переносить между инструментами.
Какую задачу описывает источник
Restoration-документ прямо разбирает зависание запуска из-за медленного или нездорового daemon; асинхронная предварительная привязка с timeout отделяет это ожидание от восстановления окна.
Что известно из описания
Что потребуется
- Начиная с указанной 3.7.0beta10 требуется macOS 13+.
- AI зависит от настроенного провайдера; 3.7.4beta1 добавляет native Ollama.
- Просмотр/управление с iPhone в этой beta возможны без AI plugin/API key, но relay требует outbound HTTPS.
Что учитывать
- Сохранение процесса не гарантирует восстановление всей прежней визуальной сессии: запоздавший daemon-child принимается как orphan без scrollback/name/geometry.
- Relay не работает при блокировке его HTTPS, видит metadata и может отказать в обслуживании.
- Возможности master/unreleased нельзя приписывать стабильному выпуску.
Из первоисточников
Редакционный обзор NeoBridge Insight по материалам источников ниже. Права на исходные тексты, код и изображения принадлежат их правообладателям. Условия использования указаны в первоисточниках.
Автор проекта по источнику: George Nachman and contributors
Независимое тестирование проекта не проводилось.
gitlab.com
- gnachman/iterm2↗
- README.md↗
- docs/adding-a-shell-integration-checklist.md↗
- docs/adding-a-translation.md↗
- docs/ai-chat-cancellation-design.md↗
- docs/ai-live-test-cassettes.md↗
- docs/ai-model-catalog.md↗
- docs/bidi-selection-direction.md↗
- docs/bumping-the-deployment-target.md↗
- docs/companion-push-relay.md↗
- docs/companion-relay-design.md↗
- docs/floating-panes-design.md↗
- docs/info-plist-localization.md↗
- docs/iterm2-companion-relay-design.md↗
- docs/localization.md↗
- docs/names-and-titles.md↗
- docs/notes-3.7.0beta10.txt↗
- docs/notes-3.7.0beta2.txt↗
- docs/notes-3.7.0beta3.txt↗
- docs/notes-3.7.0beta4.txt↗
- docs/notes-3.7.0beta5.txt↗
- docs/notes-3.7.0beta6.txt↗
- docs/notes-3.7.0beta7.txt↗
- docs/notes-3.7.0beta8.txt↗
- docs/notes-3.7.0beta9.txt↗
- docs/notes-3.7.1.txt↗
- docs/notes-3.7.4beta1.txt↗
- docs/notes-3.7.txt↗
- docs/release-notes-guidelines.md↗
- docs/session-restoration-and-process-reattachment.md↗
- docs/uv-python-runtime-migration.md↗


Комментарий NeoBridge
Общая справка
Что стоит уточнить
Основания и справочные материалы
API ↗