Протокол контекста
Обновлено: 2025-12-21
Активный проект: platform
Активная тема: Архитектура завершена
АРХИТЕКТУРА АГЕНТОВ
Иерархия (утверждено)
L0 — Человек
L1 ПОЧЕМУ Диспетчер (простой роутер)
L2 ЗАЧЕМ Ассистенты:
├── Личный (personal) — стратег, ценности
├── Бизнес (business) — компания, прибыль
└── Социальный (social) — общество, импакт
L3 ЧТО Проектор (projector)
L4 КТО Специалисты (specialists/):
├── business — бизнес-процессы
├── technical — IT-проекты
├── marketing — маркетинг
├── data — аналитика
├── design — дизайн
└── infrastructure — инфраструктура
L5 КАК Исполнители (workers/):
├── coder — код
├── infra — серверы
├── integrator — интеграции
└── analyst — анализ
L6 ЧЕМ Стеки (stacks/):
├── fastapi
├── scrapy
└── ...
Структура файлов (утверждено)
system/agents/
├── CLAUDE.md ← Индекс + триггеры
├── dispatcher.ai.md ← Диспетчер
├── personal.ai.md ← Личный ассистент
├── business.ai.md ← Бизнес ассистент
├── social.ai.md ← Социальный ассистент
├── projector.ai.md ← Проектор
├── librarian.ai.md ← Библиотекарь
│
├── specialists/ ← Специалисты
│ ├── business.ai.md
│ ├── technical.ai.md
│ └── ...
│
├── workers/ ← Исполнители
│ ├── coder.ai.md
│ └── ...
│
├── stacks/ ← Стеки
│ └── ...
│
└── templates/ ← Шаблоны документов
Примечание: Каждый агент может иметь одноимённую папку с дополнениями.
МЕХАНИЗМ ПРОТОКОЛИРОВАНИЯ
Когда писать (утверждено)
- Факт ОТЛИЧАЕТСЯ от мастер-данных
- Факт ДОПОЛНЯЕТ мастер-данные
- После обсуждения вопроса → предложить зафиксировать
- Непонятный факт → тикет для Архитектора
Структура записи (утверждено)
| Поле |
Описание |
| Session ID |
Уникальный ID сессии |
| Datetime |
Дата и время |
| Role |
Оператор / Проектор / Архитектор |
| Project |
Проект |
| Action |
Что делаем |
| Fact |
Что фиксируем |
| Target |
Документ и раздел |
Файлы контекста (утверждено)
| Файл |
Назначение |
Режим |
| SESSION.md |
Лог событий сессии |
append-only |
| PROTOCOL.md |
Актуальные факты |
перезапись |
| archive/ |
Архив сессий |
readonly |
ФОРМАТ ДИАЛОГА (утверждено)
- Claude пишет нумерованные пункты в конце сообщения
- Оператор отвечает цифрами:
1 3 5 = согласен
- Цифры = подтверждённые факты → записываются
- Комментарий к цифре → обсуждаем отдельно
- После обсуждения → возвращаемся с новыми фактами
ФОНОВЫЙ АРХИТЕКТОР (утверждено)
- Разбирает типовые вопросы в фоновом режиме
- Готовит решения/предложения заранее
- Оператор ежедневно открывает "окно архитектора"
- Много параллельных сессий — учитывать!
ИЕРАРХИЯ ПРАВДЫ (принцип, требует уточнения)
Уровень 1: Мастер-данные (главный документ)
Уровень 2: Документы проекта
Уровень 3: Входные данные (от оператора)
Уровень 4: Вычисленные/найденные (сессия)
Редактировать по зависимостям: сначала мастер, потом зависимые.
ТЕРМИНОЛОГИЯ: ПРОБЛЕМА "ПРОЕКТ"
Проблема (зафиксировано)
Слово "проект" — омоним с 6+ значениями:
| Форма |
Смысл |
Тип |
| бизнес-проект |
Процесс ведения бизнеса |
Деятельность |
| проект бизнеса |
План/документ бизнеса |
Документ |
| проект как бизнес |
Новое направление/венчур |
Сущность |
| проект (IT) |
Репозиторий, кодовая база |
Код |
| проект (PM) |
Временная инициатива |
Работа |
| спроектировать |
Разработать документы |
Действие |
Фрактальность (зафиксировано)
"Любая папка в иерархии — это проект со своим проектом (документацией)"
папка/ ← "проект" (сущность)
└── CLAUDE.md ← "проект" (документация)
Решение (принято)
- Папка = сущность → называем по ТИПУ (business, site, service, initiative)
- CLAUDE.md = проект → документация сущности (всегда)
- Тип = указываем явно в CLAUDE.md или index.yaml
Типы сущностей
| Тип |
Английский |
Что это |
| Бизнес |
business |
Коммерческая единица |
| Сайт |
site |
Веб-ресурс |
| Сервис |
service |
Приложение/API |
| Модуль |
module |
Часть системы |
| Инициатива |
initiative |
Временная работа |
| Интеграция |
integration |
Связь с внешним API |
СЛОВАРЬ ОПАСНЫХ ТЕРМИНОВ
Требуют 100% уточнения контекста перед использованием.
Критические (5+ значений)
| Термин |
Значения |
Уточнять |
| проект |
бизнес, сайт, инициатива, документ, план, репозиторий |
Тип сущности? |
| сервис |
веб-сервис, фоновый процесс, отдел, услуга |
Технический или бизнес? |
| база |
БД, база знаний, клиентская база, склад |
База чего? |
| система |
ОС, бизнес-система, ИС, экосистема |
Какая система? |
| клиент |
заказчик, приложение, клиентская часть |
Человек или код? |
| ключ |
API key, encryption key, primary key, физический |
Тип ключа? |
| платформа |
софт, железо, маркетплейс, фреймворк |
Что за платформа? |
Высокий риск (3-4 значения)
| Термин |
Значения |
Уточнять |
| модуль |
код, учебный, аппаратный |
Контекст? |
| продукт |
физический товар, софт, MVP |
Что продаём? |
| задача |
работа, тикет, алгоритмическая |
Где ведётся? |
| версия |
софта, документа, интерпретация |
Версия чего? |
| код |
исходный, промо, почтовый |
Программный? |
| поток |
данных, пользовательский, thread |
Технический? |
| агент |
AI, торговый, user-agent |
Кто/что? |
| ресурс |
системный, HR, веб-ресурс |
Какой ресурс? |
Средний риск (2-3 значения)
| Термин |
Значения |
Уточнять |
| библиотека |
код, документы, физическая |
Кода или файлов? |
| релиз |
софта, пресс-релиз |
Технический? |
| драйвер |
устройства, бизнес-драйвер |
Код или причина? |
| движок |
поисковый, игровой, БД |
Какой движок? |
| тег |
HTML, мета, лейбл |
В каком контексте? |
| интеграция |
API, слияние, адаптация |
Техническая? |
Дополнительные (найдены 2025-12-21)
| Термин |
Значения |
Уточнять |
| контекст |
scope, данные агента, бизнес-контекст |
Какой тип? |
| среда |
environment, IDE, физическая |
Техническая? |
| домен |
DNS, бизнес-область |
DNS или предметная? |
| схема |
DB schema, диаграмма, план |
База или визуализация? |
| образ |
Docker image, бэкап |
Контейнер или файл? |
| роль |
RBAC, агент, бизнес |
Права или функция? |
| стек |
tech stack, call stack |
Технологии или память? |
| процесс |
бизнес, OS, стандарт |
Какой уровень? |
| сессия |
Claude, пользователь |
Какая система? |
| воркер |
процесс, агент L5 |
Код или агент? |
IT-сленг (риск непонимания)
| Термин |
Значение |
Формальный аналог |
| железо |
аппаратура |
hardware |
| репа |
репозиторий |
repository |
| либа |
библиотека |
library |
| дрова |
драйверы |
drivers |
| жаба |
Java |
Java |
| змея |
Python |
Python |
| кресты |
C++ |
C++ |
| легаси |
устаревший код |
legacy code |
ПРАВИЛО: При использовании опасного термина
- Определить контекст — в каком смысле используется
- Уточнить явно — "проект (инициатива)", "клиент (приложение)"
- Записать в протокол — если контекст важен для сессии
Источники
СИСТЕМА ЗАДАЧ (утверждено 2025-12-21)
Терминология
| Термин |
Значение |
| task |
Единица работы (общий термин) |
| ticket |
Входящая задача (проблема, запрос) |
Принцип: Ticket → Task (одна сущность, разные стадии)
Хранение: Платформа + Проекты
/.queue/ ← Платформа
projects/{name}/.queue/ ← Проект
Воронка
inbox → triaged → assigned → active → blocked → review → done
Приоритет (importance)
| Уровень |
Когда |
| critical |
Блокирует бизнес/платформу |
| high |
Блокирует другие задачи |
| medium |
Важно, но не блокирует |
| low |
Можно отложить |
Стандарт: architect/standards/processes/TASK_QUEUE.md
ДЕЛЕГИРОВАНИЕ МОДЕЛЯМ (утверждено 2025-12-21)
Принцип
Рутину — дешёвым моделям, думать — самому.
| Opus (сам) |
Haiku (делегировать) |
Sonnet (делегировать) |
| Планирование |
Поиск/Explore |
Написание кода |
| Архитектура |
Запуск тестов |
Рефакторинг |
| Сложный анализ |
Простые проверки |
Code review |
| Принятие решений |
Сбор информации |
Баг-фиксы |
Как делегировать
Task(subagent_type="Explore", model="haiku") — поиск
Task(prompt="напиши код...", model="sonnet") — код
Добавлено в: CLAUDE.md v24.7.0
MONITOR (утверждено 2025-12-21)
Назначение
Агент здоровья системы. Запускается по расписанию (Haiku).
Проверки
| Домен |
Что проверяет |
| infra |
Диск, память, CPU, сервисы, docker |
| platform |
Очереди, сессии, контекст, логи |
| delegation |
Успешность моделей, эскалации, стоимость |
Выходы
- Алерты → Telegram (оператору)
- Тикеты → .queue/inbox/ (архитектору)
- Отчёты → .monitor/reports/
Расположение: system/monitor/
SCHEDULER (утверждено 2025-12-21)
Принцип
Один cron → scheduler → все задачи платформы.
* * * * * python3 system/scheduler/run.py
Разделение
| CRON (системный) |
SCHEDULER (платформа) |
| Критичные бэкапы |
Monitor |
| Recovery задачи |
Reports |
|
Cleanup, Sync |
Расположение: system/scheduler/
TELEGRAM (утверждено 2025-12-21)
Боты
| Бот |
Назначение |
| @cifrarf_bot |
Платформа, инфра |
| @aiproektor_bot |
AI Проектор, Monitor |
| @pirofey_bot |
Проект пиротехника |
Структура
system/config/telegram.yaml ← Токены + chat_id
library/connectors/api/telegram/
├── client.py ← TelegramClient
└── __init__.py
Использование
from library.connectors.api.telegram import TelegramClient
tg = TelegramClient.from_config("proektor")
tg.send("operator", "Сообщение")
Интеграции
- Monitor → @aiproektor_bot → operator
BACKUP (утверждено 2025-12-21)
Скрипты
infra/scripts/
├── backup.sh ← Оркестратор (--db, --etc, --check)
├── backup_db.sh ← PostgreSQL → S3
├── backup_etc.sh ← /etc → S3
└── cleanup.sh ← Безопасная очистка диска
Хранение
/mnt/beget-s3/backups/
├── db/ ← Дампы PostgreSQL (7 дней)
└── etc/ ← Конфиги (30 дней)
| Время |
Что |
| * * * * * |
Scheduler |
| 0 3 * * * |
Бэкап БД |
| 0 */6 * * * |
Git pre-backup commit |
МАСТЕР-ДАННЫЕ ПРОЕКТА (решено 2025-12-21)
Структура документов
projects/{name}/
├── CLAUDE.md ← Точка входа для агента
├── index.yaml ← Метаданные + URL
├── PROJECT.md ← Полное описание бизнеса
├── ARCHITECTURE.md ← Техархитектура (для сложных)
└── data/
└── MASTER.md ← Мастер-данные источников
Иерархия
| Уровень |
Документ |
Назначение |
| 1 |
CLAUDE.md |
Навигация для AI |
| 2 |
PROJECT.md |
Бизнес-описание |
| 3 |
data/MASTER.md |
Источники данных |
Принцип
Несколько связанных документов. Минимум: CLAUDE.md + index.yaml.
ПРОЕКТОР (решено 2025-12-21)
Решение
Один универсальный Проектор (L3) + доменные Специалисты (L4)
Обоснование
- L3 (ЧТО) — универсален, не зависит от домена
- L4 (КТО) — доменная специализация
- Один проект может требовать несколько доменов
Архитектура
L3: projector.ai.md (универсальный)
└── Координирует specialists
L4: specialists/*.ai.md (доменные)
├── business.ai.md
├── technical.ai.md
├── marketing.ai.md
├── data.ai.md
└── design.ai.md
ОТКРЫТЫЕ ВОПРОСЫ
| ID |
Вопрос |
| ~~?1~~ |
~~Где мастер-данные проекта?~~ ✅ Решено |
| ~~?2~~ |
~~Один или несколько документов?~~ ✅ Решено |
| ~~?3~~ |
~~Тикеты .queue/ или .tickets/?~~ ✅ Решено |
| ~~?4~~ |
~~Проектор универсальный?~~ ✅ Решено |
| ~~?5~~ |
~~Опасные термины~~ ✅ Решено |
RAG ССЫЛКИ
| Что |
Где |
| Концепция агентов |
architect/concept/AGENTS.md |
| Теория 9 вопросов |
architect/theory/QUESTIONS.md |
| Индекс агентов |
system/agents/CLAUDE.md |
| Архив ASSISTANTS |
archive/2025-11-cleanup/platform-v2-cifra/agents/projector/ASSISTANTS.md |
| Архив AI Projector |
archive/2025-11-cleanup/platform-v2-cifra/.../ip-01-397-ai-projector.md |
Версия протокола: 1.3.0