Открытый AI coding-агент — форк Cline с расширенной архитектурой, поддержкой любых LLM-провайдеров, многоагентными возможностями и полной кастомизацией под ваш рабочий процесс
Roo Code — это open-source расширение для VS Code, представляющее собой автономного AI-агента, способного читать и редактировать файлы, запускать команды в терминале, выполнять поиск по проекту и взаимодействовать с внешними API через MCP-серверы. Изначально проект появился как форк популярного расширения Cline (ранее Claude Dev) и назывался Roo Cline. Со временем он перерос родительский проект, добавив уникальные возможности, которые делают его самостоятельным продуктом.
Ключевые отличия от Cline: гранулярная система ролей (Plan/Act/Commander), поддержка кастомных режимов с собственными системными промптами, встроенный мультиагентный оркестратор (Roo Commander), который может распараллеливать задачи между несколькими суб-агентами, и расширенная интеграция с MCP-серверами. При этом Roo Code сохраняет полную совместимость с экосистемой Cline — можно использовать те же MCP-конфигурации и провайдеров.
Проект распространяется под лицензией Apache 2.0, весь код доступен на GitHub. Это означает полную прозрачность: вы всегда можете проверить, что именно агент отправляет внешним API и как обрабатывает ваши данные. Модель BYOK (Bring Your Own Key) — вы используете собственные API-ключи, никакой дополнительной платы за расширение нет.
Понимание архитектуры помогает эффективнее использовать агента. Roo Code построен по модульному принципу: UI-слой в VS Code взаимодействует с ядром агента, которое маршрутизирует запросы к выбранному LLM-провайдеру, а ответы преобразует в конкретные действия — редактирование файлов, терминальные команды, вызовы MCP-инструментов.
Установка предельно проста — Roo Code доступен в официальном маркетплейсе VS Code. Откройте панель расширений (Ctrl+Shift+X / Cmd+Shift+X), введите в поиске «Roo Code» и нажмите Install. Либо используйте командную строку:
# Быстрая установка из терминала VS Code code --install-extension rooveterinaryinc.roo-cline # Альтернативно — поиск и установка из CLI code --list-extensions | grep roo
После установки в боковой панели VS Code появится иконка Roo Code (стилизованный кенгуру/робот). При первом открытии расширение предложит базовую настройку — выбор провайдера и ввод API-ключа. На этом этапе агент ещё не активен: вы сами решаете, когда начинать сессию.
Roo Code поддерживает множество провайдеров «из коробки». В настройках расширения (шестерёнка → API Provider) вы выбираете нужный и вводите API-ключ. Конфигурация хранится локально в защищённом хранилище VS Code (Secret Storage) и никогда не покидает вашу машину, кроме как в зашифрованных запросах к выбранному API.
▸ Anthropic Claude (рекомендуется) — лучшая производительность для сложных задач:
# Получите ключ на https://console.anthropic.com # В настройках Roo Code: API Provider: Anthropic API Key: sk-ant-api03-xxxxxxxxxxxxxxxx Model: claude-sonnet-4-20250514
▸ DeepSeek — бюджетный вариант с отличным качеством кода:
# Ключ: https://platform.deepseek.com API Provider: DeepSeek API Key: sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Model: deepseek-chat # или deepseek-reasoner для сложных задач
▸ Ollama (локально) — полная конфиденциальность, модель на вашей машине:
# Установите Ollama: https://ollama.com ollama pull qwen2.5-coder:14b # В настройках Roo Code: API Provider: Ollama Base URL: http://localhost:11434/v1 Model: qwen2.5-coder:14b
Roo Code также поддерживает OpenRouter (единый API-ключ для 200+ моделей), Google Gemini, OpenAI, LM Studio и любые OpenAI-совместимые эндпоинты (vLLM, LiteLLM, Together AI и др.). Переключение между провайдерами занимает один клик в выпадающем меню.
Одно из главных преимуществ Roo Code перед Cline — система режимов (modes). Каждый режим имеет собственный системный промпт, набор доступных инструментов и стратегию поведения. Это позволяет тонко контролировать, как агент взаимодействует с вашим проектом.
▸ 📋 Plan Mode (режим планирования)
В этом режиме агент не выполняет никаких изменений — он только анализирует задачу, изучает кодовую базу с помощью read_file и search, после чего выдаёт структурированный план действий. Plan Mode идеален на старте сложных задач: вы получаете пошаговую стратегию, оцениваете её корректность и только затем переключаете агента в Act Mode для реализации. Системный промпт Plan Mode инструктирует модель быть максимально аналитичной, разбивать задачу на атомарные шаги и явно указывать файлы, которые потребуется изменить.
▸ ⚡ Act Mode (режим действий)
Основной рабочий режим: агент имеет доступ ко всем инструментам — чтение и запись файлов, выполнение терминальных команд, поиск, браузер (через Puppeteer), MCP-серверы. Act Mode автономно итерирует: пишет код → запускает тесты → видит ошибки → исправляет → повторяет, пока задача не будет решена. Вы можете в любой момент остановить агента, дать промежуточную обратную связь или скорректировать направление.
▸ 🚀 Roo Commander (мультиагентный оркестратор)
Самый мощный режим. Commander декомпозирует сложную задачу на подзадачи и запускает несколько суб-агентов параллельно (каждый — в отдельной «песочнице» с ограниченным контекстом). Например, при миграции базы данных Commander может поручить первому агенту анализ схемы, второму — написание миграционных скриптов, а третьему — обновление ORM-моделей. Результаты агрегируются в итоговый отчёт. Commander работает поверх стандартных Plan/Act — вы можете в любой момент переключиться в обычный чат для ручного контроля.
Model Context Protocol (MCP) — открытый протокол от Anthropic, позволяющий AI-агентам взаимодействовать с внешними сервисами через стандартизированный интерфейс. Roo Code полностью поддерживает MCP: вы подключаете сервер, и у агента появляются новые «инструменты» — запросы к базе данных, создание тикетов в Jira, деплой через GitHub Actions и так далее.
Конфигурация MCP-серверов задаётся в JSON-файле. Откройте настройки Roo Code, найдите раздел MCP Servers и добавьте конфигурацию:
// Файл конфигурации MCP-серверов (VS Code settings.json) "roo-cline.mcpServers": { "postgres": { "command": "npx", "args": [ "-y", "@anthropic/mcp-server-postgres", "postgresql://user:pass@localhost:5432/mydb" ] }, "github": { "command": "npx", "args": [ "-y", "@anthropic/mcp-server-github" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx" } }, "filesystem": { "command": "npx", "args": [ "-y", "@anthropic/mcp-server-filesystem", "/home/user/projects" ] } }
После сохранения конфигурации Roo Code автоматически запускает MCP-серверы как дочерние процессы. В интерфейсе чата появится список доступных инструментов от каждого сервера. Агент будет использовать их прозрачно — например, при запросе «покажи топ-10 пользователей по заказам» он сам вызовет MCP-инструмент для выполнения SQL-запроса.
Кроме официальных серверов от Anthropic, вы можете подключать любые MCP-совместимые серверы, включая самописные на Python или TypeScript. Протокол MCP использует JSON-RPC поверх stdio или HTTP (с SSE-транспортом), что делает интеграцию тривиальной.
Roo Code позволяет создавать собственные режимы с уникальными системными промптами, набором доступных инструментов и правилами поведения. Это мощнейший механизм для адаптации агента под специфику вашего проекта или команды.
Кастомные режимы настраиваются в JSON-конфигурации расширения. Вы определяете имя режима, роль (alwaysApply для автоактивации или manual для ручного выбора), системный промпт и список разрешённых/запрещённых инструментов:
// Настройка кастомных режимов в VS Code settings.json "roo-cline.customModes": [ { "slug": "code-reviewer", "name": "🔍 Code Reviewer", "role": "Ты — строгий ревьюер кода. Проверяешь безопасность, " + "производительность, читаемость и соответствие лучшим практикам. " + "НИКОГДА не изменяешь код, только даёшь рекомендации.", "groups": ["read"], "customInstructions": "Всегда указывай severity и файл/строку." }, { "slug": "test-writer", "name": "🧪 Test Writer", "role": "Ты пишешь только тесты. Твоя задача — покрыть код юнит-тестами " + "с максимальным покрытием. Используй pytest (Python) или jest (JS/TS).", "groups": ["read", "edit", "command"], "customInstructions": "Пиши тесты в отдельных файлах. Запускай их сразу." }, { "slug": "docs-writer", "name": "📝 Docs Writer", "role": "Ты пишешь документацию. Создаёшь README, docstrings, " + "API-документацию. Формат: Markdown или reStructuredText.", "groups": ["read", "edit"] } ]
После настройки кастомные режимы появляются в выпадающем меню рядом со стандартными Plan/Act. Вы можете переключаться между ними прямо во время сессии — агент мгновенно адаптирует своё поведение под новый контекст. Это особенно полезно в CI/CD-пайплайнах и при работе в больших командах, где разные участники выполняют разные роли.
Рассмотрим реальный сценарий. Допустим, у вас есть Python-проект с REST API на FastAPI, и вы хотите добавить новый эндпоинт для получения статистики пользователей. Вы даёте агенту задачу в Act Mode:
# Промпт, который вы отправляете агенту: "Добавь эндпоинт GET /api/users/stats, который возвращает: - total_users: общее количество пользователей - active_today: активные за последние 24 часа - by_role: группировка по ролям (user, admin, moderator) Используй SQLAlchemy для запросов к PostgreSQL. Напиши unit-тесты с pytest и проверь, что всё работает."
Агент выполнит следующую последовательность самостоятельно:
# 1. Изучит структуру проекта read_file("app/main.py") read_file("app/models/user.py") read_file("app/routers/") # 2. Добавит Pydantic-схему # app/schemas/stats.py from pydantic import BaseModel from typing import Dict class UserStatsResponse(BaseModel): total_users: int active_today: int by_role: Dict[str, int] # 3. Добавит эндпоинт в роутер # app/routers/users.py @router.get("/stats", response_model=UserStatsResponse) async def get_user_stats( db: Session = Depends(get_db) ): now = datetime.utcnow() yesterday = now - timedelta(days=1) total = db.query(User).count() active = db.query(User).filter( User.last_active >= yesterday ).count() roles = db.query(User.role, func.count(User.id))\ .group_by(User.role).all() return UserStatsResponse( total_users=total, active_today=active, by_role={dict(roles)} ) # 4. Напишет и запустит тесты # tests/test_user_stats.py async def test_get_user_stats(client, db_session): create_test_users(db_session) response = client.get("/api/users/stats") assert response.status_code == 200 data = response.json() assert data["total_users"] == 5 assert "user" in data["by_role"] # 5. Увидит результат тестов terminal("pytest tests/test_user_stats.py -v") # → 3 passed in 1.02s # 6. Если тесты упали — найдёт ошибку в трейсе, исправит, перезапустит
Весь цикл от получения задачи до работающего протестированного кода занимает 1–3 минуты. Вы как разработчик только формулируете задачу на естественном языке и проверяете итоговый результат. При необходимости агент сам запустит линтер (ruff/flake8), форматтер (black) и убедится, что код соответствует стилю проекта.
Оба расширения решают одну задачу — дать разработчику AI-агента в VS Code, — но с разной философией. Cline придерживается минималистичного подхода: один агент, один поток, фокус на надёжности. Roo Code расширяет эту концепцию системой режимов, мультиагентностью и глубокой кастомизацией.
| Критерий | Roo Code | Cline |
|---|---|---|
| Лицензия | Apache 2.0 | Apache 2.0 |
| Цена | Бесплатно (BYOK) | Бесплатно (BYOK) |
| LLM-провайдеры | 10+ (включая кастомные) | 8+ провайдеров |
| Режимы работы | Plan / Act / Commander + кастомные | Единый режим |
| Мультиагентность | ✅ Roo Commander | ❌ Нет |
| MCP-серверы | ✅ Полная поддержка | ✅ Полная поддержка |
| Кастомные промпты | ✅ Custom Modes | ✅ .clinerules |
| Лучше для | Сложные проекты, команды, кастомизация | Простые задачи, минимализм, стабильность |
Выбор зависит от ваших потребностей. Если вы цените простоту и предсказуемость — Cline отличный выбор. Если вам нужна гибкость, мультиагентные сценарии, кастомные режимы под специфику команды и продвинутая оркестрация — Roo Code даёт значительно больше возможностей без дополнительной платы.
Roo Code — это эволюция идеи AI coding-агента в VS Code. Взяв за основу проверенную архитектуру Cline, проект добавил систему режимов (Plan/Act/Commander), полноценную мультиагентность, кастомные режимы с собственными промптами и расширенную интеграцию с MCP-серверами. При этом расширение остаётся полностью бесплатным и open-source (Apache 2.0), с моделью BYOK — вы платите только за API-запросы к выбранному LLM-провайдеру. Для соло-разработчиков Roo Code заменяет рутинные операции: написание тестов, рефакторинг, документирование, поиск по кодовой базе. Для команд — даёт единый интерфейс AI-помощника с настраиваемыми ролями и аудитом всех действий. Начать можно за 2 минуты: ext install rooveterinaryinc.roo-cline — и ваш AI-напарник готов к работе.