type: standard
aspect: platform
title: "Платформа — Архитектура, Проекты и Процессы"
status: active
version: 1.1.0
date: 2026-04-10
owner: architect
parent: concept/metamodel.md
Стандарт описывает архитектуру платформы, виды проектов, процессы и модули исполнения.
↑ Родитель: metamodel.md
Проект — ограниченное усилие с целью, результатом и сроками.
ПРОЕКТ = ЦЕЛЬ + РЕЗУЛЬТАТ + РЕСУРСЫ + ВРЕМЯ
Проект всегда:
- Имеет начало и конец
- Производит артефакт (продукт, сервис, знание)
- Ведётся командой модулей
- Документируется по фазам
| Понятие | Что | Форма |
|---|---|---|
| Компонент | Раздел платформы верхнего уровня | Обычная папка |
| Модуль | Автономная функциональная единица | @name.type/ |
| Агент | Определение роли и правил | {name}.ai.md файл |
| AI.md | Служебный контекст папки для AI | Навигация для AI |
| CLAUDE.md | Навигатор папки для Claude Code | Навигация для CLI |
Модуль = контейнер (пассивный, хранит)
Агент = исполнитель (активный, Claude Code читает {name}.ai.md и берёт роль)
| Суффикс | Где | Что |
|---|---|---|
.module |
project/ |
процессный модуль (управление) |
.domain |
domains/ |
диспетчер домена исполнения |
.coder |
domains/@it.domain/ |
IT стек |
.maker |
domains/@production.domain/ |
производственная специализация |
.flow |
domains/@business.domain/ |
бизнес-процессная специализация |
.data |
domains/@data.domain/ |
специализация данных |
.service |
services/ |
платформенный сервис |
.connector |
system/connectors/ |
интеграция с внешней системой |
Два способа участия Claude в платформе:
Ты пишешь сам → РОЛЬ (режим диалога, поведение в сессии)
Работает без тебя → АГЕНТ (автономный процесс, PID, лог-файл)
Роль — режим поведения Claude в диалоге с человеком. Активна только пока идёт разговор. Переключается по контексту запроса. Реализована через Output Style файлы.
Агент — автономный процесс. Берёт задачу из очереди, выполняет, возвращает результат. Имеет PID, лог-файл, может работать параллельно.
| Маркер | Роль | Зона |
|---|---|---|
| ● | Оператор | инфра, сервер, БД |
| ◆ | Проектор | проекты, код, фичи |
| ▲ | Архитектор | методология, стандарты |
| 💻 | Кодер | автономная реализация (подрежим Проектора) |
Именование агентов: {функция}-agent (coder-agent, infra-agent, sync-agent, monitor-agent).
Ключевое правило: роль нельзя ставить в cron (нет человека), агент — можно.
# Агент — можно ставить в cron:
schedule:
- cron: "0 3 * * *"
agent: infra-agent # правильно
# Роль — нельзя ставить в cron (нет человека):
schedule:
- agent: Архитектор # НЕПРАВИЛЬНО, роль не процесс
Физическая изоляция:
| Роль | Агент | |
|---|---|---|
| Изоляция | Поведенческая (достаточно) | Физическая (обязательно) |
| Права | Как у человека (сессия) | Ограниченные (только нужное) |
| Параллельность | Нет (один диалог) | Да (несколько агентов) |
Каждая сущность в платформе имеет уровень, определяющий её место и степень переиспользования.
| Уровень | Название | Папка | Назначение | Переиспользование |
|---|---|---|---|---|
| L0 | Философия | architect/theory/ |
Принципы, ценности | 100% (универсально) |
| L1 | Методология | architect/concept/ |
Концепции, подходы | 100% (универсально) |
| L2 | Стандарты | architect/standards/ |
Правила, паттерны | 100% (универсально) |
| L3 | Движок | system/core/ |
Executor, Scheduler | 90% (платформа) |
| L4 | Компоненты | library/ |
Коннекторы, функции | 70% (переиспользуемо) |
| L5 | Решения | components/ (БУДЕТ) |
Готовые наборы | 30% (шаблоны) |
| L6 | Проекты | projects/ |
Бизнес-приложения | 0% (уникально) |
Уровень N импортирует только <= N-1. Обратные зависимости запрещены.
L6 projects/pirotehnika/app/pim/
↓ использует
L4 library/connectors/api/ozon/
↓ использует
L3 system/core/executor/
↓ использует
L2 architect/standards/
↓ основаны на
L1 architect/concept/
↓ основаны на
L0 architect/theory/
# L6 → L4 — ПРАВИЛЬНО
from library.connectors.api.ozon import OzonConnector
# L4 → L6 — НЕПРАВИЛЬНО (обратная зависимость!)
from projects.pirotehnika.app.pim import ProductService
Сущности группируются по уровням сложности:
L2: PRIMITIVES (атомы данных)
Type / Enum / Constant / Exception
→ Размещение: library/ или projects/
L3: FUNCTIONS (атомы логики)
Validator / Formatter / Normalizer / Calculator / Generator / Transformer
→ Размещение: library/ (универсальные) или projects/ (специфичные)
L4: COMPONENTS (молекулы)
Connector / Parser / Adapter / Mapper / Repository / Cache / Queue / Factory
→ Размещение: library/ (универсальные), projects/ (специфичные)
L5: SERVICES (оркестрация)
Service / SyncService / Worker / Handler / UseCase
→ Размещение: projects/ (всегда специфичны)
L6: INTEGRATIONS (экосистемы)
Integration / Pipeline / Workflow
→ Размещение: projects/ (конкретная бизнес-логика)
Критерий размещения library/ vs projects/:
| Вопрос | Ответ ДА → | Ответ НЕТ → |
|---|---|---|
| Это универсальный принцип? | L0-L2 architect/ |
↓ |
| Это часть платформы? | L3 system/ |
↓ |
| Можно использовать в других проектах? | L4 library/ |
↓ |
| Это специфика конкретного проекта? | L6 projects/ |
? |
Платформа состоит из шести слоёв. Каждый отвечает на один вопрос:
arch/ ← ЧТО МЫ ЗНАЕМ? стандарты, методология
project/ ← КАК МЫ УПРАВЛЯЕМ? процессы, фазы, документы
domains/ ← ЧТО МЫ СТРОИМ? IT / производство / бизнес / данные
infra/ ← ГДЕ ЭТО РАБОТАЕТ? серверы, деплой, поддержка
system/ ← ЧЕМ МЫ РАБОТАЕМ? общие библиотеки, коннекторы, MCP
services/ ← КТО ОБСЛУЖИВАЕТ? планировщик, мониторинг
ПЛАТФОРМА/
│
├── arch/ ← СЛОЙ 1: ЗНАНИЯ
│ ├── architect.ai.md ← агент архитектора
│ ├── AI.md
│ ├── theory/ — теория (LOCKED)
│ ├── concept/ — концепция платформы
│ ├── standards/ — стандарты для всех слоёв
│ ├── patterns/ — паттерны решений
│ ├── decisions/ — ADR
│ └── templates/ — шаблоны документов
│
├── project/ ← СЛОЙ 2: УПРАВЛЕНИЕ
│ ├── @projector.module/ — проектирование (фазы 0–6)
│ │ ├── projector.ai.md
│ │ └── AI.md
│ ├── @manager.module/ — управление (фазы 7–15)
│ │ ├── manager.ai.md
│ │ └── AI.md
│ ├── @tester.module/ — тестирование результата
│ │ ├── tester.ai.md
│ │ └── AI.md
│ ├── org/ — клиентские проекты
│ │ ├── it/ ← IT проекты ✅
│ │ ├── production/ ← производство ⏸
│ │ ├── business/ ← бизнес-процессы ⏸
│ │ └── data/ ← данные ⏸
│ └── sys/ — системные проекты платформы
│
├── domains/ ← СЛОЙ 3: ИСПОЛНЕНИЕ
│ ├── @it.domain/ ← ДОМЕН: IT ✅ текущий
│ │ ├── it.ai.md ← агент-диспетчер домена
│ │ ├── AI.md
│ │ ├── @drupal.coder/ — стек Drupal
│ │ │ ├── drupal.ai.md
│ │ │ ├── AI.md
│ │ │ ├── library/
│ │ │ ├── references/
│ │ │ ├── instructions/
│ │ │ ├── practices/
│ │ │ └── exceptions/
│ │ ├── @react.coder/ — стек React
│ │ ├── @python.coder/ — стек Python
│ │ └── @{стек}.coder/ ↑ расширяется новыми стеками
│ │
│ ├── @production.domain/ ← ДОМЕН: Производство ⏸
│ │ ├── @design.maker/ — проектирование изделий
│ │ ├── @supply.maker/ — материалы, снабжение
│ │ ├── @assembly.maker/ — сборка
│ │ └── @quality.maker/ — контроль качества
│ │
│ ├── @business.domain/ ← ДОМЕН: Бизнес-процессы ⏸
│ │ ├── @crm.flow/
│ │ ├── @erp.flow/
│ │ └── @compliance.flow/
│ │
│ └── @data.domain/ ← ДОМЕН: Данные ⏸
│ ├── @pipeline.data/
│ ├── @model.data/
│ └── @dashboard.data/
│
├── infra/ ← СЛОЙ 4: ИНФРАСТРУКТУРА
│ ├── @executor.module/ — деплой
│ │ ├── executor.ai.md
│ │ └── AI.md
│ ├── @support.module/ — поддержка после релиза
│ │ ├── support.ai.md
│ │ └── AI.md
│ └── servers/ — конфиги серверов
│
├── system/ ← СЛОЙ 5: ОБЩЕЕ
│ ├── library/ — общий код, утилиты
│ ├── data/ — общие данные
│ ├── @mcp.service/ — MCP серверы для Claude
│ └── connectors/ — внешние интеграции
│ ├── @ozon.connector/
│ ├── @telegram.connector/
│ └── @{новый}.connector/ ↑ расширяется
│
└── services/ ← СЛОЙ 6: СЕРВИСЫ ОБСЛУЖИВАНИЯ
├── @scheduler.service/ — планировщик задач
└── @monitor.service/ — мониторинг платформы
| Добавить | Куда | Как |
|---|---|---|
| Новый IT стек | domains/@it.domain/ |
новый @стек.coder/ |
| Новый домен | domains/ |
новый @домен.domain/ + project/org/домен/ |
| Новый коннектор | system/connectors/ |
новый @имя.connector/ |
| Новый сервис | services/ |
новый @имя.service/ |
Три версии платформы. Ключевое изменение — роль исполнения кода:
v1 (было) v2 (строим) v3 (будущее)
────────────── ────────────────── ──────────────────
Claude Code @it.domain агент — Только конфиг-файлы
пишет напрямую диспетчер стеков для модулей платформы
без специализации → открывает @стек.coder/ Код не пишется
→ работает по правилам "Проект Цифра"
Каждый @стек.coder/ — полная база знаний по технологии:
@drupal.coder/
drupal.ai.md ← агент стека
library/ ← готовые модули, сниппеты
references/ ← справочники (API, хуки, схемы)
instructions/ ← как строить типовые вещи
practices/ ← лучшие практики
exceptions/ ← edge cases, известные проблемы
⏸ Кодер v3 и "Проект Цифра" — отдельное обсуждение.
| Вид | Путь | Заказчик | Результат |
|---|---|---|---|
| Системный | project/sys/ |
Архитектор | Улучшение платформы |
| Клиентский | project/org/ |
Оператор / клиент | Продукт клиента |
| Домен | Путь | Статус |
|---|---|---|
| IT | project/org/it/ |
✅ Текущий |
| Производство | project/org/production/ |
⏸ Будущий |
| Бизнес-процессы | project/org/business/ |
⏸ Будущий |
| Данные | project/org/data/ |
⏸ Будущий |
| Тип | Суть |
|---|---|
| Сайт | Публичный веб-ресурс |
| Веб-приложение | SaaS, личный кабинет, портал |
| Интеграция | Связь систем через API |
| Телеграм-бот | Автоматизация через мессенджер |
| Данные / ETL | Сбор, обработка, хранение данных |
| E-commerce | Интернет-магазин, каталог, PIM |
| Автоматизация | Бизнес-процессы, роботы |
| AI-агент | Автономный AI-процесс |
Применяются к любому проекту независимо от домена:
ИНИЦИАЦИЯ → ПЛАНИРОВАНИЕ → ИСПОЛНЕНИЕ → КОНТРОЛЬ → ЗАКРЫТИЕ
| Процесс | Что происходит | Документы |
|---|---|---|
| Инициация | Цель, границы, команда | КОНЦЕПЦИЯ, БРИФ |
| Планирование | Решение и план работ | ПЛАН, СПЕЦИФИКАЦИЯ |
| Исполнение | Создать продукт | РЕАЛИЗАЦИЯ, ТИКЕТ |
| Контроль | Проверить качество | АНАЛИЗ, ТИКЕТ |
| Закрытие | Сдать, зафиксировать опыт | ПРАКТИКА, ИНСТРУКЦИЯ |
@projector → @manager → @it.domain → @tester → @executor → @support
↑____________|
(фикс багов)
Помимо 5 процессов управления, продукт проходит 10 фаз полного жизненного цикла:
0.RESEARCH → 1.IDEATION → 2.DESIGN → 3.BUILD → 4.DEPLOY → 5.LAUNCH
↓
10.RETIRE ← 9.EVOLVE ← 6.OPERATE + 7.MARKETING + 8.ANALYTICS
| Мета-фаза | Фазы | Фокус |
|---|---|---|
| DISCOVER | 0. Research, 1. Ideation | Что делать? |
| DEVELOP | 2. Design, 3. Build, 4. Deploy | Как сделать? |
| DELIVER | 5. Launch, 6. Operate | Как доставить? |
| GROW | 7. Marketing, 8. Analytics, 9. Evolve | Как расти? |
| Фаза | Product | Dev | DevOps | Marketing | Analytics | Support |
|---|---|---|---|---|---|---|
| 0. Research | ● | ○ | ○ | ● | ||
| 1. Ideation | ● | ○ | ○ | ○ | ||
| 2. Design | ● | ● | ○ | |||
| 3. Build | ○ | ● | ○ | |||
| 4. Deploy | ● | ● | ||||
| 5. Launch | ● | ○ | ○ | ● | ○ | ○ |
| 6. Operate | ○ | ● | ○ | ● | ||
| 7. Marketing | ○ | ● | ○ | |||
| 8. Analytics | ● | ○ | ● | |||
| 9. Evolve | ● | ● | ○ | ○ | ● | ○ |
| 10. Retire | ● | ○ | ● | ○ | ○ |
Легенда: ● основная роль, ○ участвует
Не все проекты проходят все 10 фаз одинаково:
| Тип проекта | Полные фазы | Минимальные фазы | Пропускаемые |
|---|---|---|---|
| SaaS / приложение | Все 0-10 | — | — |
| Внутренний инструмент | 0-6, 8-10 | 7 (Marketing) | — |
| Библиотека / SDK | 2-4, 6, 8, 9 | 0-1, 5 (docs вместо маркетинга) | 7 (community) |
| MVP / Прототип | 1-5 (быстро) | 0, 6-10 | Большинство |
Критерии перехода между фазами:
| Переход | Критерий готовности |
|---|---|
| Research → Ideation | Достаточно данных для гипотез |
| Ideation → Design | Business case одобрен |
| Design → Build | Спецификации готовы, архитектура утверждена |
| Build → Deploy | Код готов, тесты проходят |
| Deploy → Launch | Staging работает, UAT пройден |
| * → Evolve | Накопился фидбек / новые требования |
| Evolve → Design | Новая версия (цикл заново) |
| * → Retire | Решение о выводе принято |
Цель: понять задачу и спроектировать решение.
| Фаза | Название | Документ | Тип |
|---|---|---|---|
| 0 | ТРИГГЕР | — | — |
| 0.5 | INTAKE | brief.md | КОНЦЕПЦИЯ |
| 1 | ПОНИМАНИЕ | brief-detail.md | КОНЦЕПЦИЯ |
| 2 | ИССЛЕДОВАНИЕ | research.md | ИССЛЕДОВАНИЕ |
| 3 | АНАЛИЗ | analysis.md | АНАЛИЗ |
| 4 | ТРЕБОВАНИЯ | requirements.md | СТАНДАРТ |
| 5 | СПЕЦИФИКАЦИЯ | spec.md | ИНСТРУКЦИЯ |
| 6 | ПЛАН | plan.md | ПЛАН |
Цель: обеспечить исполнение и сдачу результата.
| Фаза | Название | Документ | Тип |
|---|---|---|---|
| 7–12 | РАЗРАБОТКА | TICKET-NNN.md | ТИКЕТ |
| 13 | ТЕСТИРОВАНИЕ | test-report.md | АНАЛИЗ |
| 14 | ДЕПЛОЙ | deploy.md | ИНСТРУКЦИЯ |
| 15 | ЭКСПЛУАТАЦИЯ | lessons-learned.md | ПРАКТИКА |
ЦЕЛЬ: публичный веб-ресурс с контентом
ФАЗЫ: Дизайн → Вёрстка → CMS → Контент → SEO → Деплой
ДОКУМЕНТЫ: brief.md, design.md, content-plan.md, seo.md, deploy.md
СТЕК: @drupal.coder / @react.coder
ЦЕЛЬ: SaaS / личный кабинет / портал
ФАЗЫ: Архитектура → API → Backend → Frontend → Auth → Деплой
ДОКУМЕНТЫ: architecture.md, api.md, auth.md, deploy.md
СТЕК: @python.coder / @react.coder / @nodejs.coder
ЦЕЛЬ: связать системы через API
ФАЗЫ: Анализ API → Маппинг → Коннектор → Тест → Мониторинг
ДОКУМЕНТЫ: api-analysis.md, data-mapping.md, connector.md
СТЕК: @python.coder / @nodejs.coder
ЦЕЛЬ: автоматизация через Telegram
ФАЗЫ: Сценарии → Bot API → Логика → Интеграции → Деплой
ДОКУМЕНТЫ: scenarios.md, commands.md, deploy.md
СТЕК: @python.coder
ЦЕЛЬ: сбор, обработка, хранение данных
ФАЗЫ: Источники → Схема → Пайплайн → Хранилище → Дашборд
ДОКУМЕНТЫ: data-sources.md, schema.md, pipeline.md, dashboard.md
СТЕК: @python.coder / @data.domain
ЦЕЛЬ: интернет-магазин с каталогом, оплатой, доставкой
ФАЗЫ: Каталог → PIM → Корзина → Оплата → Доставка → SEO → Деплой
ДОКУМЕНТЫ: catalog.md, pim.md, payment.md, delivery.md
СТЕК: @drupal.coder
ЦЕЛЬ: автоматизировать бизнес-процесс
ФАЗЫ: As-is → Требования → Регламент → Скрипт → Тест → Мониторинг
ДОКУМЕНТЫ: process-asis.md, process-tobe.md, script.md
СТЕК: @python.coder / @nodejs.coder
ЦЕЛЬ: автономный AI-процесс с ролью и протоколами
ФАЗЫ: Роль → Протоколы → Инструменты → Тест → Деплой → Мониторинг
ДОКУМЕНТЫ: {name}.ai.md, AI.md, protocols.md, test-cases.md
СТЕК: domains/@it.domain
Статус: active 1.1.0
Дата: 2026-04-10