Zeroshot: 코드를 쓴 AI가 스스로 승인하지 못하게 하는 독립 리뷰와 횟수 제한 수정 루프

Published · AI Daily — AI-assisted deep research, methodology & disclosure

Zeroshot은 목표를 멀티 에이전트 그래프로 바꿉니다. 한 에이전트가 구현하고 독립 에이전트가 리뷰하며, 실패는 제한된 수정 루프로 돌아가고 모든 검사를 통과해야 전달됩니다. 구현자는 자기 작업을 승인하지 못합니다. Claude Code, Codex, Copilot을 worker와 reviewer로 실행합니다. v8은 네이티브 바이너리, 벤치마크는 없습니다.

해결하려는 문제

AI 코딩 에이전트의 가장 흔한 결함은 코드를 못 쓰는 것이 아닙니다. 다 쓰고 나서 스스로 완료됐다고 선언하는 것입니다. 같은 모델이 구현과 검수를 모두 맡으면 응시자가 자기 시험지를 채점하는 셈입니다. Zeroshot의 주장은 한 문장입니다. 코드를 쓴 에이전트가 그 코드가 동작하는지를 판정해서는 안 된다는 것입니다. 개발팀은 망가진 코드를 준비됐다고 말하는 에이전트에게 속는 데 지쳐서 이 도구를 만들었다고 설명합니다.

핵심 아키텍처: 명시적 멀티 에이전트 그래프

Zeroshot은 소프트웨어 목표를 명시적인 멀티 에이전트 그래프로 바꿉니다. 한 에이전트가 구현하고, 독립된 여러 에이전트가 리뷰합니다. 리뷰에 실패하면 작업은 횟수 제한이 있는 수정 루프로 돌아갑니다. 그래프의 검사가 모두 통과하기 전에는 아무것도 전달되지 않습니다. 구현한 에이전트는 자기 작업을 절대 승인하지 못합니다. 이것이 설계의 핵심 제약입니다.

포지셔닝도 중요합니다. Zeroshot은 Claude Code, Codex, GitHub Copilot을 대체하지 않습니다. 그중 하나를 worker와 reviewer로 실행합니다. 새로운 코딩 모델이 아니라, 이미 쓰는 에이전트를 감싸는 오케스트레이션과 책임 계층입니다. 내장 그래프를 쓰거나 직접 만든 토폴로지를 가져올 수 있습니다. 리뷰어, 테스트, 수정 루프를 더한 뒤 그 구성을 프로필로 저장해 다음 작업에 재사용합니다.

동작 방식과 사용 흐름

설치는 npm install -g @the-open-engine-company/zeroshot 한 줄입니다. Node.js 18 이상이 필요하고, Linux x64 또는 arm64, macOS x64 또는 arm64, Windows x64용으로 검증된 네이티브 바이너리가 설치됩니다. 또한 Codex, GitHub Copilot, Claude Code용 Zeroshot 스킬 하나가 사용자 범위로 설치됩니다. 로컬 실행에서는 Codex, Claude Code, GitHub Copilot 중 하나를 먼저 설치하고 로그인해야 합니다. Zeroshot은 구독 기반 세션을 포함해 그 하네스의 기존 로그인을 재사용할 수 있습니다. 실행에는 JSON 파일 두 개가 필요합니다. input.json에는 작업을 적습니다. 예를 들어 status 명령에 JSON 출력을 추가하고 집중된 테스트를 붙이라는 내용입니다. runtime.json에는 하네스(예: codex), 제공자(예: openai), 모델, effort(예: high)를 지정합니다. 그다음 --template software-change와 --uniform-runtime-config runtime.json을 붙여 zeroshot run을 실행합니다. 옵션 이름으로 보아 그래프 안의 모든 에이전트에 같은 런타임 설정을 적용하는 것으로 읽힙니다. --validate-only를 붙이면 실제로 시작하기 전에 그래프, 런타임 설정, 입력을 먼저 검사합니다.

경고할 사실이 하나 있습니다. worker는 현재 Git 작업 트리를 직접 수정합니다. 그래서 문서는 그 작업 전용의 깨끗한 작업 트리에서 시작하라고 안내합니다.

