Skip to Content
Руководство для пользователейВозможностиУправление компьютером

Computer Use

В Qwen Code входит навык computer-use, который обучает модель управлению настольными приложениями через два отдельно устанавливаемых пакета:

bundled computer-use skill -> @qwen-code/node-repl-mcp -> @qwen-code/cua-sdk/computer-use -> native cua-driver accessibility backend

Qwen Code не включает MCP-сервер, SDK или нативный драйвер. Навык устанавливает внешние пакеты автоматически, если они отсутствуют.

Warning

Computer Use может читать UI приложений и управлять вводом мыши и клавиатуры. Используйте его только в доверенных средах и внимательно проверяйте одобрения MCP.

Автоматическая настройка

Требуется Node.js 22 или новее и npm.

При первом использовании навык самостоятельно выполняет следующие команды:

qwen mcp add --scope user node-repl npx -y @qwen-code/node-repl-mcp@0.1.7 npm install --no-save --package-lock=false @qwen-code/cua-sdk@0.20.11

Перезапустите Qwen Code после первого добавления MCP-сервера. Затем навык продолжает задачу рабочего стола через node_repl.

Установка SDK не изменяет package.json и lockfile, но записывает в node_modules рабочего пространства. Его postinstall загружает и проверяет нативный пакет для текущей платформы.

Удаление конфигурации MCP или установки SDK в рабочем пространстве отключает путь выполнения; устаревшего фолбэка нет.

Использование

Попросите Qwen Code использовать $computer-use для задачи рабочего стола. После бутстрапа он использует рабочий процесс приложения на macOS:

  1. привязывает приложение с помощью computer.getApp(nameOrIdentifierOrPath);
  2. считывает app.getState() для получения компактного текста доступности, затем автоматические инкрементальные обновления;
  3. выполняет одно или несколько действий, используя короткие идентификаторы элементов из этого текста;
  4. получает новейшее состояние перед принятием решения о дальнейших действиях; и
  5. закрывает клиент SDK и сбрасывает REPL только тогда, когда никакое другое постоянное состояние не требуется.

Драйвер — единственный компонент, который вычисляет диффы наблюдений. Код модели использует типизированные методы SDK и не диспатчит произвольные имена инструментов драйвера. Дескриптор приложения отслеживает текущее окно и диалоги, хранит идентификаторы нативных элементов внутри себя и делегирует ввод нативному драйверу. Код модели не выбирает режимы переднего/фонового плана. Неподтверждённые действия не воспроизводятся. getState() может открыть обнаруженное остановленное приложение; действия никогда его не перезапускают. Существующие API точных окон остаются доступными на Windows и Linux.

const app = await computer.getApp('Microsoft Excel'); nodeRepl.write((await app.getState()).text); // Используйте идентификатор элемента из возвращённого состояния. await app.click(37); await app.typeText('hello'); nodeRepl.write((await app.getState()).text);

Обновляйте состояние после открытия или закрытия диалога перед повторным использованием идентификаторов элементов. Каждое обновление состояния App захватывает текущий скриншот внутренне. Возврат по умолчанию оставляет его скрытым; запросите его явно через app.getState({ includeScreenshot: true }), когда модели нужно изображение.

Разрешения

Node REPL — это MCP-сервер, который выполняет написанный моделью JavaScript с обычными правами Node.js. Его вызовы следуют обычному потоку одобрения MCP Qwen Code. SDK также применяет нативную авторизацию.

На macOS для наблюдения доступности и ввода требуется разрешение Accessibility. Скриншоты дополнительно требуют разрешения Screen Recording. macOS может привязать выдачу разрешения к терминалу или IDE, из которых запущен Qwen Code. Windows и Linux используют свои платформенные средства доступности и ввода.

Использование компьютера перед вами из удалённой сессии

Когда Qwen Code работает на машине без графической среды (dev box, сервер), навык всё равно может управлять рабочим столом, за которым вы сидите: этот компьютер предоставляет свой собственный node_repl одной удалённой сессии. Сейчас это работает на macOS.

Настройте это один раз на вашем компьютере:

npx -y @qwen-code/node-repl-mcp@0.1.7 desktop-relay install

Это установит node_repl и SDK в ~/.qwen/desktop-relay и зарегистрирует сокет launchd на 127.0.0.1:47821. В фоне ничего не работает; launchd запускает короткоживущий процесс только при подключении.

  • Из Web Shell. Удалённый демон должен запускаться с QWEN_SERVE_CLIENT_MCP_OVER_WS=1, а Web Shell должен быть защищённой страницей (https или http://localhost через SSH-туннель). В сессии выберите Use this computer в футере боковой панели, затем Connect this computer.

Диалог на вашем компьютере запрашивает разрешение на каждое подключение. Разрешённая сессия может выполнять код на вашем компьютере с вашими правами, видеть и управлять его экраном — так же, как локальный Computer Use — пока вы не отключите её или она не завершится. При первом подключении macOS запросит разрешение для node в Accessibility и Screen Recording.

Устранение неполадок

  • Если node_repl всё ещё недоступен после автоматической настройки, перезапустите Qwen Code и проверьте сервер командой qwen mcp list.
  • Если импорт SDK всё ещё не работает после автоматической настройки, убедитесь, что Qwen Code запущен из рабочего пространства, где был установлен пакет.
  • После таймаута, отмены, сброса или краха ядра заново выполните бутстрап клиента SDK и запросите свежее состояние.

См. также

Last updated on