architect/standards/arh/structure-project.md

type: standard
aspect: structure
title: "Правила работы со структурой проекта"
version: 1.0.0
date: 2026-02-19
status: active


Правила работы со структурой проекта

Версия: 1.0.0
Дата: 2026-02-17
Статус: Active


ОСНОВНОЙ ПРИНЦИП

Не создавать пустые папки. Структура описана в файлах, папки создаются по мере необходимости.


МИНИМАЛЬНЫЙ СТАРТ ПРОЕКТА

При создании проекта создаём ТОЛЬКО 3 файла:

project/
├── PROJECT.md     ← описание + структура (для человека)
├── CLAUDE.md      ← контекст для AI
└── index.yaml     ← конфигурация структуры (для Claude)

Опционально:

project/
└── INDEX.md       ← если проект большой, нужна навигация

Запрещено создавать сразу:
- ❌ Пустые папки (data/, archive/, biz/, fin/, it/)
- ❌ Файлы "на всякий случай"
- ❌ Структуру которая "может пригодиться"


ДВА ИСТОЧНИКА ПРАВДЫ

1. PROJECT.md — для человека

Содержит:
- Описание проекта
- Секция "Структура проекта" с визуальной схемой
- Правила когда создавать папки
- Таблица с условиями создания

Шаблон: architect/templates/PROJECT_WITH_STRUCTURE.md

2. index.yaml — для Claude

Содержит:
- structure.required — обязательные файлы
- structure.optional — опциональные файлы (с условиями)
- structure.directories — папки (с условиями create_when)
- rules — правила для Claude

Шаблон: architect/templates/project.index.yaml


ПРАВИЛА ДЛЯ CLAUDE

Перед созданием файла

1. Прочитать PROJECT.md (секция "Структура")
2. Прочитать index.yaml (structure)
3. Проверить нет ли уже такого файла
4. Если файл в structure.required → создать
5. Если файл в structure.optional → проверить create_when
6. Если условие не выполнено → НЕ создавать

Перед созданием папки

1. Проверить index.yaml → structure.directories
2. Найти папку в конфигурации
3. Проверить create_when условие
4. Если условие выполнено:
   - Создать папку
   - Создать required_files внутри
   - Создать structure (подпапки) если указано
5. Если условие НЕ выполнено → НЕ создавать

Чеклист перед действием

Перед созданием ЛЮБОГО файла/папки:

Если хоть один пункт "нет" → СТОП, спросить пользователя.


СТРУКТУРА ПАПОК (создаются по необходимости)

data/ — актуальные данные

Создавать когда: Есть файлы для обработки

Структура:

data/
├── sources/        входящие от клиента (мастер-файл, прайсы, ТЗ)
├── processed/      обработанные данные
└── exports/        экспорты для внешних систем

Обязательные файлы: нет


archive/ — старое и временное

Создавать когда: Есть черновики или старые версии

Структура:

archive/
├── drafts/              ← черновики, рабочие файлы
│   ├── BUSINESS.draft.md
│   └── analysis.md
│
└── YYYY-MM-DD_topic/    ← старые версии проекта
    └── old_structure/   ← при реформации

Когда удалять:
- drafts/ — после утверждения финальных документов
- YYYY-MM-DD/ — через месяц после успешной реформации

Обязательные файлы: нет


biz/ — бизнес-направление (TYPE)

Создавать когда: Развиваем бизнес-направление

Структура:

biz/
├── CLAUDE.md      ← обязательно!
├── sales/         ← продажи, CRM
├── ops/           ← операции, процессы
└── warehouse/     ← склад

Обязательные файлы: CLAUDE.md


fin/ — финансы (TYPE)

Создавать когда: Развиваем финансовое направление

Структура:

fin/
├── CLAUDE.md      ← обязательно!
├── accounting/    ← бухгалтерия, 1С
├── tax/           ← налоги
└── reporting/     ← отчётность

