agterm — плагин
Плагин учит Claude Code и Codex управлять терминалом agterm для macOS через agtermctl: сессии, панели, оверлеи и статусы агентов
- 743 ★ репозитория
- Последний коммит
- MIT
Широкий доступ
Почему такой уровень
- Агент печатает команды в любую сессию терминала и читает ее текст, а в сессиях могут быть открытые оболочки с доступами и секретами.
- Через оверлеи и скрипты агент запускает программы и показывает страницы с сохраненными входами.
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add plugins/agtermОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемШирокий доступИнструмент может менять данные, выполнять команды или работать с секретами.
- Агент печатает команды в любую сессию терминала и читает ее текст, а в сессиях могут быть открытые оболочки с доступами и секретами.
- Через оверлеи и скрипты агент запускает программы и показывает страницы с сохраненными входами.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
agterm — нативный терминал для macOS с небольшим интерфейсом и полным управляющим API. Оболочки собраны в именованные рабочие пространства, а все, что в них есть, доступно скрипту через утилиту `agtermctl` по локальному сокету. Плагин `agterm` кладет агенту скилл, который описывает эту модель управления. Агент из сессии agterm сам создает сессии и делит панели, печатает в чужую сессию и читает ее текст, запускает программу в оверлее и получает код возврата, показывает HTML-страницы, картинки, документы и логи, выводит вопросы и списки выбора, ставит статус сессии в боковой панели и шлет сообщения другим панелям. Скилл устанавливается плагином `agterm@agterm` для Claude Code или Codex, либо пунктом меню Help ▸ Install Agent Skill в самом приложении. В репозитории также лежит кулинарная книга рецептов со скиллами для агентов.
Для кого. Пользователям Claude Code и Codex на Mac, которые ведут несколько агентов в разных сессиях и хотят, чтобы агент сам управлял терминалом.
Подходит, если
- Несколько агентов работают над проектом в отдельных сессиях, и надо видеть в боковой панели, кто занят, кто заблокирован, кто закончил.
- Агент должен показать отчет или страницу в оверлее поверх терминала и вернуть мой выбор по кнопкам.
- Нужно, чтобы агент сам собрал раскладку: рабочее пространство, сессии с разделенными панелями и сопутствующие процессы.
- Задачу в другой панели нужно запустить и дождаться кода возврата без переключения окон.
Не подходит, если
- Вы работаете не на macOS: приложение выпускается для Apple Silicon на macOS 14 и новее.
- Агент не должен получать доступ к другим сессиям терминала с вашими открытыми оболочками.
- Нужен обычный терминал без скриптового управления.
Пример запроса к агенту
Создай в agterm рабочее пространство `demo` с двумя сессиями: в одной запусти тесты, в другой логи, и отметь статус сессии с тестами, когда они закончатся.Ограничения
Нужен сам терминал agterm: готовые сборки только для Mac с Apple Silicon под macOS 14 и новее, скилл без приложения бесполезен. Скилл ставят одним способом, плагином или из меню приложения, иначе непонятно, какая копия сработает. Вывод терминала потоком не передается. Команда `session text` читает буфер по запросу, а `session type` возвращается сразу после постановки нажатий в очередь, поэтому чтение сразу после ввода может опередить оболочку. Команды `pick` и `ask` блокируют работу, пока пользователь не ответит. Хуки статусов агентов ставят отдельно через меню Help.
Как отключить. Удалите плагин командой `claude plugin uninstall agterm@agterm` (для Codex аналогичной командой Codex). Скилл, поставленный из меню, удаляют из каталога скиллов агента, а приложение через `brew uninstall --cask agterm`.
Частые вопросы
Как поставить скилл agterm в Claude Code?
Выполните `claude plugin marketplace add umputun/agterm`, затем `claude plugin install agterm@agterm`. Для Codex служат `codex plugin marketplace add umputun/agterm` и `codex plugin add agterm@agterm`.
Нужно ли приложение agterm?
Да. Скилл управляет терминалом через `agtermctl`, который идет в комплекте приложения. Cask Homebrew ставит и приложение, и эту утилиту.
Что показывает статус сессии?
Каждый агент работает в именованной сессии и сообщает, активен он, заблокирован или закончил. Статус отображается значком в боковой панели, команда: `agtermctl session status`.
Можно ли ставить скилл и плагином, и из меню?
Нельзя. Две копии оставляют неопределенным, какую выберет агент, поэтому берите один путь.
Что такое кулинарная книга в репозитории?
Папка `cookbook/` с готовыми рецептами: аннотирование документа, выбор задач из бэклога, оверлей с HTML-документом, запуск заданий по расписанию.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
ПлагиныСкилл учит агента делить окно терминала Zentty на панели, читать соседние сессии, искать в истории и звать вас уведомлением
Терминал на Rust с мультиплексором: сессии кодинг-агентов с разных машин в одном окне и скилл, чтобы агент видел соседние панели
Нативный терминал для macOS на базе Ghostty с вертикальными вкладками и уведомлениями, когда агенту нужен ответ
Нативный терминал для macOS с MCP-сервером и CLI: агенты видят панели, команды и вывод, а разрешения вы даете в одном окне
Терминальная панель для Claude Code и Codex: дерево агентов с живым статусом, лентой вызовов и запасом контекста.
CLI ставит общие скиллы, команды, субагентов, хуки и MCP-серверы сразу в восемь ИИ-инструментов в их родных форматах
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| agterm (эта карточка) | нет | 743 | |
| cmux | нет | 28 779 | терминал со встроенной поддержкой агентов; agterm держит минимум и дает агентам полный API через скилл |
| tmux-ide | да | 567 | надстройка над tmux для рабочих сред агентов; agterm нативный терминал macOS со своим сокетом управления |
Коротко о README
В README рассказано о модели рабочих пространств и сессий, установке приложения и скилла, примерах сценариев с `agtermctl` и документации. Отдельно перечислены родственные проекты и условия лицензии.
Бейдж для README
Исходный SKILL.md
--- name: agterm description: > Drive agterm, a macOS terminal, via agtermctl. Use in an agterm session: manage sessions, companions and workspaces; split panes; toggle the scratch; run, hide or show overlays; read exit status; show HTML pages, URLs or dev servers in an overlay with saved logins or as a page row; post a HUD/caption/notification/sidebar activity line; message panes; show a picker, question or input dialog; show images/markdown/code; type into or restart a pane by id, copy its selection, set the clipboard, search its scrollback; manage windows, font size and theme; reload or edit the keymap, event hooks and agterm-scoped ghostty config; run a custom command; read a closed window's session screen; subscribe to status, notify, lifecycle, selection, pane, tree and launch events; wait on agent status. Covers window/workspace/session addressing, session links, AGTERM_* variables, attaching another Mac's sessions, agterm-server windows, cookbook recipes, version and upgrades, diagnosing problems, filing a bug or feature request. when_to_use: > Trigger on: agterm, agtermctl, AGTERM_SESSION_ID, and, from inside a session, plain requests such as split the pane, print a link that jumps to a session, close the overlay, hide the overlay for a moment, show a message over the session, show a question dialog, agtermctl ask, ask the user to type a value or a message, let the user pick one or several items from a list, show an image inline, show this markdown file rendered, show this source file or log at a line, show me the diff of a file or the changes as links, tail or follow this log file, search the log or text page in the overlay, wrap long lines in the text or log page, show this HTML page or artifact, make an HTML page or explainer for this and show it, make a page that switches sessions or returns a choice, preview the report you generated, show this URL or the running dev server, keep me logged in to a page shown in an overlay, search the scrollback, flag every session in a workspace, tint a session or workspace row a color, show status or activity under a session in the sidebar, make a companion session, keep a related program next to a session, duplicate this session with its programs as a companion, make this session a companion, open a sub-session under this one, fold a session's companions, show a page as a companion of this session, open a page as its own session row in the sidebar, run my custom command, send a message to the other pane or another agent, read my messages, wait for a message, tell me when the selected session changes, wait until that worker session finishes, bring back the session I just closed, attach a session from another Mac, attach a remote session with all its companions, open a remote window for my Linux server, run sessions on a Linux host with agterm-server, install agterm-server on a Linux host, detach or reattach a remote session, copy this to the clipboard, was agterm upgraded under the running app, upgrade agterm without losing sessions, what recipes are there, the keymap editor will not open. allowed-tools: Bash(agtermctl *) --- <!-- agterm-skill --> # Driving agterm agterm is a native macOS terminal. It exposes a programmatic control channel over a local unix socket, driven by the companion CLI `agtermctl`. Use it to build and steer terminal layouts, run programs in overlays, type into sessions, notify the user in the exact session you are working in, and subscribe to control events. Events cover status, notifications, session lifecycle, split and scratch pane visibility, structural tree changes (an overlay, page or HUD opening or closing included) and the app's launch; `hooks.conf` runs a shell line on any of them, so `on app.launched` is where a script recreates what a relaunch does not restore. They do not stream terminal output; use `session text` to read a buffer. ## Am I inside agterm? Each shell agterm spawns gets these environment variables. Check `AGTERM_ENABLED` before assuming the control channel is available: - `AGTERM_ENABLED=1` — this shell runs inside agterm. - `AGTERM_SESSION_ID` — the current session's UUID (the session this shell belongs to). - `AGTERM_WINDOW_ID` / `AGTERM_WORKSPACE_ID` — the owning window / workspace UUIDs. The workspace id is