Инструмент для управления настольным компьютером от имени ИИ-агентов: считывает реальную структуру интерфейса любого приложения через системное дерево доступности, возвращает снимок в формате JSON, где каждый интерактивный элемент имеет ссылку; агент выполняет действия (клик, ввод) по этим ссылкам, а затем делает новый снимок для проверки, не полагаясь на распознавание пикселей.
Звёзды 1833 (+22 / 24 ч)
Причины
- Ссылки привязаны к соответствующему снимку; при изменении интерфейса возвращаются ошибки STALE_REF или AMBIGUOUS_TARGET, требующие повторного снимка, что предотвращает ошибочные клики по удалённым строкам; по умолчанию используется безголовый режим с управлением через интерфейсы доступности, без перемещения курсора и перехвата фокуса; для реального ввода используйте флаг --headed
- Доступно 60 команд, из которых 56 готовы к использованию: наблюдение, действия по ссылкам, управление клавиатурой и мышью, управление приложениями и окнами, уведомления, буфер обмена, ожидание, отслеживание сессий; для сложных интерфейсов сначала используйте snapshot --skeleton для получения структуры, а затем углубляйтесь в конкретные области
- Каждая команда выводит единый JSON-конверт; ошибки содержат код, информацию о возможности безопасного повторного запуска и рекомендации; также предоставляется библиотека на C для вызова функций непосредственно из процесса
Использование
- npm install -g agent-desktop; в macOS необходимо предоставить права на доступ к вспомогательным технологиям (agent-desktop permissions --guide), в Linux требуется графическая сессия и at-spi2-core
- Предложите агенту сначала прочитать встроенную документацию: agent-desktop skills get desktop и skills get platform; или выполните npx skills add https://github.com/vercel-labs/agent-desktop --skill agent-desktop
- Минимальный цикл: agent-desktop snapshot --app Finder -i → agent-desktop click <ссылка из снимка> → повторный snapshot для проверки
Риски
- Снимки, буфер обмена, скриншоты и логи могут содержать личные данные с рабочего стола; авторы предупреждают о недопустимости их размещения в публичных логах; опциональная функция JEV может отправлять описание экрана вашему настроенному поставщику моделей
- Возможности в Linux зависят от X11 / Wayland и GNOME, некоторые функции отсутствуют; официальные пакеты для Homebrew и Scoop ещё находятся на рассмотрении; лицензия Apache-2.0