repowise-dev/repowise
Python0 / 0
repowise는 로컬에서 실행되는 코드베이스 인텔리전스 툴로, 25개 결정론적 마커로 파일별 결함 위험을 예측하고 그래프 기반 리팩터링 계획과 9개의 MCP 도구로 에이전트 비용을 크게 줄인다.
TL;DR
repowise는 로컬에 인덱스를 생성해 호출 그래프·깃 이력·자율 문서·아키텍처 의사결정·코드 헬스의 다섯 계층을 결합하는 코드베이스 인텔리전스 툴이다. 25개 결정론적 마커로 파일별 결함 위험을 1–10으로 평가하고 호출 그래프·공변성 정보를 이용해 구체적인 리팩터링 계획을 자동으로 산출하며, 이 과정은 기본 모드에서 LLM 호출 없이 동작해 보안과 재현성을 확보한다. MCP 도구 9개는 에이전트 질의에서 파일 읽기와 툴 호출을 줄여 컨텍스트 로딩 토큰을 최대 −96%까지 절감하는 것으로 보고되었으며, 코드 헬스 ROC AUC 0.74와 같은 공개 벤치마크로 결함 예측 성능을 입증했다. 단점으로는 문서 레이어의 완전성은 선택적 LLM 생성에 의존할 수 있으며, 온보딩 시 처음 인덱스 생성에 한 번의 비용과 파일형 규모에 따른 초기 시간이 필요하다.
핵심 포인트
- 결함 예측 점수와 그에 대한 실행 가능한 리팩터링 계획을 동일한 인덱스에서 함께 제공한다. 점수는 25개 결정론적 마커로 계산되어 결함 레이블에 대해 보정되며, 계획은 호출 그래프와 공변성 데이터를 이용해 블래스트 반경까지 명시한다. 이 조합은 단순한 파일 위험 표시에 그치지 않고 에이전트가 즉시 적용 가능한 변경 집합을 제공한다.
- 에이전트 친화적 MCP 툴셋을 통해 문맥 로딩과 질의 횟수를 획기적으로 줄인다. get_context, get_answer, get_health 같은 태스크 중심의 도구들은 다수의 파일과 심볼을 한 번의 호출로 묶어 반환해 에이전트가 반복으로 파일을 읽는 비용을 줄였고, 벤치마크에서 토큰·파일 읽기·툴 호출 감소가 보고되었다. 로컬 MCP 서버와 VS Code 확장이 동일한 인덱스를 재사용해 인간 개발자와 에이전트가 동일한 신호 집합을 공유한다.
- LLM 의존을 최소화한 설계로 안전성과 온프레미스 운영을 지원한다. 인덱싱과 코드 헬스 산출은 기본적으로 LLM 호출 없이 결정론적으로 이루어지며, 문서 생성 단계만 선택적으로 LLM을 사용해 비대칭적 외부 의존을 허용한다. 이 구조는 완전 오프라인 환경이나 보안 규제가 엄격한 조직에서 자기 호스팅으로 운영하기에 적합하다.
- 인덱싱을 한 번 수행해 5개 인텔리전스 계층(그래프·깃·문서·결정·코드 헬스)을 구축하고 이 인덱스를 MCP 도구와 대시보드에서 재사용할 수 있다. 인덱스는 tree-sitter와 git 메타데이터를 사용해 파일·심볼 수준의 호출 그래프와 깃 이력을 결합하며, 커밋 단위로 동기화해 변경된 부분만 재생성한다. 인덱싱 경로는 결정론적이고 기본 모드에서 LLM 호출을 전혀 사용하지 않는다.
벤치마크
| 벤치마크 | 지표 | 값 | 비교 |
|---|---|---|---|
| Code health ROC AUC | ROC AUC | 0.74 (cross-project mean, 95% CI 0.68–0.79) | — |
| Recall @ 20%-of-lines budget | recall | 0.173 | CodeScene: 0.074 |
| Popt (effort-aware ranking) | Popt | 0.607 | CodeScene: 0.462 |
| Context tokens to load commit | tokens | 2,391 vs 64,039 (~27× fewer, −96%) | — |
| Distill per-command token savings | saved % | pytest -q: 61% saved; git log -50: 89% saved; git diff (30 commits): 86% saved | — |
이미지 분석



5.7k
STARS
591
FORKS
+215
TRENDING
0
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.