TREX: 코드를 직접 실행하는 AI 코드 리뷰어
TREX: An AI code reviewer that runs your code
TL;DR Highlight
Greptile가 PR 리뷰 시 코드를 실제로 실행해서 런타임 버그까지 잡아주는 TREX를 공개했다. 정적 분석만으로는 발견할 수 없는 race condition, UI 회귀, 상태 의존 로직 버그까지 커버한다.
Who Should Read
AI 코드 리뷰 도구를 팀에 도입하려는 개발자, 또는 복잡한 코드베이스에서 런타임 버그를 자동으로 탐지하는 파이프라인을 구축하고 싶은 엔지니어링 리드.
Core Mechanics
- 기존 AI 코드 리뷰 도구들은 diff를 '읽기'만 한다. 코드에서 명백하게 드러나는 버그는 잡을 수 있지만, 특정 실행 상태나 타이밍에서만 나타나는 race condition, 페이지 로드 후 발생하는 UI 회귀, 특정 요청이 있어야 재현되는 버그는 코드를 아무리 잘 읽어도 놓친다.
- TREX(Test, Run, Execute)는 이 문제를 해결하기 위해 코드 실행을 리뷰 과정에 직접 통합했다. PR을 리뷰하면서 코드를 실제로 돌려보고, 무엇이 잘못됐는지 결과물(스크린샷, 로그 등)로 보여준다.
- 초기에는 TREX를 Greptile 리뷰어와 완전히 분리된 독립 에이전트로 만들었는데, 이 접근이 실패했다. 두 에이전트가 컨텍스트를 공유하지 않다 보니 코드베이스의 같은 부분을 중복 탐색하고, TREX가 생성하는 테스트가 사용자가 원하는 것과 관련 없는 노이즈가 되는 문제가 생겼다.
- 반대로 두 에이전트를 하나로 합쳤더니 이번엔 단일 에이전트가 서비스 실행, 스크린샷 촬영, 테스트 실행을 동시에 처리하다 컨텍스트 윈도우가 과부하되는 문제가 생겼다.
- 최종 해결책은 '오케스트레이터-서브에이전트' 구조다. Greptile 리뷰어 에이전트가 오케스트레이터 역할을 하면서 diff를 읽고 조사할 이슈를 식별하면, 이슈별로 전용 TREX 서브에이전트를 병렬로 생성한다. TREX 에이전트는 오케스트레이터가 이미 발견한 내용을 상속받아 시작하므로 중복 탐색이 없다.
- auth gate 뒤에 숨겨진 UI 기능 테스트를 예로 들면, 서브에이전트가 환경 세팅, 인증 처리, 피처 플래그 설정을 스스로 해결하고 렌더링된 화면의 스크린샷을 결과물로 가져온다.
- 초기 결과물은 '체크아웃 플로우 테스트 결과 실패'같은 단순 텍스트 bullet point였는데, 이걸로는 컨텍스트가 부족해서 멀티모달 아티팩트(스크린샷, 렌더링된 diff, 실행 로그 등 시각적 증거)를 함께 제공하는 방식으로 개선했다.
- 모델에 종속되지 않는 평가 하네스(evaluation harness)를 따로 구축했다. 특정 모델에 맞게 튜닝하면 다른 모델로 교체할 때 성능이 달라지는 문제를 피하기 위해, 어떤 모델을 써도 일관된 방식으로 성능을 측정할 수 있게 설계했다.
Evidence
- 실제로 유사한 방식을 구현해본 개발자가 '코드 실행 결과로 피드백 루프를 닫는 것이 복잡한 코드베이스에서 에이전트 품질과 신뢰성을 크게 높인다'는 경험을 공유했다. 샌드박스 안에서 브라우저를 직접 조작하거나 API 호출, 비전 모델로 시각적 결과를 확인하는 방식이 효과적이라고 덧붙였다.
- 같은 댓글에서 실제 사례로 앱, API, DB, 큐를 Docker 컨테이너로 전체 스택을 띄운 뒤, 가상 사용자처럼 Google Meet에 연결해 오디오와 비디오를 주입하며 end-to-end 영상통화 플로우를 테스트하는 수준까지 구현했다고 밝혔다. 아직 완벽하진 않지만 AI 에이전트의 가능성에 회의적인 사람이라면 직접 써보길 권한다고 했다.
- 외부 의존성(S3 버킷, Secret Manager, 서드파티 API 등)이 많은 프로젝트에서는 어떻게 동작하는지에 대한 질문이 있었으나, 원문이나 다른 댓글에서 명확한 답변은 나오지 않았다. 실제 도입 시 외부 서비스 모킹 전략이 필요한 부분이다.
- 코드를 실제로 실행하는 구조다 보니 보안 취약점에 대한 우려도 제기됐다. '이걸 언제 누가 뚫을까'라는 댓글이 달렸는데, 악의적인 PR 코드가 실행 환경을 탈출하거나 샌드박스를 악용할 가능성에 대한 우려다.
How to Apply
- 팀에서 런타임에서만 재현되는 버그(race condition, 상태 의존 로직, UI 회귀)를 PR 단계에서 잡지 못해 production으로 넘어가는 경우가 잦다면, Greptile의 TREX 퍼블릭 베타를 도입해 PR 리뷰 파이프라인에 실행 기반 검증을 추가해볼 수 있다.
- 자체 코드 리뷰 에이전트를 구축 중이라면, 오케스트레이터-서브에이전트 패턴을 참고할 수 있다. 리뷰어 에이전트가 이슈를 식별하고, 이슈별로 독립된 서브에이전트를 병렬 생성하되 오케스트레이터의 컨텍스트를 상속시키면 중복 탐색 없이 컨텍스트 과부하도 피할 수 있다.
- 에이전트 결과물을 텍스트 bullet point로만 제공하고 있다면, 스크린샷·실행 로그·diff 렌더링 같은 멀티모달 아티팩트를 함께 제공하도록 개선하면 리뷰어가 문제를 파악하는 속도가 빨라진다.
- 모델을 자주 교체하거나 여러 모델을 비교 평가하는 팀이라면, 특정 모델에 맞게 튜닝된 평가 방식 대신 모델 무관한 평가 하네스를 별도로 구축해두면 모델 교체 시 성능 기준이 흔들리지 않는다.
Terminology
관련 논문
프로덕션 AI 에이전트를 GPT-5.6으로 마이그레이션: 2.2배 빠르고 27% 저렴
마케팅 웹사이트를 자동 생성하는 프로덕션 AI 에이전트를 Claude Opus 4.8에서 GPT-5.6 Sol로 전환한 실전 경험담으로, 단순 모델 교체가 아니라 eval 하네스, 툴 스키마, 캐싱, 추론 리플레이까지 손봐야 했던 과정을 구체적인 수치와 함께 정리했다.
xAI Grok Build CLI가 xAI 서버로 전송하는 데이터: 네트워크 레벨 분석
xAI의 공식 코딩 CLI 도구 Grok Build가 사용자 동의 없이 전체 Git 저장소와 .env 시크릿 파일을 xAI 서버로 업로드한다는 사실이 네트워크 트래픽 분석으로 밝혀졌다.
중요할 때 기억하라: Long-Horizon 에이전트를 위한 Proactive Memory Agent
LLM 에이전트가 긴 작업 중 중요한 정보를 잊어버리는 문제를 별도의 메모리 에이전트가 '적절한 타이밍에' 끼어들어 해결하는 방법
WebSwarm: 깊고 넓은 웹 검색을 위한 재귀적 Multi-Agent Orchestration
복잡한 웹 검색을 재귀적으로 분해하고 각 노드에 적합한 검색 모드를 동적으로 할당하는 멀티에이전트 프레임워크
웹 앱을 리버스 엔지니어링해서 AI Agent 도구로 자동 변환하기
로그인된 웹 앱의 API 호출을 브라우저에서 감시해 자동으로 MCP 도구로 변환하는 에이전트를 만들었다. 소스 코드나 공식 API 문서 없이도 Jira, Spotify 같은 서비스에 AI 어시스턴트를 붙일 수 있다.
FableCut – AI 에이전트가 조작할 수 있는 브라우저 기반 비디오 에디터 (zero deps)
타임라인 전체를 JSON 파일 하나로 표현하고 MCP/REST로 AI 에이전트가 직접 편집할 수 있는 브라우저 비디오 에디터로, Claude 같은 AI가 프롬프트 하나로 영상을 자동 컷편집하고 결과를 실시간으로 UI에 반영해준다.