Обязательные файлы: CLAUDE.md


it/ — IT-направление (TYPE)

Создавать когда: Развиваем IT-направление

Структура:

it/
├── CLAUDE.md      ← обязательно!
├── CACHE.yaml     ← обязательно!
├── data/          ← источники данных IT
├── plan/          ← планирование IT задач
├── web/           ← веб-сайты (DIRECTION)
├── mob/           ← мобильные (DIRECTION)
└── api/           ← API (DIRECTION)

Обязательные файлы: CLAUDE.md, CACHE.yaml


ЖИЗНЕННЫЙ ЦИКЛ ПРОЕКТА

1. Создание нового проекта

# Создать минимум (3 файла)
mkdir project-name
cd project-name

# Скопировать шаблоны
cp ../architect/templates/PROJECT_WITH_STRUCTURE.md PROJECT.md
cp ../architect/templates/project.index.yaml index.yaml
cp ../architect/templates/CLAUDE_TEMPLATE.md CLAUDE.md

# Заполнить шаблоны (заменить {placeholders})
vim PROJECT.md   # заменить {название}, {описание}
vim index.yaml   # заменить {project-name}
vim CLAUDE.md    # добавить контекст

# Готово! Папки создадим когда появится необходимость

2. Добавление данных

# Появились файлы от клиента
mkdir -p data/sources
cp мастерфайл.md data/sources/

# Обновить index.yaml (отметить что data/ создана)

3. Работа с черновиками

# Начали работу
mkdir -p archive/drafts

# Claude создаёт черновики
echo "..." > archive/drafts/BUSINESS.draft.md

# Утвердили → копируем в корень
cp archive/drafts/BUSINESS.draft.md BUSINESS.md

# Очистка (опционально)
rm -rf archive/drafts/

4. Развитие проекта

# Появилось IT-направление
mkdir -p it
cp ../architect/templates/CLAUDE_TEMPLATE.md it/CLAUDE.md
echo "type: TYPE\nname: it" > it/CACHE.yaml

# Обновить index.yaml

ПРИМЕРЫ

Пример 1: Новый проект (минимум)

lideravto/
├── PROJECT.md     ← описание + структура
├── CLAUDE.md      ← контекст
└── index.yaml     ← конфигурация

Пример 2: Проект с данными

lideravto/
├── PROJECT.md
├── CLAUDE.md
├── index.yaml
└── data/          ← добавилось
    └── sources/
        └── мастерфайл.md

Пример 3: Проект с IT-направлением

lideravto/
├── PROJECT.md
├── CLAUDE.md
├── index.yaml
├── data/
└── it/            ← добавилось
    ├── CLAUDE.md
    ├── CACHE.yaml
    └── web/
        └── cscart/

Пример 4: Полная ORG структура

lideravto/
├── PROJECT.md
├── CLAUDE.md
├── index.yaml
├── BUSINESS.md    ← для ORG
├── data/
├── archive/
│   └── drafts/
├── biz/
│   └── CLAUDE.md
├── fin/
│   └── CLAUDE.md
└── it/
    ├── CLAUDE.md
    ├── CACHE.yaml
    └── web/

ПРОВЕРКА СООТВЕТСТВИЯ

Чеклист проекта

Чеклист перед коммитом

# Проверить нет ли пустых папок
find . -type d -empty

# Проверить структуру
cat index.yaml | grep create_when

# Проверить обязательные файлы
test -f PROJECT.md && test -f CLAUDE.md && test -f index.yaml

СВЯЗИ

Документ Назначение
UNIVERSAL_PROJECT_STRUCTURE.md Стандарт структуры ORG/TYPE/DIRECTION/SOLUTION
PROJECT_DOCUMENTATION.md Стандарт документации проектов
STRUCTURE_ENFORCEMENT.md Правила следования структуре
PROJECT_BOOTSTRAP.md Инфраструктура при создании проекта

Версия: 1.0.0
Дата: 2026-02-17