Отбор истории инструментов для coding-агента
Экспериментальное расширение Pi спрашивает Jev, какие вызовы инструментов нужно сохранить при уплотнении длинной сессии.
Jev оценивает → Pi собирает replay
Что это решает
Экспериментальное расширение Pi использует Jev для отбора старых вызовов инструментов перед уплотнением длинной сессии. Оно не переписывает сообщения пользователя и обычный текст ассистента и не заменяет историю исходного JSONL-файла.
Сокращать историю вызовов инструментов в сессии Pi
Что именно сокращается
Перед уплотнением расширение сопоставляет вызовы инструментов с их результатами. Для каждой старой пары задаются два Noul-вопроса, после чего код выбирает одно из действий: оставить, обрезать или убрать из компактного воспроизведения. Результат хранится в compaction.details; исходный журнал сессии остаётся на месте.
При восстановлении контекста сохранённый replay подставляется только если соответствие можно подтвердить. Иначе расширение не пытается угадать и отдаёт управление обычному механизму Pi.
Защиты и приватность
Новые установки выключены по умолчанию. При включении удаляются похожие на секреты фрагменты и ограничивается длина отправляемых сводок; полные тела результатов инструментов не передаются. В настройках также защищены последние сообщения, вызовы edit/write и ошибки.
Есть порог полезности, минимальная ожидаемая экономия и максимальный размер replay. При отсутствующем ключе, таймауте, некорректном ответе или слишком маленькой экономии расширение возвращается к штатному уплотнению Pi.
Когда это имеет смысл
Подход подходит тем, кто хочет сохранить проверяемую связь с исходными вызовами инструментов, а не получить непрозрачный пересказ всей беседы. Но это эксперимент: неверный порог может скрыть полезный старый результат, а оценка размера контекста сделана приближённо, не токенизатором конкретного провайдера.
Как попробовать самому
- 01Нужны Pi Coding Agent 0.85.1+, Node.js 22.19+ и ключ TypeSafe в переменной окружения.
- 02Установить расширение по README, прочитать его раздел о приватности и только затем явно задать
enabled: true. - 03Проверить
/jev-statusи сначала испытать его на неважной сессии с сохранённой исходной историей.
Ограничение этого проекта
Репозиторий прямо называет расширение экспериментальным. Не запускайте два пользовательских расширения уплотнения одновременно: порядок их обработчиков не определён.