Автоматизация Moonpool скриптами и ИИ-агентами
Moonpool можно приводить в действие, не трогая его окно. Есть три интерфейса, и все они обслуживаются одним и тем же резидентным Moonpool (экземпляром в трее, который здесь называется хабом).
Каждая копия Moonpool - это собственный хаб: установленная и каждая портативная копия работают
независимо, у каждой свой канал управления. Интерфейс всегда доходит до той копии, чей
moonpool.exe он использует. См. Портативный режим.
| Интерфейс | Что это | Справочник |
|---|---|---|
| MCP-сервер | moonpool.exe mcp, stdio-сервер MCP, который запускает ИИ-хост. |
Настройка MCP, Инструменты MCP |
| Командная строка | moonpool.exe <verb> [args]. Второй запуск той же копии передаёт команду её хабу через канал управления и завершается. |
Командная строка |
| Канал управления | Именованный канал \\.\pipe\moonpool (\\.\pipe\moonpool-<id> для портативной копии) в Windows и сокет Unix в Linux, принимающий один запрос JSON на строку. |
Команды управления |
Как они связаны
Заголовок раздела «Как они связаны»- Хаб владеет всем: запуском приложений, журналами сеансов,
apps.json. - MCP-сервер - это клиент хаба, а не его вторая копия. Большинство вызовов инструментов
пересылаются хабу через канал управления, а ответ возвращается как результат
инструмента. Исключения:
moonpool_bootup_launcherсам запускаетmoonpool.exe;moonpool_app_outputи инструменты конфигурации просят хаб записать файл и затем читают его;moonpool_launcher_pathsдобавляет собственные пути процесса MCP к путям хаба. - Работает ли хаб, определяется проверкой этого канала через ping, а не поиском процесса. Хаб, который отвечает, работает; отсутствие канала или сокета означает, что он не работает.
- Каждый интерфейс выполняет те же обработчики, что и окно, поэтому команда делает то же, что и соответствующий щелчок.
- Если хаб не работает, инструменты, действующие на него, включая
moonpool_list_apps, отказывают с «Moonpool is not running». Устаревшего списка нет.moonpool_bootup_launcherзапускает его. Если что-то удерживает канал, но не отвечает в течение нескольких секунд, ошибка сообщает, что процесс Moonpool, возможно, завис. - MCP-сервер больше не переключается на управление сборкой хаба, появившейся до канала управления. Обновите эту копию либо завершите её и запустите заново.
Что может что-то менять
Заголовок раздела «Что может что-то менять»| Может изменить | Интерфейсы |
|---|---|
| Запуск, остановка или перезапуск приложения | MCP, командная строка, канал |
Перезапись apps.json |
MCP (moonpool_write_config, moonpool_restore_config), командная строка, канал |
| Выход из Moonpool | MCP (moonpool_shutdown_launcher), командная строка (quit), канал |
| Завершение MCP-помощника приложения | MCP (moonpool_stop_mcp_server), канал (stop-mcp) |
Обновление apps.json, повторная загрузка значков, показ окна |
MCP (moonpool_reload_config, moonpool_refresh_app_icons, moonpool_raise_launcher), командная строка (reload, refresh-icons, show), канал |
| Открытие окна или вкладки терминала | канал (open-window) |
| Очистка сохранённых наблюдений MCP-помощников | MCP (moonpool_reset_mcp_seen), канал (reset-mcp-seen) |
Инструменты только для чтения: moonpool_list_apps, moonpool_app_output, moonpool_read_config,
moonpool_launcher_paths, moonpool_window_state, moonpool_screenshot.
Свойства безопасности
Заголовок раздела «Свойства безопасности»- Запись конфигурации защищена. Запись должна нести токен версии последнего чтения,
устаревший токен отклоняется, а новый
apps.jsonпроверяется до того, как что-либо записывается. Отклонённая запись оставляетapps.jsonнетронутым. См. Инструменты MCP. - Идентификаторы приложений ограничены. MCP-сервер принимает только буквы, цифры,
.,_и-и никогда не принимает ведущий-, поэтому id нельзя принять за флаг командной строки. - Снимки экрана только у Moonpool.
moonpool_screenshotснимает одно из собственных шести окон Moonpool (main,settings,about,installer,editor,help,themes), но не экран и не другое приложение. PNG строится в памяти и возвращается встроенным; Moonpool не сохраняет его в файл. - Нет аутентификации канала. Moonpool не добавляет ни входа, ни токена к каналу управления или
сокету. Любой процесс, который может его открыть, может отправлять команды. В Linux файл сокета
создаётся с режимом
0600, поэтому открыть его может только ваш пользователь. - Хосты в песочнице обнаруживаются. Если MCP-сервер обнаруживает, что работает внутри упакованной
песочницы (Store/MSIX), где он видел бы закрытую копию файлов Moonpool, инструменты, которые
читают или записывают файлы (
moonpool_app_output,moonpool_read_config,moonpool_write_config,moonpool_restore_config), возвращают ошибку с объяснением причины вместо устаревших данных. Инструменты, использующие только канал управления, не блокируются. См. Настройка MCP.
Платформа
Заголовок раздела «Платформа»Канал управления существует на каждой платформе: именованный канал в Windows, сокет Unix в Linux (расположение описано в Командах управления). Только
screenshot (а значит и moonpool_screenshot) работает лишь в Windows; в Linux он возвращает
«not supported on this platform». Команды командной строки работают на каждой платформе.
См. также
Заголовок раздела «См. также»Moonpool: бесплатное программное обеспечение от FasterDB