Дата: 2026-01-12
Статус: Проблема с persistence → нужно вернуться к промпт-файлу
Файл: $WORKSPACE/CLAUDE.md
Размер: 1113 строк
Статус: Активен, стабилен
Содержит:
- Три режима работы (Оператор/Проектор/Архитектор)
- Индекс триггеров
- Протокол диалога L1-L4
- Делегирование моделям
- Правило времени (AI работает в 10× быстрее)
- STOP rules
- Опасные термины
- Примеры промптов для делегирования
- Проверка ресурсов
- Экосистема и структура
Проблема:
- CLAUDE.md читается как контекст, НЕ как system prompt
- Имеет низкий приоритет
- Теряется при compaction → переписывается в summary
Файл: system/monitor/dialog-testing/test-prompt.md
Размер: 199 строк
Статус: Тестовый, экспериментальный
Использование: claude --append-system-prompt-file test-prompt.md
Содержит:
- 2-стадийный протокол (ПОНИМАНИЕ → РЕШЕНИЕ)
- Вероятностные оценки (XX% уверенности)
- Формат вывода с метриками
- Пороги stage1_min / stage2_min (60%)
- Команды управления (порог1, порог2, пороги)
- Логирование в log.yaml для статистики
Цель: Собрать 50-100 диалогов для калибровки порогов
Проблема:
- ❌ --append-system-prompt теряется после compaction
- Эксперимент не завершён (нет собранной статистики)
- Слишком verbose для постоянного использования
Файл: .claude/output-styles/SafeDialog.md
Размер: 366 строк
Статус: Создан, НЕ закоммичен в git
Использование: settings.local.json → "outputStyle": "SafeDialog"
Содержит:
- Упрощённый протокол L1-L4 (из CLAUDE.md)
- Алгоритм работы (6 шагов)
- STOP rules (security, красные флаги, ошибки)
- Опасные термины
- Делегирование моделям
- Примеры операций L1/L3/L4
- Форматирование и стиль
- Git операции
Цель: Попытка сделать persistence через output style
Проблема:
- ❌ Output style теряется после compaction (та же проблема!)
- Флаг keep-coding-instructions: true не помогает
- Output style НЕ сохраняется в метаданных сессии
| Аспект | CLAUDE.md | test-prompt.md | SafeDialog.md |
|---|---|---|---|
| Размер | 1113 строк | 199 строк | 366 строк |
| Загрузка | Авто (claudeMd) | Флаг --append | settings.json |
| Persistence | ❌ Summary | ❌ Теряется | ❌ Теряется |
| Приоритет | Низкий (контекст) | Высокий (system) | Высокий (system) |
| Протокол | L1-L4 варианты | 2-стадия вероятности | L1-L4 упрощённый |
| Метрики | ❌ Нет | ✅ Вероятности | ❌ Нет |
| STOP rules | ✅ Да | ⚠️ Частично | ✅ Да |
| Опасные термины | ✅ Да | ✅ Да | ✅ Да |
| Делегирование | ✅ Да | ❌ Нет | ✅ Да |
| Примеры | ✅ Да | ❌ Нет | ✅ Да |
| Режимы работы | ✅ 3 режима | ❌ Нет | ✅ 3 режима |
Потеряно:
- ❌ Три режима работы (Оператор/Проектор/Архитектор)
- ❌ Индекс триггеров (бэкап, монитор, scheduler...)
- ❌ Делегирование моделям (Haiku/Sonnet/Opus)
- ❌ Примеры промптов
- ❌ Проверка ресурсов
- ❌ Экосистема и структура
Добавлено:
- ✅ 2-стадийный протокол с метриками
- ✅ Вероятностные оценки
- ✅ Логирование для статистики
- ✅ Команды управления порогами
Потеряно:
- ❌ 2-стадийный протокол
- ❌ Вероятностные оценки (XX%)
- ❌ Логирование в log.yaml
- ❌ Команды управления порогами
- ❌ Цель тестирования (калибровка)
Добавлено:
- ✅ Вернули 3 режима работы
- ✅ Вернули делегирование
- ✅ Вернули примеры
- ✅ Добавили git операции
Ни один метод НЕ переживает compaction:
- CLAUDE.md → теряется в summary
- --append-system-prompt → флаг не сохраняется
- outputStyle → не применяется после compaction
В текущей сессии:
- ❌ SafeDialog НЕ активен
- ❌ Протокол L1-L4 НЕ применяется
- ❌ Я отвечаю без подтверждений
- ❌ Не показываю варианты решения
Тест: "настрой nginx"
- Должен → показать варианты, запросить подтверждение
- Фактически → просто отвечаю
Преимущества:
1. ✅ Высокий приоритет (system prompt level)
2. ✅ Можно использовать с --append-system-prompt
3. ✅ Версионируется в git
4. ✅ Легко редактировать и тестировать
5. ✅ Работает ДО compaction (минимум)
Недостатки:
1. ❌ Всё равно теряется после compaction (проблема Claude Code)
2. ❌ Нужно запускать с флагом: claude --append-system-prompt-file
Шаг 1: Создать единый промпт-файл .claude/system-prompt.md
Объединить:
- CLAUDE.md → основу (режимы, триггеры, делегирование)
- SafeDialog.md → протокол L1-L4 (упрощённый, без verbose)
- test-prompt.md → НЕ включать (тестовый)
Размер: ~400-500 строк (баланс полноты и читаемости)
Шаг 2: Обновить start.sh для автоматического использования
# В start.sh
claude --append-system-prompt-file \
$WORKSPACE/.claude/system-prompt.md
Шаг 3: Документировать workaround для compaction
В KNOWN_ISSUES.md:
- После compaction → restart сессии с флагом
- Или: используй RESTORE_PROTOCOL_PROMPT.txt
Шаг 4: Продолжить давление на Claude Code
.claude/
├── system-prompt.md ← ОСНОВНОЙ (для --append-system-prompt)
│ Включает: режимы, L1-L4, STOP rules,
│ делегирование, термины
│
├── output-styles/
│ ├── SafeDialog.md ← BACKUP (не работает из-за compaction)
│ └── TestMarker.md ← ДЛЯ ТЕСТОВ (маркер проверки)
│
├── RESTORE_PROTOCOL_PROMPT.txt ← WORKAROUND (восстановление после потери)
├── KNOWN_ISSUES.md ← ДОКУМЕНТАЦИЯ ПРОБЛЕМЫ
├── FEATURE_REQUEST_*.md ← ISSUE ДЛЯ GITHUB
└── PERSISTENCE_TEST_PLAN.md ← ПЛАН ТЕСТИРОВАНИЯ
system/monitor/dialog-testing/
└── test-prompt.md ← ЭКСПЕРИМЕНТ (2-стадии, НЕ для прода)
CLAUDE.md ← БАЗА ЗНАНИЙ (читается как контекст)
Создать .claude/system-prompt.md:
- Объединить CLAUDE.md + SafeDialog.md
- Убрать дублирование
- Оставить только критичное (~400 строк)
Обновить start.sh:
- Добавить флаг --append-system-prompt-file
- Для всех режимов (Оператор/Проектор/Архитектор)
Протестировать:
- Запустить новую сессию
- Проверить маркер: "marker check"
- Тест L3: "настрой nginx"
Если добавят persistence:
- Вернуться к output style (чище)
- Или: использовать новое поле в settings.json
Если НЕ исправят:
- Жить с workaround
- Или: форкнуть Claude Code и пропатчить
Создать .claude/system-prompt.md — объединённый промпт-файл.
Содержание:
# Claude Code System Prompt
Ты интерактивный CLI инструмент — Claude Code.
## РЕЖИМЫ РАБОТЫ
● Оператор — инфра, сервер, БД
◆ Проектор — проекты, фичи
▲ Архитектор — методология, стандарты
## ПРОТОКОЛ ДИАЛОГА L1-L4
[упрощённая версия из SafeDialog.md]
## STOP RULES
[критичные правила безопасности]
## ОПАСНЫЕ ТЕРМИНЫ
[список омонимов требующих уточнения]
## ДЕЛЕГИРОВАНИЕ МОДЕЛЯМ
[когда использовать Haiku/Sonnet/Opus]
## ПРИМЕРЫ
[3-5 ключевых примеров]
Размер: 400-500 строк
Формат: Сжатый, императивный, без повторений
Статус: Готов к созданию system-prompt.md
Оценка: 30 минут на создание + тестирование