엔지니어링2026-01-18 게시·8분 읽기
CodeFlux: 당신의 리포를 존중하는 오프라인 페어 프로그래머
로컬에서 도는 7B급 코드 모델 + 프로젝트 인지 retrieval. 왜 \"큰 모델 + 맥락 없음\"보다 \"작은 모델 + 올바른 맥락\"이 이기는가.
명제
7B급 코드 모델을 로컬에서 실행하고 당신 리포의 적절한 슬라이스를 컨텍스트로 주면, 당신 코드베이스를 전혀 모르는 프런티어급 클라우드 모델보다 더 유용하다.
이것은 벤치마크 점수에 대한 주장이 아니다. "당신이 실제로 수락하는 보완"에 대한 주장이다. CodeFlux는 이 명제 위에 세워졌다.
아키텍처
세 개의 온디바이스 컴포넌트가 협력:
- 모델. 양자화된 7B 코드 모델 (Qwen-2.5-Coder, DeepSeek-Coder-V2-Lite, StarCoder2 파생을 평가; 플랫폼별로 출시 가능한 가장 빠른 4비트 변종). Apple silicon은 MLX, PC/Linux는 llama.cpp, Windows ARM은 ONNX Runtime.
- 리포 인덱스. 리포의 로컬 벡터 인덱스, 파일 저장 시 갱신. 세 입자도로 임베딩: 파일, 심볼, 라인 범위. 인덱스는 리포 내
.codeflux/안 단일 SQLite 파일. - Retrieval 레이어. 당신이 칠 때 주변 코드, 파일 import, 인근 심볼을 보고 top-K 가장 관련 있는 다른 파일을 끌어와 프롬프트에 이어 붙이고, 간다.
왜 코드는 로컬이어야 하는가
- 리포는 당신이 가진 가장 민감한 것이다. 그 전부를 볼 자격이 있는 유일한 모델은 당신 머신 안에서 도는 것뿐이다.
- 당신의 코드는 또한 이 모델이 받게 될 가장 이디오매틱한 입력이다. 클라우드 모델은 GitHub 평균 스타일로 정규화된다; 당신 리포에 조건화된 로컬 모델은 당신과 맞는 코드를 쓴다.
- 인라인 컴플리션의 지연은 수백 밀리초 수준에서 중요하다. 클라우드 왕복은 키 입력마다 무는 세금이다.
CodeFlux가 오늘 하는 것
- 취소 가능한 인라인 컴플리션. 계속 치면 in-flight 추론은 취소·재시작. 모델이 에디터를 막지 않는다.
- 리포 기반 채팅. "auth 미들웨어 어디 있어?"라 물으면 관련 파일을 retrieve한 뒤 라인 번호를 인용해 답한다.
- 선택 영역 편집. 함수를 하이라이트, 리팩터 요청, 일반 리뷰 경험으로 diff가 등장. 적용·기각·재편집 가능.
- 요청 시 테스트. "이 파일 테스트 생성"이 프로젝트의 기존 테스트 프레임워크에 맞춘 후보 테스트 파일을 만들어내며 import는 올바르게 해결.
CodeFlux가 하지 않는 것
- 자율 에이전트 없음. 당신 리포에서 리뷰 없이 동작 취하는 장기 코딩 에이전트는 없다. 신뢰성이 그 값을 할 때 재고한다.
- 무엇을 묻고 무엇을 제안했는지 텔레메트리 없음. 전혀 없음. 개발자 툴에서 가장 거부하기 어려운 유혹이자, 우리가 가장 단호히 거부하기로 한 것.
- 어떤 기능도 클라우드에 의존하지 않음. 네트워크 단절로 그 무엇도 저하되지 않는다.
솔직한 한계
- 7B 코드 모델은 가장 어려운 추론 중심 리팩터에서는 프런티어 200B+ 모델을 따라잡지 못한다. 익명화된 스니펫을 당신이 고른 클라우드 모델에 보내는 원탭 escape를 제공한다. 제공자, 익명화 설정 모두 당신 결정.
- 거대 monorepo는 초기 인덱싱이 느리다. 머신별 캐시를 두고 git-ignore된
.codeflux/레이아웃을 출시해 재오픈은 즉시.
CodeFlux는 리더보드 1위 모델이 아니다. 당신 코드에서 "수락률"이 가장 높은 모델이다 — 실제로 당신 코드를 읽었기 때문에.