by sysevol-ai (open source) Claude Desktop, Claude Code, OpenCode, macOS, Linux, Python 3.10+
Мультиракурсная система данных для подачи контекста репозитория coding-агентам.
MCP-сервер: карта репозитория, поиск по коду и token-aware пакеты контекста для AI coding-агентов.
45 MCP-инструментов, дающих AI coding-агентам достоверный контекст о вашем Rails-приложении: схема, модели, роуты, контроллеры, вьюхи, jobs, …
Компактный MCP-сервер от автора библиотеки Xamarin/.NET MAUI Community Toolkit — набор небольших разработческих утилит для AI-агентов.
Показывает, что coding-агенты уже знают о проекте. Docmancer индексирует память, правила и инструкции, которые Claude Code, …
# Требуется Python 3.10+ и Git python -m pip install "codenib[graph,mcp]" codenib codegraph init /path/to/repository
Укажите его на любой репозиторий, получите поисковую вики и MCP-сервер для вашего агента программирования.
Быстрый старт · Веб-сайт · Discord · Документация · Новости · CodeGraph · MCP · Интеграции с агентами · Языки
python -m pip install "codenib[graph,mcp]"
codenib codegraph init /path/to/your/repo
Эта одна команда определяет языки репозитория, устанавливает закреплённые провайдеры графов на уровне пакетов, которыми она может управлять, строит BM25 и связанный с исходным кодом граф символов, и регистрирует полученный MCP-сервер в установленных клиентах Codex и Claude Code. Она работает локально, имеет открытый исходный код, не требует модели или облака и не записывает конфигурацию или индексы в целевой репозиторий.
| Слой | Ответственность |
|---|---|
| Компилятор представлений | Разбивает исходный код на фрагменты и материализует представления BM25, плотные, графовые и навигационные; повторно использует текущие артефакты и атомарно перестраивает затронутые представления |
| Манифест представлений | Записывает идентичность репозитория, отпечаток исходного кода, профиль сборщика, возможности, статус и местоположение артефактов независимо для каждого представления |
| Обслуживание контекста | Выполняет лексические, семантические, гибридные, реранжированные и структурные планы запросов, сохраняя относительные пути к исходным файлам |
| Среда выполнения агента | Предоставляет инструменты в форме MCP и LSP с учётом возможностей, собирает ограниченные доказательства и возвращает цитаты, которые могут проверить агенты и люди |
repository change
-> reuse current views or rebuild affected views
-> publish a capability-bearing manifest
-> plan repository queries
-> deliver bounded, source-linked context
При последующем коммите CodeNib повторно использует представления, чьи исходные данные и идентичность сборщика остаются актуальными. Запрошенное представление, затронутое изменениями исходного кода или политики, в настоящее время перестраивается в изолированном поколении; восстановление дельты на уровне файлов и символов остаётся отключённым, пока не сможет использовать тот же закреплённый источник авторитетности.
Требуется Python 3.10+ и Git. Для готового к использованию агентом CodeGraph без модели или API-ключа установите дополнительные пакеты graph и MCP и выполните одну команду:
python -m pip install "codenib[graph,mcp]"
codenib codegraph init /path/to/repository
codegraph init обнаруживает Codex и Claude Code, устанавливает только управляемые пакетами провайдеры для обнаруженных языков, строит повторно используемые представления bm25 и symbol_graph и просит каждый собственный CLI-клиент владеть своей конфигурацией. Выполните codenib codegraph status /path/to/repository, чтобы диагностировать полную
путь или codenib codegraph uninstall /path/to/repository для удаления только управляемых регистраций клиентов. Индекс остается пригодным для повторного использования.
Репозитории могут сохранять точные исключения поддеревьев относительно корня, когда сгенерированное или поставляемое содержимое не должно индексироваться:
codenib codegraph init /path/to/repository \
--exclude-dir ios/Pods \
--exclude-dir generated/api
Пути используют написание POSIX относительно репозитория (/) и указывают точные поддеревья, а не шаблоны. Повторите --exclude-dir, чтобы заменить полный набор пользовательских исключений. Последующие запуски init и index повторно используют эту политику из манифеста; используйте --clear-exclude-dirs, чтобы вернуться к поверхности исходного кода по умолчанию. CodeNib не рассматривает .gitignore как политику индексации, поскольку отслеживаемые и локально игнорируемые исходники могут быть намеренным входом.
Zoekt поддерживает политику исходного кода по умолчанию только тогда, когда его фиксированное дерево коммитов точно соответствует аутентифицированному рабочему каталогу и не содержит отслеживаемых путей, исключаемых политикой по умолчанию. В настоящее время он не поддерживает непустой набор пользовательских исключений. Команда, явно запрашивающая представление zoekt, включая --preset full, завершается с ошибкой, если какое-либо из условий не выполнено; вместо этого используйте CodeGraph, fast или семантические пути. Аутентифицированное обслуживание MCP для Zoekt в настоящее время требует Linux /proc; см. границы поверхности исходного кода.
Для браузерной Wiki с гибридным поиском BM25+плотный, установите семантическое дополнение:
python -m pip install "codenib[semantic]"
codenib wiki /path/to/repository
Оба пути сохраняют повторно используемое состояние в ~/.codenib/repositories и оставляют целевой рабочий каталог без изменений. Установите CODENIB_HOME, чтобы переместить состояние.
Предварительный просмотр операций CodeGraph без установки, индексации или настройки агента:
codenib codegraph init /path/to/repository --dry-run
Для структурного представления CodeNib определяет языки репозитория и управляет только их провайдерами на уровне пакетов; системные и проектные предварительные требования остаются явными:
python -m pip install "codenib[graph]"
codenib toolchain install /path/to/repository --scope graph
codenib doctor /path/to/repository --require graph
Экспортируйте этот индексированный коммит как бессерверную Wiki, когда не требуется живой бэкенд Ask:
codenib export /path/to/repository --output /tmp/repository-wiki
Экспорт содержит версионированный манифест происхождения, предварительно вычисленные страницы Wiki, цитаты из исходного кода и доступные данные о зависимостях на уровне страниц. Он не содержит учетных данных провайдера; интерактивный Ask и исследование графа в реальном времени остаются на локальном пути или пути обслуживания MCP.
Для Wiki, размещенной в репозитории, CodeNib также поставляет переиспользуемый GitHub workflow, который собирает или повторно использует тот же манифест, развертывает статический сайт на Pages и загружает соответствующий артефакт контекста, адресованный коммитом. Его маршрут по умолчанию semantic строит представления BM25 и векторные представления с кэшированной локальной моделью Hugging Face и не требует ключа API. Явный маршрут fast избегает загрузки модели; собственная конечная точка, совместимая с OpenAI, может заменить локальное встраивание. Поиск во время запроса остается в локальной среде или среде MCP. См. GitHub Pages. Опубликованный артефакт BM25/векторный затем можно проверить на точном локальном рабочем каталоге и обслуживать через MCP без пересборки представлений репозитория.
См. Краткое руководство по портам, расширенной индексации и устранению неполадок.

Рекомендуемый путь настраивает установленные клиенты Codex и Claude Code через их собственные CLI:
python -m pip install "codenib[graph,mcp]"
codenib codegraph init /path/to/repository
Попросите агента начать с explore_context для ограниченного, проверенного по исходному коду контекста репозитория и использовать dependency_subgraph для влияния вызывающего или зависимостей вызываемого. Сервер MCP также предоставляет инструменты ранжированного BM25, регулярных выражений, определений, ссылок, маршрутов и ограниченного чтения исходного кода. См. руководство по CodeGraph для областей клиента, диагностики, поведения при удалении и языковых требований, а также MCP Server для полного контракта инструментов.
Тот же планировщик доступен напрямую Python-агентам:
from codenib.agent import RepositoryContextExplorer
with RepositoryContextExplorer.from_repository(
"/path/to/repository", policy="auto"
) as explorer:
result = explorer.explore("where is request retry behavior implemented?", top_k=10)
Каждый результат включает подтвержденные исходным кодом доказательства, а также выбранный план, возможности, загруженные представления, слияние, граф и трассировку повторного ранжирования.
| Поверхность | Назначение |
|---|---|
| Компилятор представлений | Создает независимо управляемые представления, повторно использует текущие поколения и атомарно перестраивает измененные представления в рамках одной идентичности исходного кода |
| Среда выполнения контекста агента | Планирует поиск и навигацию с учетом возможностей, затем собирает ограниченные доказательства, связанные с исходным кодом |
| Поиск | BM25, плотные векторы, regex/trigram, Zoekt, слияние и реранжирование; см. матрицу проверенных моделей |
| Структурный контекст | Символьные графы на основе SCIP/LSP с исходными позициями и типизированными рёбрами |
| Инструменты в формате MCP и LSP | Предоставьте один манифест агентам кодирования, не привязывая среду выполнения к конкретному фреймворку агентов |
| Совместимость с агентами | Используйте один манифест для контрактов с фиксированными версиями LocAgent, Agentless, CoSIL и OrcaLoca, а также опубликованный контракт RepoNavigator jump на основе сигналов определений SCIP/LSP; см. матрицу поддержки |
| Совместимость с бенчмарками | Оценивайте нативное исследование на фиксированных внешних наборах данных и скоринговых системах, включая SWE-Explore; см. матрицу наборов данных и бенчмарков |
| Локальная проверка | Аудируйте тот же контекст через страницы Wiki, ответы Ask, цитаты и карту зависимостей |
| Оценочная инфраструктура | Измеряйте поиск, навигацию, инкрементальное сопровождение и политики контекста на одних и тех же артефактах |
Поддержка языков зависит от поверхности. Сгенерированная матрица возможностей фиксирует поддержку фрагментации, графов, инкрементальных обновлений и декодера C++.
Соберите сайт документации локально с помощью:
python -m pip install -e ".[dev]"
mkdocs serve
git clone https://github.com/sysevol-ai/CodeNib.git
cd CodeNib
make dev
make test
Тестовый набор разделён на уровни: модульные, интеграционные, последовательные интеграционные, ядро, потребитель графа и медленные. См. CI/CD перед запуском уровней, зависящих от учётных данных или инструментария.
CodeNib в настоящее время находится в бета-версии. CLI и формат манифеста пригодны для использования, но
публичные интерфейсы могут измениться до стабильного релиза. Исторические
исследовательские артефакты сохраняют свои опубликованные идентификаторы наборов данных; поддерживаемый
пакет, пространство имён импорта, команды и репозиторий используют CodeNib. См.
Наименование.
Если вы используете CodeNib в своих исследованиях, пожалуйста, цитируйте нашу статью на arXiv:
@misc{yu2026codenibmultiviewdataserving,
title={CodeNib: A Multi-View Data System for Serving Repository Context to Coding Agents},
author={Zhongming Yu and Hengjia Yu and Boqin Yuan and Shuting Zhao and Yizhao Chen and Aryan Dokania and Mihir Jagtap and Jiayu Chang and Yitong Ma and Yash Jayswal and Wentao Ni and Hejia Zhang and Zhaoling Chen and Gangda Deng and Jishen Zhao},
year={2026},
eprint={2607.25431},
archivePrefix={arXiv},
primaryClass={cs.SE},
url={https://arxiv.org/abs/2607.25431},
}
Веб-сайт · Релизы · Журнал изменений · Вклад
CodeNib распространяется под лицензией Apache, версия 2.0.