OpenWork: open-source альтернатива Claude CoWork на базе opencode

#ai coding#agentic workflows#open-source#vibe coding

На этой неделе в твиттере фронтенд-архитекторов внезапно начали массово звездить different-ai/openwork — и не просто так. Это первый по-настоящему работающий open-source аналог Anthropic’s Claude CoWork, который не требует доступа к их API и при этом умеет в те же agentic workflows.

Что ломает OpenWork

Главная фишка — движок на opencode (ещё один недавний opensource-проект), который умеет:

  1. Держать в памяти контекст сессии как CoWork
  2. Парсить и модифицировать код по аналогии с MCP (Managed Codebase Protocol)
  3. Работать с RAG-контекстом из локальных файлов

В отличие от облачных решений вроде Cursor или GitHub Copilot Workspace, здесь вся цепочка выполняется локально через Ollama или любую другую локальную LLM. Для фронтенда это особенно актуально — можно нагрузить модель всей структурой проекта (webpack, vite, eslint) без отправки чего-либо в cloud.

Как это выглядит в работе

Установка через pip (пока только Python 3.10+):

pip install openwork-core

Базовый сценарий — запуск агента для рефакторинга React-компонента:

from openwork import CodeAgent

agent = CodeAgent(
    base_path="./src",
    config={
        "tasks": ["refactor_react"],
        "llm": "ollama/mistral:latest"
    }
)

agent.run("components/Button.js")

На практике получается гибрид ESLint и AI — агент ходит по файлам, находит устаревшие паттерны (унаследованные class components, избыточные useState) и предлагает диффы. Но в отличие от статических анализаторов, он понимает семантику:

[OpenWork] Found legacy context API in Button.js
Proposed change: migrate to createContext + useContext
+ import { createContext } from 'react';
- static contextType = ThemeContext;
+ const theme = useContext(ThemeContext);

Где трещит концепция

  1. Производительность — с локальными моделями типа Mistral или Llama 3 8B инференс занимает в 3-5 раз больше времени, чем в Claude CoWork. Особенно заметно на больших codebases.

  2. Контекстное окно — даже 32к токенов не хватает для одновременной загрузки фронтенд-конфигов (vite, eslint, prettier) и самого кода. Приходится явно указывать priority_files в конфиге.

  3. React/Vite bias — пока лучше всего заточен под современный React + Vite. SvelteKit и SolidJS поддерживаются, но без глубокой оптимизации.

Для кого это сейчас актуально

  1. Команды с ограничениями на cloud-сервисы — когда нельзя заливать код даже в GitHub Copilot.
  2. Специалисты по legacy-коду — для постепенной миграции старых AngularJS/jQuery проектов.
  3. Энтузиасты agentic workflows — чтобы экспериментировать с RAG поверх локальных codebases.

Если вы уже пробовали Cursor в режиме agentic или настраивали Claude CoWork под свои нужды — OpenWork даст схожий опыт, но с полным контролем над pipeline. Для разовых задач вроде “пофиксить типизацию в utils” пока проще использовать Copilot Chat.

Что пробовать дальше

  1. Интеграцию с Turborepo — пока агент не умеет в мультипакетные репозитории.
  2. Кастомные пресеты типа “strict TypeScript” или “no-any policy”.
  3. Ветку openwork-ui — обещают веб-интерфейс как у CoWork к концу квартала.

Пока это raw, но работоспособный инструмент. Главное — не ждать от него magic one-click solutions, а использовать как умный linter на стероидах. Для полного цикла типа “с нуля создать feature branch с тестами” всё ещё нужен человек в loop.


Попробуй сам: Cursor — AI-редактор для разработчиков.


Источник: https://github.com/different-ai/openwork