Перейти к содержимому

Режимы

Агент Kodik работает в одном из шести режимов. Режим определяет, что агент может делать, а также набор доступных инструментов. Значение "act" нормализуется до "code" для обратной совместимости.

Ограничения режима применяются к встроенным инструментам Kodik. Включённые пользовательские MCP-инструменты доступны в Code, Plan, Ask, Debug и Educator и могут иметь побочные эффекты, определённые сервером; переключатели Harness и настройки подтверждений по-прежнему действуют. Orchestrator имеет намеренно сокращённый контракт только для координации и не получает MCP-инструменты напрямую.

Настроенные субагенты доступны каждому родительскому режиму через sub_agent. Субагент не наследует режим родителя: его профиль задаёт собственные инструкции, политику модели, уровень рассуждений и инструменты. Политика может назначить точную модель или выбрать Наследовать от родителя, чтобы использовать фактические провайдер и модель родительского чата. В разделе Настройки → Harness → Sub-agents in this mode можно выбрать, какие профили видит каждый родительский режим.

Code — режим выполнения задач. Это режим по умолчанию для всех новых задач.

Поведение: агент использует все доступные инструменты для понимания кодовой базы, внесения изменений, запуска команд и проверки результатов. Работает в видимом рабочем дереве задачи. Для работы, которая рендерится в браузере, может проверить результат во встроенном браузере через browser. Если задача неоднозначна, может один раз вызвать ask_questions перед началом работы.

Доступные инструменты: shell, get_terminal_output, kill_terminal, read_file, codebase_search, edit_file, create_file, delete_file, edit_notebook, rg, glob, ask_questions, read_lints, web_fetch, web_search, todo_write, sub_agent, agent_status, memory, browser

Orchestrator — режим руководителя команды для целей, которым помогают специализированные субагенты. Его системный промпт намеренно краток: определить результат, одним сгруппированным раундом устранить решения пользователя, делегировать основную работу, следить за отчётами и проверить итог. Родитель сам не читает и не изменяет файлы, не запускает команды, не управляет браузером и не вызывает MCP-инструменты.

Поведение: Orchestrator видит компактный каталог пригодных профилей субагентов и выбирает для каждой ограниченной задачи профиль, а не модель. Настройки профиля задают точную модель субагента или политику Наследовать от родителя, а также необязательный уровень reasoning, инструкции и инструменты. Независимые задачи могут выполняться параллельно. Планирование делегируется Planner, который публикует структурированный черновик в Team Workspace. Orchestrator может сам принять рутинный план, запросить доработку у Planner или вызвать request_plan_approval, когда нужны полномочия пользователя. Затем план можно утвердить, отправить на доработку с объединённой обратной связью или отменить без смены режима.

Работа, изменяющая состояние, затем должна быть проверена отдельным встроенным Reviewer, Test Engineer или QA Engineer. Планы и отчёты субагентов сохраняются в Team Workspace сессии и переживают сжатие и перезапуск.

Доступные инструменты: sub_agent, agent_status, ask_questions, request_plan_approval, todo_write и team_workspace, а также инструменты целей, когда к чату привязана долговечная цель. create_plan доступен только субагентам и по умолчанию принадлежит Planner.

Plan оставляет встроенные инструменты Kodik для рабочего пространства только для чтения. Агент исследует код, задаёт уточняющие вопросы при необходимости и сохраняет финальный план через инструмент generate_plan.

В режиме Plan инструмент todo_write используется для текущего списка выполнения, а generate_plan — для финального плана. В Harness каждый из них можно отключить для режима Plan независимо.

Поведение: агент не редактирует файлы, не создаёт их и не выполняет команды, изменяющие состояние рабочего пространства. Строит пошаговый план, отмечает риски и открытые вопросы. При необходимости добавляет диаграмму Mermaid в generate_plan. Вопросы задаются только через ask_questions — не в виде обычного текста.

Доступные инструменты: read_file, glob, rg, codebase_search, read_lints, web_fetch, web_search, ask_questions, todo_write, generate_plan, sub_agent, agent_status, memory, browser

Ask оставляет встроенные инструменты Kodik для рабочего пространства только для чтения. Режим предназначен для вопросов о кодовой базе: архитектура, поведение, трейдоффы.

Поведение: агент отвечает на вопросы, читая релевантный код перед ответом. Не выполняет команды и не редактирует файлы. Если пользователь просит что-то реализовать, агент объясняет, что Ask-режим предназначен только для анализа, и предлагает переключиться в Code.

Доступные инструменты: read_file, glob, rg, codebase_search, read_lints, web_fetch, web_search, todo_write, ask_questions, sub_agent, agent_status, memory, browser

Debug — режим отладки с гипотезами. Разделяет диагностику и фикс.

Поведение: агент следует строгому рабочему процессу:

  1. Формулирует 3–5 точных гипотез о причине проблемы.
  2. Добавляет целевую инструментацию для их проверки.
  3. При необходимости просит пользователя воспроизвести проблему.
  4. Собирает доказательства из логов, вывода команд и тестов.
  5. Классифицирует каждую гипотезу: ПОДТВЕРЖДЕНА, ОПРОВЕРГНУТА или НЕОПРЕДЕЛЁННО.
  6. Реализует минимальный фикс, подтверждённый доказательствами.
  7. Верифицирует фикс и удаляет временную инструментацию.

Агент никогда не объявляет проблему исправленной без реальных доказательств из среды выполнения.

Доступные инструменты: shell, get_terminal_output, kill_terminal, read_file, codebase_search, edit_file, create_file, delete_file, edit_notebook, rg, glob, ask_questions, read_lints, web_fetch, web_search, todo_write, sub_agent, agent_status, memory, browser

Educator — режим обучения на базе Ask. Добавляет check_understanding для быстрых проверок и create_lesson для интерактивных уроков.

Поведение: агент объясняет концепции постепенно, опирается на реальный код, использует примеры и простые ментальные модели. При необходимости может вызвать check_understanding с 1–3 вопросами, чтобы адаптировать дальнейшее объяснение. Когда нужна практика, он может создать самодостаточный HTML-урок, сохранить его в .kodik/teach/<topic>/ и автоматически открыть во встроенном браузере рядом с чатом. Kodik передаёт состояние window.__kodikLesson в следующий ход Educator — ответы на вопросы, правки кода и выполнение заданий, так что копировать ответы в чат не нужно. Неверные ответы воспринимаются как диагностический сигнал, а не как ошибка.

Доступные инструменты: все инструменты Ask плюс check_understanding и create_lesson. Если browser включён в Harness, его полный набор действий такой же, как во всех остальных режимах.