# Portability: UNIVERSAL
# Last validated: 2026-05-17
# Next review: 2027-05-17

ЛУЧШИЕ ПРАКТИКИ
--------------

BACH CLI ПЕРВЫЙ ВЫБОР:
  ВСЕГДА используйте bach.py для всех операций.
  - Задачи --> задание добавить/списать/выполнить
  - Память --> запись/чтение памяти
  - Навыки --> bach --skills list/search
  - Инструменты --> список/запуск инструментов bach

ПОЧЕМУ?
  - Безопасная кодировка (UTF-8)
  - Проверяет структуру
  - Никакой коррупции
  - Ядерные операции
  - Единый интерфейс

АЛЬТЕРНАТИВЫ (ТОЛЬКО ЕСЛИ НЕ РАБОТАЕТ CLI):
  1. Скрипт Python с bach_paths.py
  2. Прямой запрос к БД (только чтение!)
  3. Никогда не редактируйте JSON вручную!

 ИНДЕКС ПРАВИЛ:
  Что?                      Где?
  Синтаксис CLI --help cli
  Правила памяти – помогите памяти
  Система задач --помощь по задачам
  Стандарты кодирования – помощь в кодировании
  Структура папок --help bach_paths
  Соглашения об именах -- помощь в именовании
  Форматы данных --справка по форматам
  Известные проблемы – справка по урокам
  Обзор инструментов -- справочные инструменты
  Префиксы инструментов -- помощь в именовании (раздел ПРЕФИКСЫ ИНСТРУМЕНТОВ)
  Инструменты проверки политик/_policies/

АРХИТЕКТУРНЫЕ ПРИНЦИПЫ:
-----------------------
Эти правила применяются в масштабах всей системы:

1. ХРАНИТЕ КОНЦЕПЦИИ ЦЕНТРАЛЬНО В ДОКУМЕНТАХ/
   Все CONCEPT_*.md принадлежат docs/ (корневой каталог).
   ОДНО место для всех планов = лучший обзор.

   После реализации: переместите концепцию в docs/_archive.

   ФАЙЛЫ РАЗМЕТКИ В СИСТЕМЕ:
   - docs/CONCEPT_*.md = концепции и планы (центральное!)
   - */README.md = справочник папок, индекс
   - навыки/SKILL.md = Документация по агенту/навыку
   - навыки/*.md = Основной документ агента (ATI.md, STEUER.md)

   ПРАВИЛО: Децентрализованные файлы .md предназначены ТОЛЬКО для навигации и документации по навыкам.
          НЕ для концепций или планов.

2. СТРУКТУРА ДОКУМЕНТОВ/ПАПОК
   docs/ касается РАЗВИТИЯ системы:

   _archive/ Архив старых концепций (реализованных/устаревших)
   _идеи/ Долгосрочные концепции (еще не утверждены)
   _test_and_reports/ Анализ разработчиков, текущие статусы, тесты
   анализ/результаты анализа и отчеты
   справка/Справочная документация
   (корневой) CONCEPT_*.md — все концепции централизованно
                      ОДНО место для реализации всех планов

   user/ касается ИСПОЛЬЗОВАНИЯ системы:
   - Отчеты, возникающие в результате использования
   - Не для разработки системы

3. ЭВОЛЮЦИОННАЯ МИГРАЦИЯ
   Никаких жестких перерывов при переименовании/реструктуризации.
   Переносите старые структуры шаг за шагом, а не все сразу.

4. ЕДИНАЯ БАЗА ДАННЫХ
   bach.db = Одна основная БД (более 210 таблиц, все в ней)

   Примечание: user.db был объединен с bach.db в версии 1.1.84.
   реестр.db (дистрибутив) и archive.db (архив).
   Специальные БД, не входящие в состав базовой системы.

5. БАЗА ДАННЫХ ДО JSON (доктрина RecludOS!)
   JSON-файлы только в обоснованных исключительных случаях.
   По умолчанию ВСЕГДА используется база данных.

   JSON разрешен только в том случае, если:
   - Зависит от пользователя (только что созданный, не перенесенный)
   - Прозрачность важна (пользователь должен редактировать напрямую)
   - Процессуальный характер (кратковременный, перерабатывающий)
   - Формат обмена импортом/экспортом

   Подробности: docs/help/formats.txt

6. DIST_TYPE ТРИ ШАГА
   2 = CORE (системный файл, дистрибутив резервный)
   1 = ШАБЛОН (1 снимок для сброса)
   0 = ПОЛЬЗОВАТЕЛЬ (данные пользователя, обычная ротация)

7. ПОМОЩЬ КАК ПРАВДА
   docs/help/*.txt — это основная документация.
   В случае возражения: docs/help/wins.
