architect/_archive/2025-11-26-cleanup/platform/CLAUDE.md

Claude Code Workspace — Платформа

Версия: 1.0.0
Дата создания: 2025-11-09
Статус: Производственная система


🎯 ЧТО ЭТО?

Централизованная система управления проектами для Claude Code с:
- Каскадной системой правил (85% → 98% → 100% задач)
- Межсессионной памятью для восстановления контекста
- Готовыми шаблонами для быстрого создания проектов
- Системой развития через тикеты и патчи


📚 СТРУКТУРА WORKSPACE

/opt/claude-workspace/

├── platform/          # УРОВЕНЬ 1: Ядро системы (85% задач)
   ├── CLAUDE.md      #  ВЫ ЗДЕСЬ (главный документ)
   └── .claude/       # Журналы и тикеты

├── templates/         # УРОВЕНЬ 2: Шаблоны (98% задач)
   ├── design/        # Шаблоны проектирования
   ├── management/    # Шаблоны управления
   ├── solution/      # Шаблоны решений (код)
   ├── infrastructure/# Шаблоны инфраструктуры
   └── library/       # УРОВЕНЬ 3: Библиотека компонентов (100% задач)

├── projects/          # Ваши проекты
   └── {name}/
       ├── design/         # 📋 Что делаем (цели, roadmap, ADR)
       ├── management/     # ⚙️ Как организовано (README, changelog)
       ├── solution/       # 💻 Реализации (код: mvp/, backend/, mobile/)
       └── infrastructure/ # 🏗️ Серверы и деплой

└── archive/           # Архив старых версий

🗂️ ТИПЫ ПРОЕКТОВ

В workspace существует 5 типов проектов, которые определяются по префиксу:

Префикс Тип Доступ Автоматизация Пример
нет LOCAL Файлы ✅ Да marketplace
@infra- INFRASTRUCTURE SSH (root) ✅ Да @infra-prod-rf
@remote- REMOTE SERVER SSH (ограничен) ✅ Да @remote-beget-xxx
@service- EXTERNAL SERVICE API ✅ Да @service-stripe
@web- WEB SERVICE Web UI ❌ Нет @web-beget-panel

Подробная документация: platform/PROJECT-TYPES.md

Примеры использования:
- Разрабатываю приложение → LOCAL: marketplace
- Управляю своим сервером → INFRA: @infra-prod
- Подключаюсь к хостингу через SSH → REMOTE: @remote-beget-xxx
- Интегрирую API → SERVICE: @service-stripe
- Работаю через веб-панель → WEB: @web-beget-panel

Создание проекта:

# LOCAL проект
Claude, создать проект analytics используя шаблон streamlit-mvp-v1

# REMOTE проект
Claude, создать @remote- проект для сервера my-hosting

# WEB проект
Claude, создать @web- проект для панели Beget

# SERVICE проект
Claude, создать @service- проект для Stripe API

🔄 РЕЖИМЫ РАБОТЫ

DESIGN MODE 📋

Работа с документацией и проектированием.

Триггеры:
- "начать с начала"
- "покажи состояние проекта"
- "что изменилось"
- "создать новый проект"
- "обновить roadmap"

Действия:
- Читать design/PROJECT.md, design/ROADMAP.md, design/ARCHITECTURE.md
- Читать management/README.md, management/CHANGELOG.md
- Показывать состояние проекта
- Обновлять документацию
- НЕ запускать код, НЕ менять файлы решений


EXECUTION MODE 💻

Работа с кодом и реализацией.

Триггеры:
- "запусти"
- "исправь ошибку"
- "добавь функцию"
- "загрузи данные"
- "запусти тесты"

Действия:
- Читать и менять файлы в solution/
- Запускать команды
- Деплоить на серверы
- Работать с БД
- Обновлять management/CHANGELOG.md после изменений


🎫 КАСКАДНАЯ СИСТЕМА ПРАВИЛ

