codepilot
CodePilot-Agent
GitHub 저장소 주소를 입력하면 세 가지 산출물을 만들어 냅니다: 특정 파일까지 거슬러 올라갈 수 있는 아키텍처 분석 보고서, 해당 저장소에 대한 단일 턴 코드 Q&A, 그리고 구조/오류 처리/보안 세 가지 분류로 검사하는 코드 리뷰입니다. 저장소 분석 기능은 동시에 MCP server 형태로 외부에 노출되어 Claude Code, Cursor 같은 클라이언트에서 직접 호출할 수 있습니다.
이 도구가 다른 도구들과 다른 점
보고서의 모든 결론은 파일 경로에 매핑되어야 하며, 이는 프롬프트 제약이 아니라 프로그램에 의해 검증됩니다 — 참조된 경로는 실제로 존재해야 하고, 줄 번호는 파일의 실제 줄 수 안에 있어야 합니다. 검증을 통과하지 못하는 결론은 버려지고 보고서의 누락 설명에 기록됩니다. 따라서 "이 프로젝트는 계층형 아키텍처를 채택하고 코드 구조가 명확하다" 같은 어떤 저장소에 내놓아도 성립하는 문장은 나오지 않습니다.
Related MCP server: github-repo-intel-mcp
아키텍처
仓库地址 → clone 与语言识别 → 静态解析层(tree-sitter)
↓
结构骨架:符号表 · 依赖图 · 模块聚类 · 入口点
↓
┌─────────────────────┼─────────────────────┐
↓ ↓ ↓
Planner 定深挖范围 Reviewer 三类检查 切块与向量索引
↓ ↓ ↓
模块子 Agent 并行分析 评审发现 单轮代码问答
↓
汇总 + 引用校验 → 架构报告확정적인 부분은 확정적인 수단으로 처리합니다: 파일 트리, import 의존 그래프, 모듈 클러스터링, 엔트리 포인트, 기술 스택 식별은 모두 정적 파싱으로 만들어 내며 LLM을 사용하지 않습니다. 판단이 필요한 부분에만 Agent가 투입됩니다 — Planner가 어떤 모듈을 깊게 분석한지 결정하고, 모듈 하위 Agent는 도구를 들고 코드를 읽습니다. Reviewer의 후보 지점은 AST에 의해 위치가 정해진 뒤 모델이 취사선택합니다.
RAG는 오직 Q&A 파이프라인에만 사용됩니다. 아키텍처 문제(몇 계층인지, 누가 누구에게 의존하는지, 엔트리가 어디인지)는 그래프 문제이며, 임베딩 유사도로는 답을 구할 수 없습니다.
빠른 시작
Docker 사용 (권장)
cp .env.example .env
# 编辑 .env,至少填 DEEPSEEK_API_KEY
docker compose up --buildhttp://localhost를 엽니다.
두 포트 모두 127.0.0.1에만 바인딩됩니다 — 백엔드에는 인증 층가이 없으며(단일 사용자 지컬 실주을 위용 의오적 결자) 임의 저장소를 클본할 수고 LLM 크레딧을 소비할 수 있기 때문입니다. 다른 기기에서 접속하려면 인증을 직접 계층을 직접 추가해야지 0.0.0.0으로 변경하면 안 됩니다.
인덱스 캐시는 named volume codepilot-data에 저장됩니다. 컨테이너 재시작 후에도 유지되며, 같은 저장소를 두 번째 분석하게 될 때 캐시에 적중하여 벡터화를 건너 띱니다.
로컬 개발
# 后端
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의 proxy가 /api 요청을 8000 포트로 전달합니다.
설정
.env.example를 복사해서 .env로 만드세요. 필수 항목은 하나뿐입니다
변수 | 설명 |
| LLM의 API key입니다. 변수명은 DeepSeek를 따르고 있지만, 엔드포인트가 OpenAI 프로토콜과 호환되어야 합니다. |
자주 조정하는 몇 가지:
변수 | 기본값 | 설명 |
|
| OpenAI 호환 엔드포인트 |
| — | 팬 아웃(고빈도·저판단): 모듈 분석 |
| — | 집약(저빈도·고판단): Planner, 리뷰 판단, 보고서 집약 |
|
|
|
|
| 동시에진행되는 LLM 요청 수. 중전 게트을 거치시 동시성이 지저면 업트림 타임아우트를 유발할 지 |
|
| 준입 임계값. TS 프로젝트는 동일 규모의 Python 프로젝트보다 파일 개수가 자연히 많으므로 이 값을 높여야 할 수 있습니다 |
.env는 버전 관리에 들어가지 않고, 이미지에도 넣지 않습니다 — .dockerignore가 이를 배제하며, compose는 env_file을 통해 럼타임에 주입합니다.
docker compose config는 key를 평문으로 출력합니다. 구현 방식이 설정 파싱 시env_file의 값을 미리 펼치기 때문에, 해당 명령을 실행하는 출력에는 실제 key가 포함됩니다 — 설정 문제를 디버깅할 때 이 내용을 issue나 로그, 채팅에 붙여 넣지 마세요. 구조만 확인하고 값은 노출하지 않으려면, 환경 변수 부분을 필터링 하 고 봐야 합니다.
MCP server
컨테이너에 포함되지 않습니다 (stdio 전송을 사용하며, 클라이언트가 스스로 자식 프로세스를 기직합니다). 설정 방식과 도구 목록은 backend/mcp_server/RESEADME.md를 참 고하세요.
최소 설저(Claude Code의 .mcp.json):
{
"mcpServers": {
"codepilot": {
"command": "python",
"args": ["-m", "backend.mcp_server.server"],
"cwd": "/绝对路径/CodePilot-Agent"
}
}
}도구는 분석된 저장소의 로컬 데이터를 읽습니다. 따라서 먼저 UI 또는 API 로 분 석 요청을 하세요.
개발
python -m pytest # 后端测试
python -m mypy backend # 类型检查
cd frontend && npm test # 前端测试
cd frontend && npm run build # 前端构建(含类型检查)알려진 경계
이 것은 의도적인 트레이트오프지 오 용해할 사항이 아닙니다:
기호 수준 파서은 Python과 TTypeScript만 지원합니다. 다른 언어의 파일은 파일 트리와 규모 통계에 포함되지만, 심в볼 테이블에 들어가거나 의존 그래프를 연결되지 않지도 청크화에도 포함되지 않습니다. 보고서의 누략 섵분에 그것 파일이 리스트됩니다.
find_references는 의존 그래프를 경계로 가진 텍스트 입치이며, 참조 해석이 아닙니다. 해석 계층은 호출 지점을 추출하지 않기 때문예, 심볼 테이블에서 정의 파일을 지정한 뒤 그 파일을 import하는 파일에서 텍스트를 검색합니다 — 저장소 곳곳을 grep하는 것보다 실제로 훨씬 정확하지만, 같은 이름의 로컬 변수와 주석에도 매칭될 수 있습니다. 이 조건은 도구가 돌려보내는 결과에 포함됩니다.
죽은 코든를 발견으로 출력하지 않습니다. 파일 수준의 기준(차입 차수 0이지만 입구히 아님)은 벤치의 저장소에서 오탐율이 100%에 가침습니다 — 테스트, 설저, 컬체인 출입의 호출자 예 있는 소는 의미 외부 이기 때문입니다. 정말 수행려면 심볼 수준의 참조 분석가 필요합니다. 리의 구조 검사에는 숫자만 제공하며하나씩 리스트하지 않습니다.
Q&A는 satellite-oriented입니다. 문맥을 유지하지 않고, 쿼리를 재작성하지 않습니다.
인증 수준이 없습니다. 백엔드 API와 MCP server 모두 단일 사용자가 로컬에서 사용한다고 가정합니다.
분석 작업 상태는 프로세스 메모리 안에 있습니다. 서버를 재시작하면 미완된 작업은 사라집니다. 완료된 인덱스 캐시는 남아 있으며, 동일 저장소를 다시 제출하면 즉저 히입니다. 이것이 백엔드 작동을 단일 worker로 고정하는 이유로 합니다.
라이선스
지정되지 않았습니다.
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