architect/concept/ROLES.md

Система ролей Platform v1

Версия: 1.1.0
Дата: 2025-12-10
Статус: active

Вытекает из: PLATFORM.md, ../theory/SYSTEM_TYPES.md


Концепция

Платформа работает с разными типами пользователей.
Каждый тип имеет свою роль, права и сценарии взаимодействия.


Типы пользователей

┌─────────────────────────────────────────────────────────────┐
│                      ВНЕШНИЕ                                │
├─────────────────────────────────────────────────────────────┤
│  КЛИЕНТ          Заказчик проекта                          │
│  ПАРТНЁР         Подрядчик, исполнитель                    │
└─────────────────────────────────────────────────────────────┘
                            │
                            ▼
┌─────────────────────────────────────────────────────────────┐
│                      ВНУТРЕННИЕ                             │
├─────────────────────────────────────────────────────────────┤
│  ОПЕРАТОР        Владелец платформы (KT)                   │
│  PM              Проект-менеджер                           │
│  AM              Аккаунт-менеджер (работа с клиентами)     │
│  ИСПОЛНИТЕЛЬ     Делает работу                             │
└─────────────────────────────────────────────────────────────┘

Роли и права

КЛИЕНТ (client)

Параметр Значение
Канал WhatsApp, Telegram
Агент ПРОЕКТОР 256
Видит Свой проект, статусы
Может Отправлять файлы, ссылки, отвечать на вопросы
Не может Видеть внутреннюю кухню

Сценарии:
- INTAKE — первичный сбор информации
- STATUS — получение статусов
- CLARIFY — ответы на уточняющие вопросы
- REVIEW — согласование результатов


ОПЕРАТОР (operator)

Параметр Значение
Канал Terminal, Web UI
Агент ТЕРМИНАЛ, все агенты
Видит Всё
Может Всё

Сценарии:
- Полный доступ ко всем проектам
- Управление системой
- Назначение ролей


PM — Проект-менеджер (pm)

Параметр Значение
Канал Telegram, Web UI
Агент ПРОЕКТОР (внутренний)
Видит Свои проекты полностью
Может Вести проект, ставить задачи

Сценарии:
- MANAGE — управление проектом
- ASSIGN — назначение задач
- REPORT — отчёты по проекту


AM — Аккаунт-менеджер (am)

Параметр Значение
Канал Telegram, WhatsApp
Агент ПРОЕКТОР 256 (режим AM)
Видит Клиентов, коммуникации
Может Общаться с клиентами, уточнять

Сценарии:
- COMMUNICATE — общение с клиентом
- CLARIFY — уточнение требований
- HANDOFF — передача информации PM


ИСПОЛНИТЕЛЬ (executor)

Параметр Значение
Канал Telegram
Агент ПРОЕКТОР (внутренний)
Видит Свои задачи
Может Брать задачи, отчитываться, задавать вопросы

Сценарии:
- TASK — получение задач
- QUESTION — вопросы по задаче
- DONE — отчёт о выполнении


Матрица прав

Действие Клиент AM PM Исполнитель Оператор
Видеть свой проект
Видеть все проекты
Отправлять файлы
Видеть внутр. обсуждения ⚠️
Ставить задачи
Менять статус ⚠️
Общаться с клиентом
Назначать роли

⚠️ = только для своих задач


Идентификация пользователя

По номеру телефона / chat_id

users:
  "+79111234567":
    role: client
    name: "Иван Петров"
    projects: [piro-001]

  "+79215551234":
    role: pm
    name: "Анна"
    projects: [piro-001, lider-001]

  "tg:123456789":
    role: executor
    name: "Миша"
    skills: [frontend, design]

Первый контакт

Если пользователь не найден:
1. Считаем его КЛИЕНТОМ
2. Запускаем сценарий INTAKE
3. Оператор может изменить роль


Агенты и роли

┌─────────────────────────────────────────────────────────────┐
│                        АГЕНТЫ                               │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  ТЕРМИНАЛ ──────────────────────────────► Оператор          │
│                                                             │
│  ПРОЕКТОР (внутренний) ─────────────────► PM, Исполнитель   │
│     └── методология, задачи, статусы                        │
│                                                             │
│  ПРОЕКТОР 256 (внешний) ────────────────► Клиент, AM        │
│     └── коммуникация, сбор инфы                             │
│                                                             │
│  АРХИТЕКТОР ────────────────────────────► Оператор, PM      │
│     └── методология, консультации                           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Матрица доступа к агентам

                    │ Клиент │  AM   │  PM   │ Исполнитель │ Оператор │
────────────────────┼────────┼───────┼───────┼─────────────┼──────────┤
ПРОЕКТОР 256        │   ✅   │  ✅   │  ❌   │     ❌      │    ✅    │
ПРОЕКТОР            │   ❌   │  ❌   │  ✅   │     ✅      │    ✅    │
АРХИТЕКТОР          │   ❌   │  ❌   │  ✅   │     ❌      │    ✅    │
ТЕРМИНАЛ            │   ❌   │  ❌   │  ❌   │     ❌      │    ✅    │

Переключение контекста

Один человек может иметь несколько ролей:
- AM может быть и PM для своих проектов
- Исполнитель может быть клиентом в другом проекте

Переключение:

/role pm        — переключиться в режим PM
/role am        — переключиться в режим AM
/project XXX    — переключиться на проект

Хранение

$DATASPACE/platform/
├── users.yaml           ← Пользователи и роли
├── projects/
│   └── {project-id}/
│       ├── team.yaml    ← Команда проекта
│       └── ...

Версия: 1.1.0