ramas
Solutions

Solution · Live

Ramas-Karpathy-Tree

Per-project memory layer для Claude Code. cwd-aware routing, pre-filter, Haiku flush, two-tier MEMORY.

  • memory
  • claude-code
sergeyramas.github.io/ramas-karpathy-treelive
sergeyramas.github.io preview
Полный гайдsergeyramas.github.io/ramas-karpathy-tree
Открыть

Зачем нужен ещё один слой памяти

Глобальная память (Anthropic auto-memory) хорошо помнит факты о тебе. Wiki хорошо хранит общую базу знаний. Между ними дыра: знания конкретного проекта — где лежат файлы, какие команды работают, что уже пробовал. Tree эту дыру закрывает.

Архитектура в одной картинке

  • Корень — ~/.claude/projects/<slug>/memory/MEMORY.md
  • Ветви — пер-проектные project_*.md рядом
  • cwd-router — хук, выбирает правильную ветвь по текущему рабочему каталогу
  • pre-filter — режет токены, грузит только релевантную для запроса часть
  • haiku-flush — раз в N сессий пробегает по ветвям и сжимает старое через Haiku

Установка

git clone https://github.com/sergeyramas/ramas-karpathy-tree ~/.ramas-tree
cd ~/.ramas-tree && ./install.sh

Установщик:

  • добавит хук SessionStart в ~/.claude/settings.json
  • зарегистрирует скилл /tree-write для ручной записи
  • положит шаблоны веток в templates/

Первый запуск в проекте

Открываешь Claude Code в ~/code/myproject/ и пишешь:

/tree-write это next.js проект под клиента X, бэк на Directus.
Главные команды: npm run dev на 3000, npm run build для прода.
Боль: турбопак на macOS arm64 иногда падает с WASM-ошибкой —
лечится rm -rf node_modules && npm install.

Skill создаёт project_myproject.md в правильной ветви. В следующей сессии cwd-router увидит, что pwd совпадает с проектом, и подгрузит ветвь автоматически.

Two-tier MEMORY: что это

  • Tier 1 (active) — только то, что трогал в последние 7 дней. Влезает в системный промпт целиком.
  • Tier 2 (cold) — всё остальное. Доступ через явный /tree-recall <project> <query> или semantic search.

💬 Эффект

Системный промпт перестаёт расти линейно с количеством проектов.
Анте — 80–120 KB к 20-й сессии. После tree — 8–14 KB,
и при этом память по конкретному проекту глубже.

Зачем: дешевле в токенах, точнее в подгрузке, быстрее в старте сессии.

Дисциплина записи

  • После каждой нетривиальной задачи — /tree-write тремя предложениями
  • После рефакторинга — /tree-update <fact>
  • Раз в месяц — /tree-prune чистит protected, но устаревшее

В полном гайде — конфиг роутера, тонкая настройка фильтра, примеры реальных проектов и расход токенов до/после.

Связь · кратко и по делу

Понравилось — забирай в Telegram. Хочешь увидеть всё сразу — на главную.