УРОВЕНЬ 1 (platform/CLAUDE.md) → 85% задач
├─ Основные правила работы
├─ Типовые процедуры
└─ Быстрый старт

УРОВЕНЬ 2 (templates/*) → 98% задач
├─ Детальные шаблоны для типов проектов
├─ Готовые компоненты
└─ Специализированные процедуры

УРОВЕНЬ 3 (projects/*/docs/) → 100% задач
├─ Полные спецификации
├─ Редкие случаи
└─ Экспертные сценарии

Принцип: Начинаем с уровня 1 → если не нашли решение → уровень 2 → уровень 3.


🔍 АВТОПОИСК И КОНТЕКСТНАЯ ЗАЩИТА

Триггеры для определения контекста:

Платформа (platform/):
- "платформа", "правила", "workspace", "Claude Code"
- "как работает система"

Шаблоны (templates/):
- "шаблон", "template"
- "создать проект используя шаблон X"
- "какие шаблоны доступны"

Проекты (projects/):
- Названия конкретных проектов: "marketplace", "@infra-dev-prod-rf"
- "проект X", "начать работу с X"

Алгоритм:

1. Сканирование запроса пользователя
2. НАЙДЕНЫ триггеры  определить уровень
3. НЕ НАЙДЕНЫ  работа с текущим проектом
4. НЕЯСНОСТЬ  уточнить у пользователя
5. Автоматически записать в журнал

📖 МЕЖСЕССИОННАЯ ПАМЯТЬ (ЖУРНАЛИРОВАНИЕ)

Системный журнал:

platform/.claude/system-journal.md

Назначение: Хранит ключевые события для восстановления контекста между сессиями.

Формат записи:

### YYYY-MM-DD: Название события

**Действие:** Что было сделано
**Изменения:**
- Изменение 1
- Изменение 2

**Статус:** ✅ Успешно / ⚠️ С замечаниями / ❌ Ошибка

Журналы сессий:

platform/.claude/session-YYYY-MM-DD.md

Назначение: Детальная история одной сессии Claude Code.

Процедура восстановления контекста:

Пользователь: "восстановить контекст"

Claude:
1. Читает platform/.claude/system-journal.md
2. Читает последний session-*.md
3. Читает projects/{name}/design/PROJECT.md
4. Показывает краткое состояние
5. Готов к работе

📊 PLATFORM STATUS — ЦЕНТРАЛЬНЫЙ КАТАЛОГ

Файл состояния платформы:

platform/PLATFORM_STATUS.md

Назначение: Единая точка входа для понимания ВСЕЙ платформы - серверы, проекты, стеки, доступы, конфигурация.

Содержит:
- 🖥️ Серверы: EU, RU, Home (IP, specs, доступ)
- 📁 Проекты: Все проекты с описанием и статусами
- 🐳 Стеки: Docker контейнеры, порты, домены
- 🌐 Домены: DNS структура, маршрутизация
- 🔐 Доступы: SSH, БД, приложения (все пароли)
- 📝 Конфигурация: Пути к файлам, docker-compose
- 🔄 Git: Workflow, remotes, примеры
- 📊 Мониторинг: Команды проверки, статистика
- 📈 История: Что изменилось, что планируется


🎯 КОГДА ЧИТАТЬ PLATFORM_STATUS.md

ОБЯЗАТЕЛЬНО читать при:

  1. Первом запуске сессии
    - Триггеры: "покажи состояние платформы", "что у нас есть", "обзор"
    - Действие: Прочитать и показать краткую сводку

  2. Вопросах о серверах
    - Триггеры: "какие серверы", "где запущено", "IP адрес"
    - Действие: Прочитать секцию СЕРВЕРЫ

  3. Вопросах о проектах
    - Триггеры: "какие проекты", "список проектов", "что работает"
    - Действие: Прочитать секцию ПРОЕКТЫ

  4. Вопросах о доступах
    - Триггеры: "пароль", "как подключиться", "логин"
    - Действие: Прочитать секцию ДОСТУПЫ

  5. Работе с инфраструктурой
    - Триггеры: "настроить сервер", "добавить домен", "docker"
    - Действие: Прочитать релевантные секции

  6. Деплое и настройке
    - Триггеры: "задеплоить", "запустить на", "настроить nginx"
    - Действие: Прочитать СТЕКИ + КОНФИГУРАЦИЯ


