Codanna
Локальный MCP-сервер и CLI для агентов: семантический поиск по коду, графы вызовов и анализ влияния изменений
Средний риск
Средний уровень ставим, когда инструмент запускает код, ходит в сеть или читает файлы проекта. Перед установкой посмотрите, что именно он делает.
Почему такой уровень
- Читает и индексирует исходный код проекта
- Запускает локальный сервер; при опциональных удаленных эмбеддингах данные уходят во внешний API
Установка
Ручная установка
curl -fsSL --proto '=https' --tlsv1.2 https://install.codanna.sh | shУстановка для macOS, Linux и WSL.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Codanna индексирует репозиторий на диске и отдает агенту связанную картину кода за один вызов: контекст символа, сигнатуру, вызываемые и вызывающие функции и радиус влияния изменения. Он объединяет поиск по символам, семантический поиск, графы вызовов, отслеживание зависимостей и RAG по документам, заменяя цикл grep и чтения файлов одним ответом. Работать можно как постоянным MCP-сервером для длинной сессии или разовыми командами CLI для слэш-команд, хуков и CI. Индекс и модель эмбеддингов живут локально, по умолчанию исходники никуда не уходят. Поддерживает Claude Code, Cursor, Windsurf, Codex, Gemini и другие MCP-клиенты, разбирает пятнадцать языков.
Для кого. Для разработчиков, которым нужно, чтобы агент понимал структуру кода, а не искал по строкам.
Подходит, если
- Нужно понять, где вызывается функция и что сломается при ее правке
- Нужен семантический поиск по смыслу, а не по названию
- Нужны быстрые ответы по коду в слэш-командах и CI без демона
Не подходит, если
- Нужна поддержка языка, которого нет в списке из пятнадцати
- Работаете на Windows и не готовы к экспериментальному статусу
Пример запроса к агенту
Найди, где обрабатываются ошибки, и покажи что сломается при правке этой функцииОграничения
Для модели эмбеддингов нужно около 150 МБ, она скачивается при первом запуске. Сборка из исходников требует Rust 1.85 и на Linux пакетов pkg-config и libssl-dev. Поддержка Windows экспериментальная. Удаленные эмбеддинги через совместимый с OpenAI адрес включаются отдельно и тогда данные уходят во внешний API, ключ хранится только в окружении.
Как отключить. Удалите запись codanna из конфигурации MCP, при желании удалите пакет и папку индекса .codanna в проекте.
MCP
- Транспорт
- stdio, http
- Авторизация
- не нужна
| Переменные окружения | |
|---|---|
| CODANNA_EMBED_API_KEY секрет | Ключ для удаленных эмбеддингов через совместимый с OpenAI адрес, нужен только при опциональном удаленном режиме |
Проверка безопасности
- Читает и индексирует исходный код проекта
- Запускает локальный сервер; при опциональных удаленных эмбеддингах данные уходят во внешний API
Коротко о README
README описывает Codanna как локальный сервер интеллекта кода и CLI для агентов на Rust. Один вызов возвращает символ, документацию, сигнатуру, вызовы в обе стороны и анализ влияния, а не просто совпадения по строкам. Инструменты доступны постоянным MCP-сервером с транспортами stdio, HTTP и HTTPS или разовыми командами CLI. Ставится скриптом установки, через Homebrew, Nix или Cargo, есть плагин для Claude Code с визуализациями x-ray и graph. Поддерживает пятнадцать языков и работает локально. Лицензия Apache 2.0.
Частые вопросы
Уходит ли код в сеть?
По умолчанию нет. Индекс и модель эмбеддингов работают локально, удаленные эмбеддинги через внешний API включаются отдельно.
Обязателен ли постоянный сервер?
Нет. Те же инструменты доступны разовыми командами codanna mcp без демона, это удобно для слэш-команд, хуков и CI.
Похожие
Набор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода
Скиллы Мэтта Покока для инженеров
Skills For Real Engineers
Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура
Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации
Референсные MCP-серверы
Model Context Protocol servers
Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything