type: standard
aspect: structure
title: "Стандарт структуры Workspace"
status: active
version: 2.0.0
date: 2026-04-10
owner: architect
knowledge_level: У1
Конкретные правила организации $WORKSPACE — шестислойной архитектуры платформы.
Источник правил файловой системы: structure-filesystem.md — полный ФС стандарт: пространства, классы файлов, белый/чёрный списки, git-правила.
Этот документ — верхнеуровневый U1-стандарт: что лежит в каждом слое и что туда не кладётся.
Платформа состоит из шести слоёв. Каждый отвечает на один вопрос:
| Слой | Вопрос | Что содержит |
|---|---|---|
| arch/ | ЧТО МЫ ЗНАЕМ? | стандарты, методология, теория, концепция, ADR, паттерны, шаблоны |
| project/ | КАК МЫ УПРАВЛЯЕМ? | проектирование, управление, тестирование, проекты org/ и sys/ |
| domains/ | ЧТО МЫ СТРОИМ? | домены исполнения: IT, производство, бизнес, данные |
| infra/ | ГДЕ ЭТО РАБОТАЕТ? | серверы, деплой, поддержка |
| system/ | ЧЕМ МЫ РАБОТАЕМ? | общие библиотеки, данные, MCP, коннекторы |
| services/ | КТО ОБСЛУЖИВАЕТ? | платформенные сервисы (планировщик, мониторинг) |
$WORKSPACE/
│
├── CLAUDE.md ← навигатор для Claude Code
├── AI.md ← контекст для AI агентов
├── README.md ← публичное описание
├── INDEX.md ← оглавление workspace
├── .gitignore
│
├── arch/ ← СЛОЙ 1: ЗНАНИЯ
├── project/ ← СЛОЙ 2: УПРАВЛЕНИЕ
├── domains/ ← СЛОЙ 3: ИСПОЛНЕНИЕ
├── infra/ ← СЛОЙ 4: ИНФРАСТРУКТУРА
├── system/ ← СЛОЙ 5: ОБЩЕЕ
├── services/ ← СЛОЙ 6: СЕРВИСЫ ОБСЛУЖИВАНИЯ
└── archive/ ← архив устаревшего
Четыре корневых служебных файла (CLAUDE.md, AI.md, README.md, INDEX.md) обязательны.
Назначение: всё, что платформа знает о себе и о мире. Авторитет — Архитектор.
arch/
├── architect.ai.md ← агент Архитектора
├── AI.md
├── CLAUDE.md
├── theory/ ← теория (LOCKED, .fx.md)
├── concept/ ← концепция платформы
├── standards/ ← стандарты для всех слоёв
├── patterns/ ← паттерны решений
├── decisions/ ← ADR
└── templates/ ← шаблоны документов
Что идёт сюда:
- У0 теория (универсальные законы, неизменные)
- У0 концепция (как МЫ видим платформу)
- У1 стандарты (правила как делать)
- У2 паттерны (типовые решения)
- У3 шаблоны документов
- ADR — архитектурные решения
Что НЕ идёт сюда:
- Конкретная реализация проектов → project/org/
- Код и конфигурации сервисов → system/, services/
- Документы по конкретным проектам → project/{org,sys}/{проект}/
Назначение: процесс ведения проектов + сами проекты. Авторитет — Проектор, Менеджер, Тестер.
project/
├── CLAUDE.md
├── @projector.module/ ← проектирование (фазы 0–6)
├── @manager.module/ ← управление (фазы 7–15)
├── @tester.module/ ← тестирование результата
├── org/ ← клиентские проекты
│ ├── it/ ✅
│ ├── production/ ⏸
│ ├── business/ ⏸
│ └── data/ ⏸
└── sys/ ← системные проекты платформы
Что идёт сюда:
- Процессные модули управления (@projector.module/, @manager.module/, @tester.module/)
- Клиентские проекты под org/{домен}/{имя-проекта}/
- Системные проекты платформы под sys/{имя}/
- Документы проектов: brief, plan, tickets, reports
Что НЕ идёт сюда:
- Стандарты и методология → arch/
- Стеки технологий и реализация IT → domains/@it.domain/@{стек}.coder/
- Общие библиотеки и коннекторы → system/
- Деплой и серверы → infra/
Адрес проекта определяет режим работы Проектора:
| Путь | Режим | Заказчик | Результат |
|---|---|---|---|
project/org/{домен}/{проект}/ |
PRO-PRO | Оператор / клиент | остаётся в проекте (продукт клиента) |
project/sys/{проект}/ |
PRO-SYS | Архитектор | → arch/, system/library/ (пополнение платформы) |
PRO-SYS строит платформу и пополняет банк знаний.
PRO-PRO использует банк знаний и производит продукт клиента.
Клиентские проекты распределяются по доменам исполнения:
| Путь | Домен |
|---|---|
project/org/it/ |
IT-проекты (сайты, интеграции, боты, ETL) |
project/org/production/ |
⏸ Производство |
project/org/business/ |
⏸ Бизнес-процессы |
project/org/data/ |
⏸ Данные |
Назначение: базы знаний доменов исполнения. Агент-диспетчер открывает стек/специализацию и работает по её правилам.
domains/
├── @it.domain/ ← ДОМЕН: IT ✅
│ ├── it.ai.md ← диспетчер домена
│ ├── @drupal.coder/ ← стек Drupal
│ ├── @react.coder/ ← стек React
│ └── @python.coder/ ← стек Python
│
├── @production.domain/ ⏸
│ └── @{name}.maker/
├── @business.domain/ ⏸
│ └── @{name}.flow/
└── @data.domain/ ⏸
└── @{name}.data/
Что идёт сюда:
- Диспетчеры доменов (@{домен}.domain/)
- Стеки IT (@{стек}.coder/) с их library/, references/, instructions/, practices/, exceptions/
- Специализации production/business/data
- Знания о технологии, которые переиспользуются между проектами
Что НЕ идёт сюда:
- Код конкретного проекта → project/org/.../services/@{имя}.service/
- Общие утилиты вне стека → system/library/
- Стандарты платформы → arch/standards/
Назначение: где и как платформа запускается. Авторитет — модули Executor и Support.
infra/
├── @executor.module/ ← деплой
├── @support.module/ ← поддержка после релиза
└── servers/ ← конфиги серверов
Что идёт сюда:
- Конфигурации серверов (servers/{имя}.server/)
- Скрипты деплоя, nginx-конфиги, systemd-юниты
- Инструкции по бэкапам и восстановлению
- Модули управления инфраструктурой
Что НЕ идёт сюда:
- Код приложений → project/, domains/, system/
- Общие библиотеки → system/library/
- Сервисы обслуживания платформы → services/
Назначение: общие ресурсы, которые используют все проекты и домены.
system/
├── library/ ← общий код, утилиты
├── data/ ← общие данные
├── @mcp.service/ ← MCP серверы для Claude
└── connectors/ ← внешние интеграции
├── @ozon.connector/
├── @telegram.connector/
└── @{name}.connector/
Что идёт сюда:
- Переиспользуемый код (library/)
- Коннекторы внешних API (connectors/@{имя}.connector/)
- MCP-серверы для Claude Code
- Общие справочные данные
Что НЕ идёт сюда:
- Знания конкретных стеков → domains/@it.domain/@{стек}.coder/
- Сервисы обслуживания платформы → services/
- Проектные данные → project/org/{проект}/
Назначение: работающие сервисы, обслуживающие саму платформу.
services/
├── @scheduler.service/ ← планировщик задач
└── @monitor.service/ ← мониторинг платформы
Что идёт сюда:
- Платформенные сервисы (@{имя}.service/): планировщик, мониторинг, алертинг
- Код и конфигурация сервисов, которые постоянно работают и обслуживают всю платформу
Что НЕ идёт сюда:
- Сервисы конкретного клиентского проекта → project/org/.../services/
- Коннекторы к внешним API → system/connectors/
- Инфраструктурные конфиги серверов → infra/
Модуль — автономная функциональная единица в папке @{имя}.{тип}/.
| Суффикс | Где | Назначение |
|---|---|---|
.module |
project/, infra/ |
процессный модуль управления |
.domain |
domains/ |
диспетчер домена исполнения |
.coder |
domains/@it.domain/ |
IT-стек (Drupal, React, Python) |
.maker |
domains/@production.domain/ |
производственная специализация |
.flow |
domains/@business.domain/ |
бизнес-процессная специализация |
.data |
domains/@data.domain/ |
специализация данных |
.service |
services/, system/ |
платформенный сервис |
.connector |
system/connectors/ |
интеграция с внешней системой |
Подробнее: ../format/format-file-types.md, ../naming/naming-platform.md
| Файл | Для кого | Где создавать |
|---|---|---|
CLAUDE.md |
Claude Code CLI | корень workspace, каждый из 6 слоёв, каждый проект, модули с нюансами |
AI.md |
AI-агент | модули @name.type/, компоненты с агентом |
README.md |
люди / GitHub | публичные компоненты |
INDEX.md |
AI + люди | большие папки с многими документами |
{имя}.ai.md |
Claude Code как роль | определение агента внутри модуля |
Правила подробно — см. structure-filesystem.md §5.
Файлы с суффиксом .fx.md заблокированы pre-commit хуком:
| Путь | Почему |
|---|---|
arch/theory/*.fx.md |
фундамент, меняется никогда |
arch/concept/PROJECTOR.fx.md |
жизненный цикл проекта |
arch/concept/METAMODEL.md |
метамодель (защищён отдельно) |
корневой CLAUDE.md |
AI читает первым |