Агент-Desktop: Структурированная автоматизация рабочего стола через деревья доступности ОС

Agent-desktop — это CLI для автоматизации нативных десктопных приложений, написанный на Rust и предназначенный для AI-агентов, которым нужно программно управлять десктопными приложениями. Вместо распространённого подхода на основе скриншотов (сделать скриншот, предсказать координаты пикселей, кликнуть, повторить), он взаимодействует через деревья специальных возможностей операционной системы — те же структурированные данные, которые используют программы чтения с экрана. Это означает, что модель видит роли элементов, их имена, иерархию и состояние напрямую, что делает взаимодействие более быстрым, дешёвым и устойчивым к изменениям интерфейса.
Ключевые возможности
- Единый двоичный файл Rust (~15 МБ), без зависимостей времени выполнения
- 53 команды, охватывающие наблюдение, взаимодействие, клавиатуру, мышь, уведомления, буфер обмена и управление окнами
- Вывод в JSON — машиночитаемый с кодами ошибок и подсказками для восстановления
- Цепочка активации, основанная на специальных возможностях: используются стратегии чистого API специальных возможностей до перехода к событиям мыши
- Детерминированные ссылки на элементы (например,
@e1,@e2) с оптимистической переидентификацией при изменениях интерфейса - Прогрессивный обход скелета: сначала неглубокое дерево (глубина ~3), аннотированное
children_count, затем погружение в конкретные области - Поддержка окон, меню, листов, всплывающих окон, предупреждений и уведомлений
- Специальная обработка деревьев специальных возможностей Chromium/Electron для снижения шума
- C ABI через cdylib — может быть загружен напрямую из Python, Swift, Go, Node, Ruby или C без вызова оболочки для каждой команды
Типичный рабочий процесс
Для плотных приложений, таких как Slack или VS Code, используйте прогрессивный обход скелета, чтобы минимизировать использование токенов:
# 1. Общий обзор — карта глубины 3, усечённые контейнеры показывают children_count
agent-desktop snapshot --skeleton --app Slack -i --compact
2. Погружение в область интереса (именованные контейнеры получают ссылки)
agent-desktop snapshot --root @e3 -i --compact
3. Действие над элементом, найденным при погружении
agent-desktop click @e12
4. Повторное погружение в ту же область для проверки изменения состояния
agent-desktop snapshot --root @e3 -i --compact
Для более простых приложений подойдёт полный снимок: agent-desktop snapshot --app Finder -i.
Установка
npm install -g agent-desktop
# Или используйте npx: npx agent-desktop snapshot --app Finder -i
# Из исходников: cargo build --release
Статистика производительности
На практике прогрессивный обход скелета снизил использование токенов на от 78% до 96% по сравнению с дампами полного дерева в приложениях Electron, таких как Slack, VS Code и Notion. Например, полное дерево специальных возможностей Slack может превышать 50 000 токенов — что непрактично для большинства контекстов LLM.
Для кого это
Для разработчиков, создающих десктопных агентов, инструменты внутренней автоматизации или исследовательские прототипы, которые хотят избежать затрат и хрупкости контуров управления на основе скриншотов.
📖 Прочитать полный источник: HN AI Agents
👀 Смотрите также

Профилировщик затрат на LLM: инструмент с открытым исходным кодом отслеживает расходы на API, чтобы обосновать использование локальных моделей.
LLM Cost Profiler — это инструмент на Python, который отслеживает каждый API-вызов к OpenAI/Anthropic, показывая, на что именно и сколько вы тратите. Он выявляет задачи, стоимость которых завышена относительно их сложности, предоставляя конкретные суммы в долларах для обоснования перехода на локальные модели.

Форман: Открытый Slack-бот для удаленного управления локальным кодом Claude
Foreman — это бесплатный бот для Slack с открытым исходным кодом, который обеспечивает удалённое управление локально запущенными экземплярами Claude Code. Он позволяет разработчикам отправлять задачи в Claude со своего телефона, сохраняя полный локальный доступ к файловой системе, инструментам и окружению.

俄语翻译:在无人值守的隔夜会话中运行克劳德代码的模式
Трехкомпонентная структура — цепной исполнитель, супервизор и единый контракт передачи — решает проблему дрейфа обратной связи в многозадачных автономных сессиях Claude Code.

AnyClaw: Ubuntu 24.04 с доступом к аппаратному обеспечению Android и ИИ-агентом для разработки в терминале
AnyClaw предоставляет полноценную среду Ubuntu 24.04, работающую в proot на Android, с прямым доступом к аппаратным API Android из терминала, включая камеру, GPS, аккумулятор и датчики через bash-команды и выполнение Java. Включает в себя ИИ-агента для программирования, который может управлять этими инструментами, и веб-интерфейс, доступный из любого браузера в той же сети.