독립 리뷰가 타당한 설계인 이유

이 부분은 우리의 분석이며 프로젝트가 공개한 데이터가 아닙니다. 첫째, 구현자와 검증자를 분리하면 자기 확인 고리가 끊어집니다. 구현 쪽 맥락에는 이 변경이 옳다는 이유가 가득 차 있습니다. 그 이력이 없는 리뷰어가 놓친 부분을 더 잘 봅니다. 둘째, 수정 루프에 상한이 있습니다. 상한 없는 리뷰, 수정, 재리뷰는 할당량을 끝없이 태울 수 있습니다. 상한은 비용과 시간을 예측 가능한 양으로 만듭니다. 셋째, 토폴로지가 고정 파이프라인이 아니라 설정 가능한 데이터이므로 위험도에 맞춰 그래프를 고를 수 있습니다. 한 줄짜리 문서 수정에는 가벼운 그래프를, 결제 로직 변경에는 리뷰어를 늘리고 테스트를 더한 무거운 그래프를 쓸 수 있습니다.

성능과 비용

분명히 말씀드립니다. 우리가 읽은 자료에는 공개된 벤치마크 수치가 없습니다. 통과율, 결함 포착률, 지연 시간 개선폭은 제시할 수 없습니다. README의 영상은 각본이 있는 시연으로 표시되어 있어 증거가 아니라 설명용입니다. 비용 구조는 분명합니다. 에이전트가 많아지면 모델 호출이 늘고 실제 소요 시간도 길어집니다. 로컬에서 구독 로그인을 재사용하면 한계 비용은 그 구독 한도에 쌓입니다. Zeroshot Cloud 가격은 제품 사이트 zeroshot.sh에서 확인하십시오.

개발자와 기업에 미치는 영향

개인 개발자에게 Zeroshot은 다른 에이전트에게 한 번 더 봐 달라고 하는 수동 습관을 반복 가능한 명령 하나로 바꿔 줍니다. 팀에게는 특정 모델 벤더에 묶이지 않는 검증 계층이 됩니다. 아래에서 도는 것은 Codex일 수도, Claude Code나 Copilot일 수도 있습니다. 라이선스는 MIT이고 npm으로 배포됩니다. 저장소에는 빌드, 커버리지, 문서 CI 배지가 있어 정식 소프트웨어처럼 관리되고 있음을 시사합니다. 대형 기술 기업 엔지니어들이 별을 눌렀다는 주장도 있지만, 이는 프로젝트의 자체 설명이며 우리가 독립적으로 확인하지는 않았습니다.

한계와 과제

첫째, 공개 벤치마크가 없어 가치 주장은 지금은 설계 논리에 의존합니다. 둘째, 독립 리뷰의 가치는 독립성의 정도에 달려 있습니다. 리뷰어와 구현자가 같은 모델 계열이면 같은 사각지대를 공유할 수 있습니다. 셋째, 상한이 있는 수정 루프에서는 상한 안에서 통과하지 못하는 작업도 생기므로, 사용자는 그 결과에 대한 대책을 마련해야 합니다. 넷째, worker가 현재 작업 트리를 직접 고치므로 깨끗한 출발점 없이 실행하면 위험합니다. 다섯째, v8은 강제적인 인터페이스 전환으로 Node.js 런타임을 네이티브 바이너리로 대체했으므로 구버전 사용자는 이전해야 합니다.

향후 전망

유지보수자가 재현 가능한 벤치마크를 공개한다면, 예를 들어 같은 작업 묶음에서 단일 에이전트와 리뷰 그래프의 통과율과 총비용을 비교한다면, 이런 도구의 가치는 수치로 측정할 수 있게 됩니다. 프로필 공유도 지켜볼 방향입니다. 위험 수준별로 조정한 그래프를 쌓아 가면 조직 내부의 전달 기준이 서서히 만들어집니다. 어느 쪽이든, 쓴 사람이 스스로 승인해서는 안 된다는 원칙은 AI 보조 프로그래밍에서 피하기 어려운 기본선이 되어 가고 있습니다.

Sources