✏️ КОГДА ОБНОВЛЯТЬ PLATFORM_STATUS.md

ОБЯЗАТЕЛЬНО обновлять при:

  1. Изменении инфраструктуры:
    - Добавлен/удален сервер
    - Изменены IP адреса
    - Установлено новое ПО

  2. Изменении проектов:
    - Создан новый проект
    - Изменен статус проекта
    - Добавлен/удален стек

  3. Изменении контейнеров:
    - Запущен новый контейнер
    - Изменены порты/домены
    - Обновлен docker-compose.yml

  4. Изменении доменов:
    - Добавлен новый домен
    - Изменена маршрутизация Nginx
    - Настроен SSL

  5. Изменении доступов:
    - Изменен пароль БД
    - Создан новый пользователь
    - Обновлены SSH ключи

  6. Значительных событиях:
    - Миграция данных
    - Обновление версий
    - Критические изменения


📋 ФОРМАТ ОБНОВЛЕНИЯ

После изменений:

  1. Обновить соответствующую секцию в PLATFORM_STATUS.md
  2. Обновить дату в шапке: **Дата обновления:** YYYY-MM-DD
  3. Добавить запись в секцию ИЗМЕНЕНИЯ внизу:
    markdown ### YYYY-MM-DD - ✅ Описание изменения 1 - ✅ Описание изменения 2 - ⏳ Что в процессе
  4. Git commit:
    bash git add platform/PLATFORM_STATUS.md git commit -m "docs: обновлен PLATFORM_STATUS после [действие]"

🔍 ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

Пример 1: Начало работы

Пользователь: Покажи состояние платформы

Claude:
1. Читает platform/PLATFORM_STATUS.md
2. Показывает краткую сводку:

📊 Состояние платформы (обновлено 2025-11-13):

Серверы:
 EU (91.218.142.168) - 5 контейнеров работает
 RU (45.144.177.147) - production активен
 Home - git repository готов

Проекты:
 marketplace (dev + test) - работает
 seller1-pro (python + n8n) - работает
 seller1-www (drupal) - production

Известные проблемы:
 DNS распространение (*.dev.0kt.ru, *.tst.0kt.ru)
 SSL сертификаты ожидают DNS

Что нужно сделать?

Пример 2: Вопрос о пароле

Пользователь: Какой пароль от PostgreSQL на EU?

Claude:
1. Читает platform/PLATFORM_STATUS.md
2. Находит секцию "ДОСТУПЫ И ПАРОЛИ"  "seller1-pro-db"
3. Показывает:

PostgreSQL (seller1-pro-db на EU):
Host:     localhost:5432
User:     postgres
Password: 5dc8WXMDr6eWghx2ebeFJ0/uuAAeEs6eZ9y53IKjzio=
Databases: seller1_pro, n8n

Подключение из контейнера:
docker compose exec seller1-pro-python psql -h seller1-pro-db -U postgres -d seller1_pro

Пример 3: Добавление нового контейнера

Пользователь: Запусти Redis на EU

Claude:
1. Добавляет redis в docker-compose.yml
2. docker compose up -d
3. ОБНОВЛЯЕТ platform/PLATFORM_STATUS.md:
   - Добавляет redis в таблицу контейнеров
   - Обновляет счетчик контейнеров (5  6)
   - Добавляет в секцию ИЗМЕНЕНИЯ
4. Git commit
5. Готово!

⚠️ ВАЖНЫЕ ПРАВИЛА

1. НЕ ДУБЛИРОВАТЬ ИНФОРМАЦИЮ
- PLATFORM_STATUS.md - это ИНДЕКС, не полная документация
- Детали хранятся в проектах (projects/{name}/)
- PLATFORM_STATUS содержит ССЫЛКИ на детальную документацию

