Персональная AI-лаборатория на Claude Code. Это не продукт и не библиотека — это система работы: как один человек живёт в Claude Code месяцами, не теряя контекст между сессиями, копит знания и превращает их в правила, которые меняют поведение агента.
Репозиторий — публичная визитка этой системы: платформа (.claude/), методология и правила. Личные данные, инфраструктура, продукты и память живут отдельно и сюда не входят (см. Что НЕ входит).
Если тебе интересно «как обустроить Claude Code под себя по-взрослому» — здесь живой пример, обкатанный на реальной работе, а не туториал.
Главная боль долгой работы с LLM — context rot: каждая новая сессия модель не помнит, кто ты, какие у тебя проекты и на какие грабли ты уже наступал. Cortex решает это слоями памяти с разным временем жизни и разными правилами загрузки. Принцип цикла:
наблюдение → рефлексия → поведение
Сырые наблюдения копятся в дневнике → периодически дистиллируются в правила → правила автоматически меняют поведение агента в следующей сессии.
.claude/ → платформа: commands, skills, hooks, agents, rules
docs/ → устойчивая методология (git-flow, python-rules, verify)
memory/ → subagents-playbook (делегирование)
scripts/ → утилиты системы (поиск по истории, архивация контекста, ops)
CLAUDE.md → правила + конвенции проекта (автозагрузка в каждую сессию)
В .claude/: 17 команд, 18 скиллов, 6 хуков, 4 агента, 3 набора правил.
| Слой | Когда грузится | Что внутри |
|---|---|---|
CLAUDE.md |
всегда | правила агента + конвенции |
CURRENT_CONTEXT.md |
всегда | текущий фокус, лимит ~5 строк — только то, что горит сейчас |
MEMORY.md |
всегда | индекс-оглавление паттернов + ссылки на детали |
feedback_* / project_* / user_* |
по запросу | детальные факты — открываются, когда тема всплыла |
Идея: всегда грузится тонкая карта (индекс), а тело — только по требованию. Контекст дорогой; не таскаем десятки файлов, когда нужна одна ветка.
diary/ → reflections/ → MEMORY.md + правила
сырьё, процесс выводы =
«что было» осмысления «что делать»
/diary— запись сессии (сырьё, по датам)/reflect— раз в неделю читает дневники, находит повторяющиеся паттерны, дистиллирует в правила/handoff— финал сессии: дневник + автоархив старого (>7 дней) + обновление фокуса
Каждый факт живёт в одном файле; остальные на него ссылаются, а не копируют. Поменял в одном месте — нигде не разъехалось. MEMORY.md не дублирует детали, он указывает на них — поэтому остаётся коротким индексом.
- SessionStart — вкидывает фокус + усвоенные уроки в начало каждой сессии.
- PreCompact — при сжатии контекста механически (без LLM) пишет structured-дневник, чтобы сжатие не съело незафиксированное.
- pre-commit — quality gate: тесты + скан секретов + lint.
3+ шагов ресёрча → субагент. Независимые задачи → параллельные агенты. Перед делегированием — memory/subagents-playbook.md (когда параллелить, что НЕ делегировать).
Ретроспективный вопрос («когда мы решали X») → scripts/session-search.py — простой grep по дневникам и памяти. Без облачного индекса, всё локально.
Explore → Plan → Implement → Verify. Большие задачи дробятся на мелкие шаги. Коммиты — по запросу. Качество — через pre-commit hook.
Это визитка, собранная по принципу allow-list (включаем только заведомо безопасное), а не «всё минус вычищенное». Намеренно отсутствуют:
memory/(дневники, MEMORY.md, личные заметки) — персональные, не версионируются в git вообще.tools/(продукты) — самодостаточные проекты живут в отдельных репозиториях. Пример опубликованного продукта: voice-type — push-to-talk диктовка с локальным Whisper.- Инфраструктура — VPS, деплой-процедуры, ключи, токены. Секреты только в
.env(gitignored).
Рабочая (приватная) версия монорепо содержит всё это; здесь — только переносимая методология.
Python 3.12+ · uv · pyright (strict) · ruff · Claude Code CLI (основной) · Gemini + Codex CLI MCP (второе мнение).
MIT. Бери идеи, форкай, адаптируй под себя. Это не фреймворк, который надо ставить «как есть» — это образец того, как обустроить долгую работу с Claude Code.