codepilot
CodePilot-Agent
Введите URL GitHub-репозитория — на выходе вы получите три вещи: архитектурный отчёт с привязкой каждого вывода к конкретному файлу, однораундовый code Q&A по этому репозиторию и code review по трём категориям проверок: структура / обработка ошибок / безопасность. Функция анализа репозитория также предоставляется наружу в виде MCP server, его might напрямую вызывать клиенты вроде Claude Code или Cursor.
Чем он отличается от аналовов
Каждый вывод в отчоте обяан сводиться к конктерному пути файла, и это проверяет программой, а не огранинием в пrompte. Указанный путь должен реально существововать, номер строки должен находиться в пределах действительного числа строк файла. Ее выводы, не прошедшие проверку, отбрасываются и учитываются в разделопуском отчо. Поэтому здесь не появится фраз вроде «проектом использет многослойную архитекттуру, структура кода понятна» — таке можно сказать о любом репозитории.
Related MCP server: github-repo-intel-mcp
Архитектура
仓库地址 → clone 与语言识别 → 静态解析层(tree-sitter)
↓
结构骨架:符号表 · 依赖图 · 模块聚类 · 入口点
↓
┌─────────────────────┼─────────────────────┐
↓ ↓ ↓
Planner 定深挖范围 Reviewer 三类检查 切块与向量索引
↓ ↓ ↓
模块子 Agent 并行分析 评审发现 单轮代码问答
↓
汇总 + 引用校验 → 架构报告Определённые части получаются определенёными инструментами: деерево файлов, граф импортов, кластеризация модулей, точки входы, распознание техностека — всё это выдача статического разбораPare, без LLM. Только то, что требует суждений, передаётся агентам — Planner решает, какие модули копать глубже, модульные субагенты читают код, candidate коды Reviewer, локализованных через AST, отдаются на решение моделе.
RAG обслуживает только цепочкий Q&A. Вопросы об архитуктуре (сколько слоёв, кто от коже зависит, где определяется входа) — это графе вопросы, их не нельзя отвить через подобие ембеддинго.
Быстрый старт
С Docker (рекомендуемая)
cp .env.example .env
# 编辑 .env,至少填 DEEPSEEK_API_KEY
docker compose up --buildОткройте http://localhost.
Оба порта привязаны только к 127.0.0.1 — на бэкенде нет слóя аутентификации (сосзнатная решение для локального однопользовательского запуска), а он может клонировать любый репозиторий и тратW. Если хотите доступ к репозиторию, нужнto добавить аутентификацию, не менτον просто на 0.0.0.0.
Индексный кэш хранится в именоном томе codepilot-data, Heсхзается после перезапуска контейнера, повторный анализ того же репозитория возьмёт из кэша и пропустительный векторизацию.
Локальная разработка
# 后端
pip install -e ".[dev]"
python -m uvicorn backend.main:get_app --factory --port 8000
# 前端(另开一个终端)
cd frontend && npm install && npm run devФронтенд на http://localhost:5173, проси Vite переннаправляет /api на 8000.
Конфигурация
Скопируйте .env.example в .env. Обязателен только один пунк:
变量 | Значение |
| API-ключ для LLM. Название переменной сохранено от DeepSeeK, но подойдёт любой endoint, совместимый с протоколом OpenAI |
Частье настраиваемые:
变量 | По умолчанию | Значение |
|
| OpenAI-совместимый endoint |
| — | Категоготя фан-out (частье, низкое суждиение): анализ модулей |
| — | Категoria сумарникая (режéc тость э, требует суждений): Planner, решenable по ревью, свод отчет |
|
| С провайдером |
|
| Число одновременных LLM-запросов в трат. Черес промежуточный шлюз слишком высокая конвеurrency вызывает таймаут на верный стороне |
|
| входной порог. В TypeScript проектх число файлов по природе выше, чем в Python-проекте того же размера, можн придётся увелиить |
.env не хранится в версии конльном репозитории и не попадает в образ — .dockerignore исключает его, а compose добавляет значения через env_file в время выпол нения.
docker compose configas a видит секреты записью. При разборе конфи workers compose подставляет значения изenv_file, так что в выводе этой команды будет настоящий лключ. когда решаете проблему с конфигура may not не вставляйте его в issue, журнал или чат. Что посмотреть структуру без вывода значений, отфильтруйте блок с переменными окружения а потом смотр рите.
MCP server
не в контейнере (он работает по транспорту stdio, клиент сам запускает его процес). Способ настройки и список инструментов — backend/mcp_server/README.md.
Минимальная настрой (.mcp.json для Claude Code):
{
"mcpServers": {
"codepilot": {
"command": "python",
"args": ["-m", "backend.mcp_server.server"],
"cwd": "/绝对路径/CodePilot-Agent"
}
}
}Инструменты читают локальные дан уже пронализированных репозиториев, поэтому сначала отправите репозиторий на анализ через интерфейс или API.
Раз работ
python -m pytest # 后端测试
python -m mypy backend # 类型检查
cd frontend && npm test # 前端测试
cd frontend && npm run build # 前端构建(含类型检查)Известные ограничения
Это осознанные решения, а не ниски:
Символьный разбор подерживается только Python и TypeScript. Файлы других языков влючаются в девево файлов и соответют в статистиकу размера, но не заносятся в табл. The report missing section lists personal no.
find_references — это текстовый поиск, ограниченный графом зависимостей, а не полноценный анализ исходных ссылок. Слóa разбора не извлекает точкивызовов, поэтому сначала он не индексирует символ table no. file define, а потом поят текстовый поиск по файлам, которые его импортают, — это гораздо точнее grep по всему репозиторию, но даёт совпадения с одноименными локальными переменными and comments. Инструмент содержит это примечание в ответе.
«Мёртвый код» не выделяется в отдельные находки. Критерий на уровне файл (нулеевая входящая degree) и не входная точка на базовых репозиториях почти 100% false positive — вызывающие кода тестов, конфигов, загрустителей находится за пределами репозито. Чтобы плноценнно это дела, нужен символьный анализ ссылок. Структурная проверка в ревьу даёт счётчики, но не сравформулируемый список.
Q&A однораундовый — контекст не сохраняется, query rewriting нет.
** нет слóя авторизации.** Backend API и MCP server предполагают, что работает локально для одного пользователя.
** Состояние задач анализа г on in memory.** After restart of service, unfinished tasks are lost; completed index cache remains, and re-submitting the same repo to hits in seconds. Also because backend always exactly one worker.
License
Не указана.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Ask any GitHub repository a question. Get source-backed answers.
Code intelligence for LLMs. Analyze, search, and retrieve code from any public git repository.
Screens public GitHub repos and PRs to generate risk maps, findings, and merge-readiness signals.
Hosted code graph over MCP: exact callers, dependencies, and cross-repo blast radius for AI agents.
Related MCP Servers
- FlicenseNot gradedqualityCmaintenanceEnables semantic search and AI-powered Q&A over ingested GitHub documentation repositories via MCP tools.
- AlicenseNot gradedqualityCmaintenanceProvides AI coding agents with structured intelligence about any GitHub repository including overview, PRs, contributors, hot files, CI status, and dependencies via a hosted MCP endpoint.34MIT
- FlicenseNot gradedqualityCmaintenanceEnables natural-language analysis of GitHub repositories by exposing repository metadata, source code retrieval, search, and file reading as MCP tools, with answers grounded in the actual repository content.
- AlicenseNot gradedqualityCmaintenanceEnables self-hosted, read-only remote interaction with GitHub repositories, allowing listing repositories, searching code, and inspecting commits, pull requests, issues, and diffs via authenticated MCP clients.118MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ronronner02/codepilot-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server