2. АКТУАЛЬНОСТЬ
- Обновлять СРАЗУ после изменений
- Не откладывать обновление
- Проверять актуальность при чтении

3. КРАТКОСТЬ
- Только ключевая информация
- Таблицы > длинные описания
- Факты > комментарии

4. СТРУКТУРА
- Не менять формат разделов
- Сохранять таблицы
- Использовать эмодзи для статусов (✅ ⏳ ❌)


📍 ПРАВИЛА: Пути проектов

Единое правило работы с путями

Источник истины:

projects/{name}/solution/{instance}/LOCATION.md

Правила:

  1. При упоминании путей в документации:
    - ✅ НЕ хардкодить пути в docs
    - ✅ Ссылаться на LOCATION.md
    - ✅ Пример: "Код: см. projects/marketplace/solution/mvp/LOCATION.md"

  2. При миграции кода:
    - Обновить LOCATION.md проекта
    - Проверить упоминания путей в:

  3. При создании нового проекта:
    - Скопировать шаблон: templates/project/LOCATION.md.sample
    - Заполнить реальными данными
    - Использовать как single source of truth

  4. Образцы:
    - См. templates/project/ для reference examples
    - LOCATION.md.sample - образец описания местоположения
    - infrastructure/SERVER.md.sample - образец описания сервера

Почему это важно:
- Избегаем устаревших путей в документации после миграций
- Единая точка обновления при переезде кода
- Быстрый поиск актуальной информации


🚨 ПРОЦЕДУРЫ ЭКСТРЕННОГО ВОССТАНОВЛЕНИЯ

ПРОЦЕДУРА-001: Восстановление контекста проекта

Ситуация: Потеря контекста между сессиями
Время: 5-10 минут

Действия:
1. cat platform/.claude/system-journal.md (последние события)
2. cat platform/.claude/session-*.md | tail -100 (последняя сессия)
3. cat projects/{name}/design/PROJECT.md (описание проекта)
4. cat projects/{name}/management/README.md (текущее состояние)
5. Показать краткий статус

Критерии успеха:
- ☑️ Понимание цели проекта
- ☑️ Знание текущего состояния
- ☑️ Доступность документов


ПРОЦЕДУРА-002: Откат изменений

Ситуация: Критическая ошибка после изменений
Время: 2-5 минут

Действия:
1. git status (что изменилось)
2. git diff (посмотреть diff)
3. git checkout -- <file> (откатить файл)
4. ИЛИ git reset --hard HEAD (откатить всё)
5. Проверить работоспособность

Критерии успеха:
- ☑️ Система вернулась к рабочему состоянию
- ☑️ Проблема устранена


ПРОЦЕДУРА-003: Восстановление из backup

Ситуация: Потеря данных, критическое повреждение
Время: 10-30 минут

Действия:
1. ls /opt/workspace-backup-*.tar.gz (найти backup)
2. tar -xzf /opt/workspace-backup-YYYYMMDD.tar.gz -C /tmp/restore/
3. Скопировать нужные файлы
4. Валидировать работоспособность
5. Обновить system-journal.md


💬 ПРАВИЛА КОММУНИКАЦИИ

❌ ПРАВИЛО "БЕЗ ЛЕСТИ"

ЗАПРЕЩЕНО:
- Эмоциональные преувеличения ("Отличная идея!", "Великолепно!")
- Необоснованная похвала
- Восторженные оценки без фактов

ОБЯЗАТЕЛЬНО:
Формат "Плюсы / Минусы / Рекомендация"

Пример:

Плохо:

"Отличная идея! Это будет работать замечательно!"

Хорошо:

Плюсы: Простая реализация, быстрый старт
Минусы: Ограничения производительности при >1000 пользователей
Рекомендация: Использовать для MVP, для production рассмотреть альтернативу


📝 Стиль общения:


🔍 ПОИСК В ИСТОРИИ ДИАЛОГОВ

