maka

AI Coding ToolsCLITypeScript

★ 5,284주당 +141조회 4

무엇인가

Maka는 모델과 로컬 머신 사이에서 태스크를 끝까지 수행하는 에이전트 하네스다. 하네스의 성능을 완료한 태스크 수와 그 비용으로만 측정하며, 실행마다 동일 모델·공식 검증기로 돌린 태스크별 기록을 docs/eval/에 함께 배포한다.

어떻게 동작하나

런타임의 중심은 append-only RuntimeEvent 로그다. 모델 메시지, 도구 호출, 권한 결정, 종료가 모두 이벤트로 기록되고 UI, 다음 프롬프트, 크래시 복구는 이 로그의 투영이다. Desktop·TUI·CLI·Eval은 하나의 Runtime Host에 붙는 클라이언트이고, Eval은 실험과 점수만 소유한다. 실행 기록은 runtime.sqlite에 저장되고, API 키는 로컬 평문 파일 credential-vault.json에 두며 렌더러에는 노출되지 않는다. 파일을 쓰거나 셸을 실행하는 도구는 샌드박스 경계를 먼저 통과해야 하고, Grep 도구는 ripgrep을 사용한다.

무엇과 다른가

같은 모델을 쓰는 다른 하네스와 공식 검증기로 비교 측정해 태스크별 결과를 공개한다는 점이 다르다. 상태를 UI가 아니라 로그가 보유하므로 오래된 도구 출력은 다음 프롬프트에서 빠져도 로그에서는 사라지지 않는다. 세션·설정·실행 기록은 로컬에 남고, 모델은 클라우드 API, 로컬 모델, 호환 게이트웨이 중에서 사용자가 연결한다. 모델 카탈로그와 가격 메타데이터는 models.dev에서 가져와 스냅샷으로 커밋한다.

어떻게 쓰나

소스 체크아웃에서 npm run dev로 Desktop 개발 환경을 HMR과 함께 띄운다. 첫 실행에서는 Settings → Models에서 API·로컬 모델·계정 연결을 추가하고 테스트한 뒤 기본 모델을 지정한다. 터미널에서는 TUI를 실행하거나 한 Turn을 돌리고, /graph on, /graph off, /graph <...>로 Graph 실행을 제어한다. 비대화형 --graph 실행은 durable Graph가 끝날 때까지 기다린 뒤 supervisor 출력을 인쇄한다.

전제와 한계

Node.js 22.19 이상, npm 11, Git, ripgrep이 필요하다. Peer와 Peer Mesh 개발에는 Rust stable 1.98 이상과 플랫폼 링커가 추가로 필요하다. 아직 Apache 릴리스가 없어 서명된 소스 아카이브가 없고, 데스크톱 나이틀리는 매일 main에서 빌드되는 비서명 프리뷰다. 이전 JSONL 트랜스크립트와 Electron safeStorage 자격증명 파일은 가져오지 않으므로 업그레이드한 워크스페이스는 빈 스레드를 보일 수 있다. 중단된 턴 재개는 기본으로 꺼져 있고 MAKA_RUNTIME_SAFE_BOUNDARY_RESUME=1을 설정해야 Desktop Safe resume, CLI /resume, 시작 시 자동 재개가 동작한다. Graph 실행은 소스 프로젝트가 깨끗한 Git 워크트리여야 한다.

관련 논문 3

유사 도구