"Knip :: полезен для AI-dev Вы же пользуетесь статическим анализом? Для TypeScript есть весьма стандартный инструмент, который подсвечивает неиспользуемый в проекте код - knip. https://knip.dev/ https://github.com/webpro-nl/knip Такого рода инструменты очень полезны именно при ai разработке, когда агенты могут не убирать какой то код для ""сохранения совместимости"" или ещё по каким то своим туманным соображениям гуманизма, и постепенно в проекте могут копиться некоторые артефакты. Артефакты вредны, засоряют контекст, путают тех же агентов. В крайних случаях вы можете обнаружить себя в многочасовой отладке кода, который устарел и не используется вообще (поэтому и падают тесты с ним - он не актуален). Штуками такого рода надо пользоваться аккуратно: ложные срабатывания у неё вполне вероятны и ожидаемы: инструмент без ai, анализирует проект механистически, зато полностью. 🟢 Что хорошо работает - это ИИ агент в связке с knip. Инструмент удобно запускать ""из-под агента"": тогда вы можете просить агента проанализировать вывод knip и дать заключение об адекватности отчёта. Агент с умной моделью типа кодекса вполне в состоянии понять, что публичное api сервисов - это не ""лишний экспорт"" и может добавить полезные исключения. И в целом проверить выдачу knip на адекватность. Например, подтвердить что часть файлов действительно устарела и не используется. Заодно по итогам он вам эти файлы и уберёт! ‼️ Ещё раз: commit перед сеансом работы с knip обязателен. Пропишите это правило для ИИ агента тоже: чистый git. Эта штука советует УДАЛЕНИЕ кода - операция по определению деструктивная, пользоваться надо аккуратно и желательно понимать что ты делаешь. Лучший рецепт: сохраняйте копии ДО процедуры. Обязательно все проверяйте ПОСЛЕ. 👉 Из полезного: позволяет вычистить накопленные артефакты после многих итераций разработки. Не знаю насколько для человеческой разработки актуально (от команды, наверное, зависит) - но как без подобных инструментов в ai swe я даже не знаю! В общем, полезная штука, кмк. А вы чем ещё пользуетесь? #post @deksden_notes"