architect/_archive/2025-11-26-cleanup/system-docs/architecture/4-role.md

Ролевое измерение

Версия: 1.0.0
Дата: 2025-11-19


Что описывает это измерение

Вопрос: Кто за что отвечает?

Ответ:
- Роли участников
- Полномочия
- Ограничения
- Делегирование

НЕ описывает:
- Где находятся файлы (структурное)
- Что делают роли (функциональное)
- Как выполняется работа (процессное)


Роли

Operator (Оператор — Человек)

Ответственность:
- Постановка задач
- Принятие решений
- Контроль качества
- Стратегическое планирование

Полномочия:
- Может изменить ВСЁ
- Финальное решение
- Одобрение критичных изменений

Ограничения:
- Нет (полный контроль)


Orchestrator (Оркестратор)

Файл: system/orchestrator.ai.md

Ответственность:
- Управление workspace
- Создание проектов
- Координация между проектами
- Запуск агентов

Полномочия:
- Создавать/архивировать проекты
- Обновлять workspace index
- Запускать Project-agent, Infra-agent
- Читать ВСЁ в workspace

Ограничения:
- НЕ изменяет код проектов напрямую
- НЕ работает с API напрямую
- Делегирует специализированным агентам


Project-agent (Агент проекта)

Файл: projects/{name}/CLAUDE.md

Ответственность:
- Работа внутри проекта
- Изменение кода
- Тестирование
- Деплой
- Документирование

Полномочия:
- Изменять файлы в projects/{name}/
- Читать platform/ (стандарты)
- Читать infra/ (для деплоя)
- Выполнять команды в контексте проекта

Ограничения:
- Работает ТОЛЬКО в projects/{name}/
- НЕ изменяет platform/
- НЕ изменяет другие проекты
- НЕ изменяет workspace index
- Спрашивает подтверждение перед изменениями


Infra-agent (Агент инфраструктуры)

Файл: infra/{name}/CLAUDE.md

Ответственность:
- Создание инфраструктуры
- Настройка серверов
- Управление доступами
- Обновление config.yaml

Полномочия:
- Изменять файлы в infra/{name}/
- Создавать IaC код (Terraform, Ansible)
- Выполнять команды на серверах
- Обновлять config.yaml

Ограничения:
- Работает ТОЛЬКО в infra/{name}/
- Применяется только для usage: project
- НЕ изменяет проекты
- НЕ изменяет platform/
- Спрашивает подтверждение


Claude Code Agent (Инструменталист)

Файл: system/claude-code.ai.md

Ответственность:
- Правильное использование инструментов
- Оптимизация операций
- Безопасность
- Обучение других агентов

Полномочия:
- Знает все 7 инструментов Claude Code
- Советует оптимальные подходы
- Проверяет безопасность

Ограничения:
- Не принимает решений о задачах
- Только консультирует


Terminal (Интерфейс)

Файл: system/terminal.ai.md

Ответственность:
- Интерфейс с оператором
- Меню навигации
- Восстановление сессий
- Форматирование вывода

Полномочия:
- Форматировать вывод
- Предлагать варианты
- Сохранять/восстанавливать сессии

Ограничения:
- Не выполняет задачи напрямую
- Только интерфейс


Integrator (Интегратор)

Файл: system/integrator.ai.md

Ответственность:
- Работа с внешними API
- Интеграции с маркетплейсами
- MCP серверы
- Обработка данных

Полномочия:
- Выполнять API запросы
- Трансформировать данные
- Управлять MCP серверами

Ограничения:
- Не изменяет код проектов
- Только работа с API и данными


Матрица полномочий

Действие Operator Orchestrator Project Infra Claude Code Terminal Integrator
Создать проект
Изменить код проекта ✅*
Создать инфру ✅** ✅*
Обновить workspace index
Изменить platform/ ⚠️***
Читать любые файлы
API запросы
Git commit ✅* ✅*
Деплой ✅* ✅*

Легенда:
- ✅ Разрешено
- ❌ Запрещено
- ⚠️ С ограничениями
- * Только в своей зоне
- * Запускает Infra-agent
- *
* Редко, с подтверждением


Делегирование

Модель

Operator
  ↓ (постановка задачи)
Orchestrator
  ↓ (детализация и делегирование)
Project-agent / Infra-agent
  ↓ (исполнение)
Результат
  ↑
Orchestrator
  ↑
Operator

Правила

Orchestrator → Project-agent:
- Условие: Задача касается конкретного проекта
- Действие: Загрузить projects/{name}/CLAUDE.md, делегировать
- Контроль: Получить отчёт

Orchestrator → Infra-agent:
- Условие: Нужно создать инфру
- Действие: Загрузить infra/{name}/CLAUDE.md, делегировать
- Контроль: Проверить config.yaml обновлён

Project-agent → Integrator:
- Условие: Нужна работа с API
- Действие: Запросить через Orchestrator
- Контроль: Получить обработанные данные


Эскалация

Правила эскалации

Project-agent → Orchestrator:
- Условие: Задача выходит за пределы проекта
- Пример: Нужно обновить platform/standard.yaml
- Действие: Вернуть контроль

Infra-agent → Orchestrator:
- Условие: Инфра готова
- Пример: Сервер создан, config.yaml обновлён
- Действие: Отчёт, возврат контроля

Любой агент → Operator:
- Условие: Критичная ошибка или неопределённость
- Пример: Конфликт требований
- Действие: Остановить, запросить решение


Принципы распределения ролей

1. Принцип наименьших привилегий

Идея: Роль имеет только необходимые полномочия

Пример:
- Project-agent может изменять только свой проект
- Integrator может только работать с API

2. Принцип явных границ

Идея: Каждая роль знает свою зону

Механизм:
- CLAUDE.md явно указывает ограничения
- Агент проверяет путь перед изменением

3. Принцип подтверждения

Идея: Критичные действия требуют одобрения

Применение:
- Агент спрашивает перед изменением файлов
- Оператор одобряет или отклоняет


Следующее измерение

Следующее: 5-technical.md — технологии

Назад: 3-process.md — процессное измерение