🧠 Что это
NanoClaw REPL Session Manager — это навык для управления сессиями в NanoClaw v2, минималистичной REPL-среде (Read-Eval-Print Loop), построенной на claude -p. Он позволяет разработчику работать с долгоживущими сессиями, переключать модели, загружать дополнительные навыки на лету, ветвить историю и экспортировать результаты — всё без внешних зависимостей.
Навык предназначен для тех, кто использует NanoClaw как интерактивный инструмент разработки или исследования: от быстрых экспериментов с промптами до длительных аналитических сессий с возможностью возврата к предыдущим состояниям.
⚙️ Как работает
📝 Персистентные сессии на Markdown
Каждая сессия хранится как Markdown-файл. Это значит, что историю диалога можно читать, редактировать и версионировать стандартными средствами (git, cat, grep). Никакой базы данных — только файлы.
🔄 Переключение модели (/model)
Команда /model позволяет сменить модель внутри текущей сессии без потери контекста. Например, начать с claude-sonnet-4-20250514, а затем переключиться на claude-3-5-sonnet-latest для более дешёвого или быстрого ответа.
📦 Динамическая загрузка навыков (/load)
Команда /load подгружает новый навык (skill) прямо во время сессии. Это позволяет расширять возможности REPL без перезапуска. Навыки — это JSON-файлы с описанием команд и поведения.
🌿 Ветвление сессий (/branch)
Перед рискованными изменениями (например, удалением контекста или сменой модели) рекомендуется создать ветку командой /branch. Ветка — это копия текущей сессии в новый Markdown-файл. Можно вернуться к исходной ветке в любой момент.
🔍 Поиск по сессиям (/search)
Команда /search ищет по всем сохранённым сессиям (Markdown-файлам) в директории. Полезно, когда нужно найти конкретный промпт или результат из прошлого.
🗜️ Компактизация истории (/compact)
После длительной сессии история может разрастись. /compact сжимает её, удаляя избыточные повторы и промежуточные шаги, сохраняя ключевые точки (например, после каждого /branch или /export).
📤 Экспорт (/export)
Сессию можно экспортировать в трёх форматах:
md — Markdown (читаемый, версионируемый)
json — структурированный (для машинной обработки)
txt — плоский текст (для вставки в отчёты)
📊 Метрики сессии (/metrics)
Команда /metrics показывает статистику: количество сообщений, токенов, веток, время жизни сессии. Полезно для оценки затрат и производительности.
🧭 Когда использовать
- Эксперименты с промптами — быстро переключать модели и проверять гипотезы.
- Длительные исследования — ветвить сессии, чтобы не потерять контекст.
- Совместная работа — экспортировать сессии в Markdown для ревью или архивации.
- Разработка навыков — загружать новые навыки
/load и тестировать их без перезапуска.
- Аудит и отладка — искать
/search по старым сессиям, компактизировать /compact перед передачей.
⚠️ Важно знать
- Ноль внешних зависимостей — весь функционал реализован на чистом Node.js (или аналогичном рантайме) без npm-пакетов. Это гарантирует стабильность и простоту развёртывания.
- Markdown как база данных — не пытайтесь использовать NanoClaw с бинарными или реляционными хранилищами. Все операции заточены на текстовые файлы.
- Детерминизм команд — каждая команда (
/model, /branch, /compact) должна давать предсказуемый результат при одинаковых входных данных. Это важно для воспроизводимости.
- Локальность — все данные хранятся локально, никаких облачных синхронизаций. Для бэкапов используйте git или rsync.
Пример использования
# Запуск сессии
claude -p "Загрузи навык nanoclaw-repl"
# Внутри REPL:
/load my-custom-skill.json
/model claude-3-5-sonnet-latest
/branch experiment-1
# ... делаем изменения ...
/compact
/export md
/metrics
Этот навык — основа для построения гибкой, контролируемой и расширяемой среды разработки на базе Claude.
Комментарии
Комментариев пока нет. Будьте первым.