Триггеры:
- "найди в диалоге / чате / сессии / разговоре / общении / беседе / истории"
- "поищи где мы обсуждали..."
- "что мы говорили про..."

ДЕЙСТВИЕ: Искать в логах Claude Code сессий

ГДЕ ИСКАТЬ:

# Текущая сессия (полный диалог)
/root/.claude/projects/-opt-claude-workspace/{sessionId}.jsonl

# Последние 5 сессий
ls -t /root/.claude/projects/-opt-claude-workspace/*.jsonl | head -5

# История user запросов (без assistant ответов)
/root/.claude/history.jsonl

Алгоритм:
1. Определить область: сегодня → текущая сессия, вчера → последние 3-5, давно → последние 10
2. Использовать grep -i "ключевое_слово" для поиска
3. Показать контекст и дату находки
4. Дать прямую цитату

Подробно: platform/COMMUNICATION_RULES.md (раздел "Поиск в истории диалогов")


📝 ЯЗЫКОВАЯ ПОЛИТИКА

🇷🇺 РУССКИЙ ЯЗЫК:
├─ Вся документация (*.md файлы)
├─ Комментарии в коде
├─ Сообщения об ошибках
├─ Интерфейсы приложений
└─ Примеры использования

🇺🇸 АНГЛИЙСКИЙ ЯЗЫК:
├─ Названия переменных и функций
├─ API эндпоинты
├─ Названия файлов и папок
├─ Git commit сообщения (опционально)
├─ JSON ключи
└─ SQL запросы

Пример правильного кода:

# Функция для получения списка пользователей из базы данных
def get_users_from_database(limit=10):
    """
    Получает список пользователей из БД.

    Args:
        limit: Максимальное количество пользователей

    Returns:
        List[User]: Список объектов пользователей
    """
    query = f"SELECT * FROM users LIMIT {limit}"
    return database.execute(query)

🧬 АРХИТЕКТУРНАЯ ДНК СИСТЕМЫ

4 НЕИЗМЕННЫХ ПРИНЦИПА:

1. СРЕЗОВАЯ ЧИСТОТА
- Каждый срез имеет чёткую область ответственности
- Нет смешивания логики разных срезов
- design/ ≠ solution/, management/ ≠ infrastructure/

2. КОМПЛЕМЕНТАРНАЯ ПОЛНОТА
- Все части вместе дают исчерпывающее понимание
- design + management + solution + infrastructure = ПРОЕКТ

3. АРХИТЕКТУРНАЯ ТРАССИРУЕМОСТЬ
- Все решения обоснованы и задокументированы (ADR)
- Влияние изменений отслеживается
- История в Git + CHANGELOG.md

4. ПРАКТИЧЕСКАЯ ПРИМЕНИМОСТЬ ⭐ КЛЮЧЕВОЙ
- Архитектура служит практическим целям
- Функциональность > Элегантность
- Работает полностью > Выглядит красиво


🔍 МНОГОСРЕЗОВЫЙ АНАЛИЗ

8 независимых срезов для понимания системы:

  1. 🏗️ СТРУКТУРНЫЙ — из чего состоит? (компоненты, связи)
  2. ⚡ ФУНКЦИОНАЛЬНЫЙ — как работает? (функции, потоки данных)
  3. 🔄 ПРОЦЕССНЫЙ — как создаётся? (этапы разработки)
  4. 👥 РОЛЕВОЙ — кто за что отвечает? (права, ответственность)
  5. 🔧 ТЕХНИЧЕСКИЙ — на чём построено? (технологии, API)
  6. 📊 ИНФОРМАЦИОННЫЙ — какие данные? (структура, потоки)
  7. ⏰ ВРЕМЕННОЙ — как развивается? (история, roadmap)
  8. 🌍 ПРОСТРАНСТВЕННЫЙ — где находится? (серверы, репозитории)

Применение: При анализе проблемы смотреть через ВСЕ срезы для полного понимания.


⚡ БЫСТРЫЙ СТАРТ

Создать новый проект:

Пользователь: Создать новый проект analytics используя шаблон streamlit-mvp-v1

Claude:
1. Читает templates/solution/streamlit-mvp-v1/template.yaml
2. Запрашивает переменные (PROJECT_NAME, DATABASE_TYPE, etc.)
3. Создаёт projects/analytics/{design,management,solution,infrastructure}
4. Копирует структуру из шаблона
5. Заменяет {{VARIABLES}} на реальные значения
6. Обновляет system-journal.md
7. Готово!

Начать работу с существующим проектом:

Пользователь: Начать с начала проект marketplace

Claude (DESIGN MODE):
1. Читает projects/marketplace/design/PROJECT.md
2. Читает projects/marketplace/design/ROADMAP.md
3. Читает projects/marketplace/management/README.md
4. Проверяет состояние решений (solution/mvp/, solution/backend/)
5. Проверяет инфраструктуру (production, staging)
6. Показывает чеклист:

   Состояние проекта Marketplace:

   Проектирование:
    PROJECT.md актуален
    ROADMAP.md: v1.0 MVP готов, v2.0 в планах

   Решения:
    MVP (Streamlit) работает на :8501
    Backend (FastAPI) не начат

   Инфраструктура:
    Production сервер настроен

   Что делать?
   1. Пропустить (всё ОК)
   2. Запустить MVP (если остановлен)
   3. Начать разработку Backend
   4. Другое

Выполнить задачу:

Пользователь: Добавить функцию экспорта в Excel в проект marketplace

Claude (EXECUTION MODE):
1. Переключается в EXECUTION MODE
2. Читает solution/mvp/app.py и структуру
3. Добавляет функцию экспорта
4. Обновляет requirements.txt (openpyxl)
5. Тестирует
6. Обновляет management/CHANGELOG.md:
   ### [1.1.0] - 2025-11-09
   - Добавлена функция экспорта заказов в Excel
7. Git commit
8. Готово!

🛠️ ПРОЦЕДУРЫ

ПРОЦЕДУРА: "Начать с начала"

Назначение: Полная диагностика состояния проекта

Вход: Название проекта

Выход: Чеклист состояния + рекомендации

Шаги:
1. Прочитать design/PROJECT.md (цель и описание)
2. Прочитать design/ROADMAP.md (план версий)
3. Прочитать management/README.md (текущее состояние)
4. Проверить каждое решение в solution/:
- Файлы существуют?
- Процессы запущены?
- Тесты проходят?
5. Проверить инфраструктуру в infrastructure/:
- Серверы доступны?
- Сервисы работают?
6. Собрать чеклист с ✅ / ⚠️ / ❌
7. Показать пользователю
8. Спросить что делать дальше


ПРОЦЕДУРА: "Создать проект из шаблона"

Назначение: Быстрое создание нового проекта

Вход: Имя проекта + имя шаблона

Выход: Готовая структура проекта

Шаги:
1. Прочитать templates/{category}/{template-name}/template.yaml
2. Запросить значения переменных (или использовать defaults)
3. Создать структуру:
projects/{project-name}/ ├── design/ (из templates/design/) ├── management/ (из templates/management/) ├── solution/ (из templates/solution/{template}/) └── infrastructure/ (опционально)
4. Скопировать файлы из template/structure/
5. Заменить {{VARIABLES}} на реальные значения
6. Создать design/PROJECT.md с описанием
7. Обновить system-journal.md
8. Git commit
9. Показать Quick Start для проекта


ПРОЦЕДУРА: "Обновить документацию"

Назначение: Синхронизация документации с реальностью

Когда: После любого значительного изменения

Шаги:
1. Обновить management/CHANGELOG.md:
```markdown
### [X.Y.Z] - YYYY-MM-DD

#### Добавлено
- Новая функция X

#### Исправлено
- Баг Y

#### Изменено
- Улучшена производительность Z
```

  1. Если изменилась архитектура → обновить design/ARCHITECTURE.md:
    ```markdown
    ### [ADR-00X] Название решения

Дата: YYYY-MM-DD
Статус: Принято

Контекст: ...
Решение: ...
Последствия: Плюсы / Минусы
```

  1. Если изменился roadmap → обновить design/ROADMAP.md

  2. Обновить platform/.claude/system-journal.md:
    ```markdown
    ### YYYY-MM-DD: Краткое описание

Действие: Что сделано
Изменения:
- Список изменений

Статус:
```

  1. Git commit:
    bash git add . git commit -m "docs: обновлена документация после изменения X"

🎫 СИСТЕМА ТИКЕТОВ И ПАТЧЕЙ

Приоритеты:

🔴 КРИТИЧЕСКИЕ (critical/)
├─ Блокируют работу
├─ Требуют немедленного решения
└─ Исправление в течение 1 дня

🟡 ВАЖНЫЕ (important/)
├─ Влияют на эффективность
├─ Планируются в ближайший roadmap
└─ Исправление в течение 1 недели

🟢 УЛУЧШЕНИЯ (improvements/)
├─ Хорошо иметь
├─ Низкий приоритет
└─ Исправление когда будет время

🔵 ИННОВАЦИИ (innovations/)
├─ Долгосрочное видение
├─ Исследования
└─ Без сроков

Формат тикета:

# 🔴 ТИКЕТ-001: Название проблемы

**Статус:** Открыт / В работе / Закрыт
**Приоритет:** Критический / Важный / Улучшение / Инновация
**Дата создания:** YYYY-MM-DD
**Компоненты:** platform/, templates/solution/streamlit-mvp-v1/

## Описание проблемы

[Детальное описание]

## Воспроизведение

1. Шаг 1
2. Шаг 2

## Ожидаемое поведение

[Что должно быть]

## Фактическое поведение

[Что происходит]

## План решения

1. Шаг 1
2. Шаг 2

## Результат

[После закрытия: что было сделано]

Хранение:

platform/.claude/tickets/
├── critical/TICKET-001.md
├── important/TICKET-002.md
├── improvements/TICKET-003.md
└── innovations/TICKET-004.md

🔧 GIT WORKFLOW

Монорепозиторий:

Один git репозиторий для всего workspace:

/opt/claude-workspace/.git     Единственный репозиторий
├── platform/
├── templates/
├── projects/
   ├── marketplace/
   └── @infra-dev-prod-rf/
└── archive/

Базовые команды:

# Проверить статус
git status

# Посмотреть изменения
git diff

# Добавить всё
git add .

# Commit
git commit -m "update: описание изменений"

# История
git log --oneline -10

# История конкретной папки
git log --oneline -- projects/marketplace/

Формат commit сообщений:

feat: добавлена новая функция X
fix: исправлена ошибка Y
docs: обновлена документация Z
refactor: реорганизация структуры W

Откат изменений:

# Откатить файл
git checkout -- platform/CLAUDE.md

# Откатить всё
git reset --hard HEAD~1

# Откатить к конкретному коммиту
git reset --hard <commit-hash>

💰 ЭКОНОМИЯ ТОКЕНОВ

Правила:

  1. НЕ ГЕНЕРИРОВАТЬ КОД С НУЛЯ — использовать templates/library/
  2. КОПИРОВАТЬ И ПРАВИТЬ — брать готовый компонент, вносить изменения
  3. КОРОТКИЕ ОТВЕТЫ — меньше output tokens
  4. ЧИТАТЬ ФАЙЛЫ 1 РАЗ — не перечитывать без необходимости
  5. ИСПОЛЬЗОВАТЬ ШАБЛОНЫ — не создавать структуру вручную

Workflow экономии:

# ❌ ПЛОХО: генерация с нуля (5000+ tokens)
Пользователь: Создай Streamlit приложение с аутентификацией

# ✅ ХОРОШО: использование шаблона (500 tokens)
Пользователь: Создай проект auth используя шаблон streamlit-mvp-v1

Экономия в цифрах:


📋 ЧЕКЛИСТ ДЛЯ CLAUDE

При каждом запросе пользователя:

1. Определить контекст:
- [ ] Это про платформу? → читать platform/CLAUDE.md
- [ ] Это про шаблоны? → читать templates/
- [ ] Это про проект? → читать projects/{name}/

2. Определить режим:
- [ ] DESIGN MODE? (документация, состояние, планирование)
- [ ] EXECUTION MODE? (код, запуск, исправления)

3. Выполнить задачу

4. Обновить документацию:
- [ ] management/CHANGELOG.md (если были изменения)
- [ ] platform/.claude/system-journal.md (если значительное событие)
- [ ] design/ARCHITECTURE.md (если архитектурное решение)

5. Git commit:
- [ ] git add .
- [ ] git commit -m "понятное сообщение"


🚀 ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ

Пример 1: Создание нового проекта

User: Создай новый проект crm используя шаблон streamlit-mvp-v1

Claude:
1. Читает templates/solution/streamlit-mvp-v1/template.yaml
2. Спрашивает:
   - PROJECT_NAME: crm 
   - DATABASE_TYPE: sqlite / postgresql?  sqlite
   - AUTH_ENABLED: yes / no?  yes

3. Создаёт структуру:
   projects/crm/
   ├── design/PROJECT.md
   ├── management/README.md
   └── solution/mvp/ (скопировано из шаблона)

4. Заменяет переменные
5. Git commit
6. Показывает Quick Start

 Готово! Проект создан за 30 секунд.

Пример 2: Диагностика проекта

User: Начать с начала проект marketplace

Claude (DESIGN MODE):
1. Читает design/PROJECT.md, ROADMAP.md
2. Проверяет solution/mvp/
3. Проверяет infrastructure/

Показывает:

📊 Состояние проекта Marketplace

Проектирование:
 PROJECT.md: Цель ясна, описание актуально
 ROADMAP.md: v1.0  готов, v2.0 📋 в планах
 ARCHITECTURE.md: 2 ADR задокументированы

Решения:
 MVP (Streamlit): см. projects/marketplace/solution/mvp/LOCATION.md
⚠️ MVP не запущен (порт 8501 не отвечает)
 Backend (FastAPI): не начат

Инфраструктура:
 Production сервер: 91.218.142.168

Рекомендации:
1. Запустить MVP (если нужен)
2. Начать Backend v2.0 (если пора)

Что делать?

Пример 3: Добавление функции

User: Добавь экспорт в PDF в проект marketplace

Claude (EXECUTION MODE):
1. Читает solution/mvp/pages/03_📋_Заказы.py
2. Добавляет функцию export_to_pdf()
3. Обновляет requirements.txt: reportlab==4.0.0
4. Тестирует
5. Обновляет CHANGELOG.md:

   ### [1.1.0] - 2025-11-09
   #### Добавлено
   - Экспорт заказов в PDF формат

6. Git commit -m "feat: добавлен экспорт заказов в PDF"

 Готово!

📞 СПРАВКА

Основные команды:

Команда Действие
Покажи состояние платформы Обзор всех серверов, проектов, стеков
Начать с начала проект X Диагностика состояния проекта
Создать проект X используя шаблон Y Создать новый проект
Восстановить контекст Восстановление из журнала
Показать структуру workspace Дерево директорий
Какие шаблоны доступны Список всех шаблонов

Файлы:

Файл Назначение
platform/CLAUDE.md Главный документ (ВЫ ЗДЕСЬ)
platform/PLATFORM_STATUS.md 📊 Состояние платформы (серверы, проекты, стеки)
platform/.claude/system-journal.md Журнал событий
projects/{name}/design/PROJECT.md Описание проекта
projects/{name}/management/README.md Быстрый старт
templates/{category}/{name}/template.yaml Метаданные шаблона

🔗 ССЫЛКИ


Конец документа
Версия: 1.0.0
Дата: 2025-11-09


Следующий шаг: Прочитай этот документ полностью, затем начни работу!