OpenWorker — open-source AI-ассистент, который сдаёт готовую работу, а не чат
📂 Исходный код на GitHubOpen-source десктопный AI-ассистент (coworker) от Андрю Нг: выполняет рутинные задачи на вашей машине через файлы, терминал и 25+ коннекторов, работает с любыми моделями и запрашивает апрув перед опасными действиями
OpenWorker — AI-ассистент, который сдаёт готовую работу, а не чат
OpenWorker — это open-source десктопный AI-ассистент от Андрю Нг. Его позиционирование короткое: finished work, not chat. Вместо ответа в чате он отдаёт готовый результат — отполированный документ, ответ в Slack с цифрами, обновлённый календарь, разобранный inbox.
Проект находится в открытой бете: полностью работоспособен, обновляется сам, а «острые края» активно полируются. Код распространяется по лицензии MIT.
Как это работает
Схема работы простая:
- Вы описываете желаемый результат: «подготовь бриф для клиента», «разбери мой календарь», «проверь статус релиза по Jira и GitHub».
- OpenWorker разбивает задачу на шаги и работает с вашим десктопом, файлами и подключёнными приложениями.
- Перед любым значимым действием — отправкой сообщения, изменением календаря, выполнением команды — он останавливается и ждёт вашего одобрения или правки.
- Вы получаете готовый результат, а не список дел.
Под капотом:
┌────────────────────────────────────────────────┐
│ OpenWorker desktop app │ нативный shell + GUI
├────────────────────────────────────────────────┤
│ local agent server (Python) │ движок · инструменты ·
│ │ коннекторы — на aisuite
├───────────────┬────────────────┬───────────────┤
│ ваши файлы │ ваши инстру- │ ваша модель │ всё работает с вашими
│ и терминал │ менты: 25+ │ любой провай-│ ключами, на вашей машине
│ │ коннекторов │ дер │
└───────────────┴────────────────┴───────────────┘
Что умеет
- Производит реальные результаты — документы, таблицы, отчёты и веб-страницы ложатся файлами, которые можно открыть и расшарить.
- Работает из Slack — упомяните
@OpenWorkerв канале: сессия открывается на вашем десктопе, работа идёт с вашими инструментами, а ответ приходит в тред. - Использует повседневные инструменты — 25+ интеграций: GitHub, Slack, Jira, Notion, Linear, HubSpot, Outlook, monday.com, Gmail, Google Calendar, плюс терминал и локальные файлы. Любой инструмент поверх MCP подключается тоже, с контролем по каждому инструменту.
- Работает по расписанию — автоматизации для рутинных задач: утренний бриф, еженедельный отчёт, постоянное наблюдение за каналом. Прогоны попадают в приложение с полными транскриптами.
- Спрашивает перед действием — запись, отправка и shell-команды проходят через апрув. Фоновые прогоны паркуют свои запросы в inbox, а не действуют сами.
Своя модель — свой выбор
Доступ к моделям полностью ваш: выбираете провайдера, вставляете ключ, меняете в любой момент. Поддерживается из коробки:
OpenAI · Anthropic · Google Gemini · Inkling (Thinking Machines) · GLM (Z.ai) · DeepSeek · Kimi (Moonshot) · Qwen · MiniMax · Mistral · Grok (xAI) — плюс open-weight модели через Together и Fireworks, и полностью локальные модели через Ollama.
В приложении есть курируемый список моделей с отметкой, какие проверены для работы с инструментами. Любую другую строку модели тоже можно добавить, но на свой риск.
Приватность
OpenWorker локально-ориентирован (local-first). Всё живёт на вашей машине: агентский цикл, переписки, токены коннекторов и ключи моделей — в локальном секрет-хранилище приложения. Единственный облачный элемент — небольшой сервис, который обслуживает OAuth-рукопожатия для коннекторов. Приложение можно использовать без входа: коннекторы настраиваются через вручную созданные credentials и API-ключи.
Запуск из исходников
Требования: Python 3.10+, Node 20+ и (для десктопного shell) тулчейн Rust через rustup.
git clone https://github.com/andrewyng/openworker
cd openworker
# 1. Разовый bootstrap — создаёт Python venv в .venv
# (на Windows — из Git Bash или WSL)
bash packaging/setup_dev_env.sh
# 2. Запуск локального агентского сервера
.venv/bin/openworker-server --cwd ~/some/project --port 8765
# (Windows: .venv\Scripts\openworker-server.exe)
# 3. Во втором терминале — запуск UI
cd surfaces/gui
npm install
npm run dev # браузерный UI на dev-порту Vite
Сервер создаёт разовый токен при запуске в файле <state-dir>/sidecar-8765.token; Vite читает этот файл пользователя при старте. Для прямых API-вызовов токен передаётся в заголовке X-OpenWorker-Token. Десктопное приложение использует токен в памяти и никогда не пишет его на диск.
Чтобы запустить полноценное десктопное приложение вместо браузерного UI, замените шаг 3 на npm run tauri dev (из surfaces/gui/) — Tauri-оболочка открывает окно и сама следит за сервером.
Тесты: .venv/bin/pytest (сервер), npm test и npm run e2e в surfaces/gui (юнит-тесты GUI и герметичные end-to-end). Сборки десктопа — packaging/build_dmg.sh / packaging/build_windows.ps1.
Структура репозитория
| Директория | Что внутри |
|---|---|
coworker/ |
Python-бэкенд — агентский движок, провайдеры моделей, коннекторы, MCP-клиент, память, автоматизации |
surfaces/gui/ |
Десктопное приложение — React UI + Tauri-оболочка, которая следит за сервером |
stt/ |
Sidecar для распознавания речи (Rust) для голосового ввода |
packaging/ |
Сборки установщиков (macOS DMG, Windows), манифест авто-обновлений, dev-бутстрап |
docs/ |
Дизайн-спеки и журнал решений |
tests/ |
Набор тестов бэкенда |
Построен на aisuite
Движок OpenWorker построен на aisuite — лёгкой Python-библиотеке, которая даёт единый chat-completions API поверх всех провайдеров LLM и агентский слой с инструментами, тулкитами и поддержкой MCP. Если хотите собрать собственный агентский харнас вместо того, чтобы использовать готовый, — начинайте с aisuite; этот репозиторий — рабочая демонстрация того, что aisuite может тащить.
OpenWorker изначально разрабатывался внутри репозитория aisuite, а потом переехал в собственный дом.
Скачивание и вклад
Готовые сборки: macOS (Apple Silicon, macOS 12+, подписано и нотаризовано, авто-обновления) и Windows 10/11 (x64; сборки пока не подписаны кодом, поэтому SmartScreen предупредит — подпись в процессе).
Вклад приветствуется — через issues и pull request. Приложение обновляется само, поэтому фиксы быстро доходят до установок. Для PR просят прикладывать скриншоты того, что было сломано и как исправлено.
Лицензия — MIT.
Источник: https://github.com/andrewyng/openworker