fast-jev-compaction: плагин для Claude Code для быстрой компакции данных

fast-jev-compaction: плагин для Claude Code для быстрой компакции данных

fast-jev-compaction — плагин для Claude Code, который заменяет сводку компакции решениями Jev и позволяет быстро обрабатывать результаты инструментов.

Проект решает проблему потери важной информации при традиционной компакции, где старые обращения к инструментам и их результаты могут быть изменены или потеряны. Этот плагин сохраняет все пользовательские и ассистентские сообщения в неизменном виде, просто удаляя устаревшие данные. Это полезно для разработчиков, которые хотят минимизировать шум в диалогах с LLM, сохраняя при этом все нужные детали.

Проект написан на JavaScript и доступен как npm-пакет и встроенный плагин для Claude Code. Как и в случае с любым проектом, у которого есть свои особенности, имей в виду, что он может не подойти для всех случаев, и поддержка ограничивается работой с Jev. Запуск осуществляется через npm, однако подробности по интеграции и настройке лучше уточнить в документации.

Проект fast-jev-compaction представляет собой плагин для Claude Code, который заменяет стандартное резюме компактации на решения от Jev. Он направлен на оптимизацию обработки старых сообщений в диалогах с помощью LLM, сохраняя актуальные вызовы инструментов и результаты, которые действительно нужны, без потери важной информации.

В отличие от традиционных методов, которые общие и могут терять детали, такие как пути к файлам или точные ошибки, этот плагин исключает ненужные данные, базируясь на рекомендациях Jev, который видит весь диалог и принимает решения о том, что можно удалить. Это позволяет сохранить лишь те сообщения, которые важны в контексте текущего обсуждения, сохраняя их в оригинальном виде.

Как это работает

Основные принципы работы плагина следующие:

  • Каждый tool_use соответствует своему tool_result по tool_use_id. Вызовы из первых сообщений или из последних preserveRecentMessages сообщений остаются неизменными.
  • К Jev отправляется полное состояние разговора, где каждый инструмент заменён краткой заметкой, а сами тексты представлены без потерь.
  • Чтобы вписаться в ограничения по количеству токенов, слишком длинные сообщения обрезаются, а старые и незащищённые сообщения сворачиваются в краткие заметки.
  • Для каждого вызова без пиннинга Jev задаёт два вопроса: оставлять ли вызов и сохранять ли результат в оригинальном виде.
  • Ответы от Jev собираются и обрабатываются, принимая во внимание максимальное количество токенов для запросов.

Установка и использование

Чтобы установить плагин, нужно выполнить следующие команды:

npm install fast-jev-compaction
export TYPESAFE_API_KEY=...

Пример использования в коде:

import { compactMessages, reductionRatio, type Message } from 'fast-jev-compaction';

const transcript: Message[] = [
  { role: 'user', text: 'Fix the failing test. Never edit src/generated.', toolUses: [] },
  {
    role: 'assistant',
    text: '',
    toolUses: [{ tool_use_id: 'toolu_1', tool: 'Read', input: { file_path: 'src/a.ts' } }],
  },
];

const result = await compactMessages(transcript, { preserveRecentMessages: 4 });
console.log(result.messages, result.decisions, result.stats);
if (reductionRatio(result) < 0.25) {
  // not worth it: keep the original transcript, or summarize instead
}

Плагин также предоставляет возможность использовать собственный транспорт для взаимодействия с Jev, что позволяет настраивать логику работы с запросами.

Ограничения

  • Возможности функции ограничены только вызовами инструментов и их результатами; текстовые сообщения не удаляются и не сокращаются в результирующем выводе.
  • Размеры токенов оцениваются лишь по количеству символов, что может привести к неточностям.
  • Несмотря на Калибровку, вероятность не гарантирует, что результат безопасен для удаления: функция может всегда повторно запустить инструмент.

Этот проект удобен для тех, кто хочет сохранить диалоги на высоком уровне и избежать потерь важной информации при компактации сообщений, предоставляя более точный контроль за процессом удаления ненужных данных.

Радар проекта: 51 из 100 — рабочий, но с оговорками

ИмпульсТемпЗрелостьСообществоСвежестьСтартПродакшенДовериеДокументацияЭкосистема51
  • Импульс 91 ≈ 121 звезда в день
  • Темп разработки 50 16 коммитов за 12 недель
  • Зрелость 15 проекту 56 дней, релизов нет
  • Сообщество 48 2 участника, 581 форк
  • Свежесть 69 последний коммит — 2 месяца назад
  • Быстрый старт 40 есть: команда установки, примеры
  • Готовность к продакшену 30 тесты
  • Безопасность и доверие 40 лицензия MIT
  • Документация 77 README 8.7 тыс. знаков, 10 разделов
  • Экосистема 53 14 подписчиков на обновления, 0 тем
Как считаем

Только открытые данные GitHub на 07.11.2026, без оценок нейросети. Каждая ось — от 0 до 100, итог — среднее.

  • Импульс — звёзд в день: за время наших замеров, а пока их нет — за всю жизнь проекта; 200 в день — максимум.
  • Темп разработки — коммитов за последние 12 недель; 300 — максимум. Пока GitHub не досчитал статистику, ось не учитывается.
  • Зрелость — возраст проекта (3 года — максимум) и число релизов (30 — максимум), поровну.
  • Сообщество — участников с коммитами (200 — максимум) и форков (5000 — максимум), поровну.
  • Свежесть — дней с последнего коммита: сегодня — 100, полгода и больше или архив — 0.
  • Быстрый старт — в README есть команда установки, раздел «быстрый старт» или примеры использования, в репозитории — Docker и папка примеров, у проекта есть сайт или демо.
  • Готовность к продакшену — релизы, версия 1.0 и выше, автосборка (GitHub Actions), тесты, лицензия, журнал изменений.
  • Безопасность и доверие — открытая лицензия (своя — половина балла), политика безопасности (SECURITY.md), проект организации, правила для участников, не в архиве.
  • Документация — объём и структура README, папка docs или сайт, оценка «здоровья сообщества» GitHub.
  • Экосистема — звёзды (50 тыс. — максимум), подписчики на обновления (1000 — максимум), темы репозитория.

Открыть на GitHub: tamaratran/fast-jev-compaction →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте