octocode

AI Coding ToolsCLITypeScript

★ 933주당 +4조회 4

무엇인가

Octocode는 AI 에이전트와 개발자가 코드를 수정·리뷰·설명하기 전에 근거를 확보하도록 만든 코드 리서치 도구 모음이다. 코드를 생성하거나 편집하는 도구가 아니라, 에이전트가 다음에 무엇을 읽을지 스스로 결정하도록 검색 결과와 후속 단계 힌트를 돌려주는 컨텍스트 수집 계층에 해당한다. 로컬 작업 디렉터리와 GitHub 저장소·PR·커밋·이슈, npm 패키지를 하나의 도구 집합으로 다룬다.

어떻게 동작하나

핵심 실행부는 미리 빌드된 Rust 엔진이다. ripgrep 기반 텍스트 검색, AST 검색, 디렉터리 트리 조회, 지정 라인 범위 읽기, LSP 기반 심볼 탐색을 한 프로세스에서 처리한다. 에이전트는 넓게 검색한 뒤 매치된 라인과 영역만 좁혀 읽는 흐름을 따르며, 각 결과에는 가장 저렴한 후속 호출을 가리키는 힌트와 페이지네이션이 붙는다. 파일 읽기 밀도는 minify 옵션으로 조절한다. symbols는 라인 번호가 붙은 스켈레톤, standard는 주석과 공백을 제거한 형태(기본값), none은 원본 바이트다. concise:true면 경로와 제목만 나열한다. 모델로 전달되는 모든 바이트는 먼저 스캔되어 시크릿이 리댁션된다.

무엇과 다른가

동일한 질문을 gh, gh+Headroom, gh+RTK와 비교한 블라인드 벤치마크에서 정확도는 비슷한 수준을 유지하면서 모델을 통과한 문자 수가 각각 약 2.0배, 2.6배, 3.2배 적었다. 30개 GitHub 질문을 3회 반복하고 gpt-5.5 심사자가 채점한 방식이다. 일반적인 코드 검색 도구가 고정된 결과 덩어리를 한 번에 반환하는 것과 달리, 검색으로 넓게 훑고 좁혀 읽고 의미 단위로 추적하는 단계를 에이전트가 직접 요청한다.

어떻게 쓰나

Node.js 20.12 이상에서 npx octocode로 실행한다. 인자 없이 실행하면 내장 사용법과 전체 도구 카탈로그가 출력되어 MCP 클라이언트나 추가 배선 없이 코딩 에이전트가 그대로 구동할 수 있다. MCP 서버로는 stdio를 통해 도구 카탈로그를 노출하며, npx octocode install 또는 클라이언트별 원클릭 설치로 등록한다. GitHub 토큰과 옵션은 MCP 클라이언트 설정의 env에 넣는다. 로컬 경로는 로컬 도구로, owner/repo[/path] 형태는 GitHub 도구로 라우팅된다. CLI는 JSON을 입력받아 YAML로 출력한다.

전제와 한계

도구 카탈로그는 노출 표면과 플래그에 따라 등록되는 범위가 달라진다. ghListReleases와 ghSearchDiscussions는 MCP에서 ENABLE_RELEASES=1 또는 ENABLE_DISCUSSIONS=1로 카탈로그에 넣은 뒤 ENABLE_TOOLS로 명시 허용해야 등록되고, CLI는 해당 플래그만 있으면 된다. 저장소 클론은 CLI에서 기본 활성, MCP에서는 옵트인이다. minify와 스켈레톤화는 70개 이상 언어를 지원한다. GitHub 인증은 선택 사항이지만 비공개 저장소 접근과 높은 API 레이트 리밋에 필요하다.

관련 논문 1

유사 도구