Добавить в корзинуПозвонить
Найти в Дзене
PythonTalk

Скармливаем кодовую базу в LLM без костылей

📦 Если вы всё ещё копипастите код по одному файлику в окошко Claude или ChatGPT, то вы не просто тратите своё время, вы ещё лишаете модель понимания связей внутри архитектуры проекта. Для нормальной работы с LLM кодовую базу нужно правильно паковать. Иля автоматизации этого процесса сейчас есть два вменяемых инструмента. У них одна цель, но разная философия и экосистемы. 🛠 Repomix Объективно — лучший инструмент на сегодня. Запихнуть в него URL гитхаба или локальную папку — это базовый функционал. Его реальная ценность в другом: 🟢 XML-разметка. Он пакует код в древовидную структуру XML-тегов. Если вы слушаете меня в Точке Сборки, то знаете, что современные модели парсят XML-разметку намного точнее, чем другие форматы. 🟢 AST-компрессия. Под капотом работает Tree-sitter, который парсит синтаксическое дерево и может вырезать детали реализации (тела функций), оставляя только интерфейсы, классы и сигнатуры. Это экономит до 70% контекстного окна без потери понимания архитектуры. 🟢 Secu

Скармливаем кодовую базу в LLM без костылей 📦

Если вы всё ещё копипастите код по одному файлику в окошко Claude или ChatGPT, то вы не просто тратите своё время, вы ещё лишаете модель понимания связей внутри архитектуры проекта.

Для нормальной работы с LLM кодовую базу нужно правильно паковать. Иля автоматизации этого процесса сейчас есть два вменяемых инструмента. У них одна цель, но разная философия и экосистемы.

🛠 Repomix

Объективно — лучший инструмент на сегодня. Запихнуть в него URL гитхаба или локальную папку — это базовый функционал. Его реальная ценность в другом:

🟢 XML-разметка. Он пакует код в древовидную структуру XML-тегов. Если вы слушаете меня в Точке Сборки, то знаете, что современные модели парсят XML-разметку намного точнее, чем другие форматы.

🟢 AST-компрессия. Под капотом работает Tree-sitter, который парсит синтаксическое дерево и может вырезать детали реализации (тела функций), оставляя только интерфейсы, классы и сигнатуры. Это экономит до 70% контекстного окна без потери понимания архитектуры.

🟢 Security Check. Встроенный Secretlint даст по рукам, если вы попытаетесь скормить в опенсорсную нейронку захардкоженные ключи или пароли.

🟢 MCP Server. Умеет работать по протоколу Model Context Protocol. AI-агенты могут напрямую взаимодействовать с вашей кодовой базой локально.

🐍 Gitingest

Ответ от Python-комьюнити. Технически он проще (без AST-магии и сжатия), но у него есть свои козыри.

🟡 Магия URL. Самый быстрый способ получить дамп чужого репо. Находясь на GitHub, просто меняете в адресной строке github.com на gitingest.com — всё, текст готов к копипасту.

🟡 Python Native. Ставится через pip и дергается прямо из вашего кода. Нужно скормить проект в кастомный RAG-пайплайн? summary, tree, content = ingest("path") и погнали.

🟡 Асинхронность под Jupyter. Поддерживает await ingest_async(), что делает его идеальным костылем для аналитиков и дата-саентистов, не вылезающих из ноутбуков.

💡 Что выбрать?

Если нужно разобрать жирный проект со сложной структурой под рефакторинг — ставьте Repomix.

Если пишете свой тулинг на питоне или нужно выдернуть код с гитхаба за 3 секунды без терминала — юзайте Gitingest.

Обе тулзы сами считают токены, уважают ваш .gitignore, имеют веб-версии и браузерные расширения.

#тулбокс