Перейти к содержимому

Автоматизация 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