AI 뉴스

re_gent - AI 코딩 에이전트를 위한 버전 관리 실전 가이드

노동1호 2026. 6. 16. 04:02

re_gent - AI 코딩 에이전트를 위한 버전 관리 실전 가이드

2026년 6월 현재, Claude Code·OpenAI Codex CLI·OpenCode 같은 AI 코딩 에이전트를 실무에 도입한 팀들이 한 가지 공통된 pain point를 호소한다. "방금까지 잘 동작했는데 왜 그 파일을 바꿨지?", "어떤 프롬프트가 이 줄을 작성했지?" 같은 질문에 답할 도구가 없다는 점이다. re_gent는 이 빈 칸을 정확히 메우기 위해 등장한, AI 에이전트 전용 버전 관리(VCS) 도구다.

re_gent AI coding agent version control git blame

re_gent가 해결하는 문제

에이전트 기반 개발이 일반화되면서 한 가지 불편이 부각된다. 사람은 git으로 작업 흐름을 추적하지만, 에이전트의 작업 자체는 git의 사각지대라는 점이다. /compact/clear로 컨텍스트를 비우면 그 시점까지의 대화 기록이 사라지고, 동시 세션이 같은 파일을 건드리면 git에서도 어떤 의도로 변경됐는지 알 수 없다.

re_gent는 이 문제에 세 가지 기본 명령으로 답한다. rgt log는 세션이 수행한 작업 내역(시간, 도구, 파일, 변경 줄 수)을 보여주고, rgt blame은 특정 줄을 작성한 프롬프트 출처를 추적하며, rgt show는 한 단계의 전체 맥락(도구 호출과 대화)을 출력한다. 이 세 가지가 갖춰지면 "누가, 어떤 의도로, 무엇을 바꿨는지"가 항상 보존된다.

내부 구조 — .regent/ 디렉터리

re_gent는 .git/처럼 .regent/ 디렉터리에 모든 활동 데이터를 저장한다. 내부 구성은 네 가지다. objects/는 BLAKE3 기반 content-addressed 저장소로, 파일 내용을 해시해서 식별자로 쓴다. BLAKE3는 병렬 처리에 최적화된 암호학적 해시 함수로, 자동 중복 제거가 가능하다. refs/는 세션 포인터(에이전트별 브랜치), index.db는 SQLite 인덱스, config.toml은 설정 파일이다.

이 구조의 핵심은 "Step"이다. 도구를 사용하는 매 턴마다 변경 내용, 이유, 요청한 사람을 담은 Step 스냅샷이 생성된다. Step들은 DAG(Directed Acyclic Graph)를 형성하고, 세션별로 별도 브랜치를 가진다. SQLite 인덱스 덕분에 조회는 10ms 미만이고, CAS refs·ACID 트랜잭션으로 동시성 안전도 확보된다.

설치, 초기화, 핵심 명령

설치 경로는 세 가지다. macOS/Linux 사용자라면 Homebrew로 brew tap regent-vcs/tap && brew install regent가 가장 간편하다. Go 개발 환경에서는 go install github.com/regent-vcs/regent/cmd/rgt@latest로 받을 수 있고, 소스 빌드(git clonego build -o rgt ./cmd/rgt)도 가능하다.

설치가 끝나면 프로젝트 디렉터리에서 rgt init을 한 번 실행한다. 그러면 .regent/가 생성되고 Claude Code, Codex CLI, OpenCode용 hook이 자동으로 구성된다. 사용자가 별도로 hook을 설정할 필요는 없으며, /compact, /clear 후에도 대화 히스토리가 유지된다.

re_gent AI coding agent version control git blame

실무에서 자주 쓰이는 명령은 다섯 가지다. rgt log는 세션의 step 히스토리를 시간순으로 보여주며 --session, -n, --json, --graph 옵션으로 필터링이 가능하다. rgt sessions는 현재 활성 세션 목록을 출력한다. rgt show 는 특정 step의 전체 컨텍스트(도구 호출, 사용자 프롬프트, 어시스턴트 응답)를 확인한다. rgt blame [:]은 파일 또는 특정 줄이 어떤 step에서 작성됐는지 추적한다. rgt status는 현재 저장소 상태를 표시한다.

결제 로직 회귀를 디버깅할 때 rgt log로 변경 step을 나열하고 의심되는 step의 해시를 rgt show에 넘기면 어떤 프롬프트가 어떤 도구로 어떤 인자를 줬는지 그대로 복원된다. VSCode 익스텐션을 설치하면 인라인 blame 주석, hover 툴팁, 세션 타임라인 뷰를 에디터 안에서 직접 볼 수 있다.

re_gent vs Git — 대체인가 보완인가

re_gent는 git을 대체하지 않는다. 둘은 추적 대상이 다르다. Git은 사람이 작성한 코드를 추적하고, re_gent는 에이전트 활동을 추적한다. Blame 단위도 다른데, git blame은 commit·author·해시만 보여주지만, re_gent blame은 "어떤 프롬프트가 이 줄을 썼는지"까지 알려준다. 동시 세션 처리도 차이가 명확하다. git은 같은 워크스페이스를 공유해서 충돌이 발생하지만, re_gent는 세션별로 별도 ref를 둬서 충돌 없이 추적한다.

권장 워크플로우는 "둘 다 같이 쓰기"다. 코드 변경 이력은 git이 관리하고, 에이전트 활동 이력은 re_gent가 담당한다. 같은 저장소 안에서 두 도구가 역할을 분담하면 "5분 전에 잘 됐는데 왜 안 되지?" 같은 상황을 Step 단위로 거슬러 올라가며 원인을 찾을 수 있다.

운영자용 가드레일

re_gent를 팀에 도입할 때 다음 일곱 가지를 먼저 정해두면 운영이 매끄럽다. 첫째, .regentignore로 추적 제외 패턴을 명시한다. 둘째, VSCode 익스텐션을 팀원 모두 설치한다. 셋째, 세션 시작 시 rgt sessions로 활성 세션을 한 번 확인한다. 넷째, 큰 리팩토링 직후에는 rgt log --graph로 step 그래프를 시각화한다. 다섯째, step 해시는 PR 본문에 인용해서 리뷰어가 rgt show로 컨텍스트를 따라가게 한다. 여섯째, ROADMAP.md에 명시된 Cursor, Cline, Continue 어댑터가 출시되면 hook 자동 설정을 다시 한 번 돌린다. 일곱째, garbage collection 단계가 도입될 때까지 .regent/objects/는 누적되므로 디스크 사용량을 분기마다 점검한다.

마무리

re_gent는 "AI 에이전트에게 git을 주자"는 단순한 제안이 아니다. 프롬프트 단위로 변경을 추적하고, step 그래프로 작업 흐름을 시각화하며, VSCode 안에서 인라인 blame을 제공한다. 2026년 6월 기준으로 Claude Code, OpenAI Codex CLI, OpenCode를 완전 지원하고, 라이선스는 Apache-2.0이다. AI 코딩 에이전트를 팀 단위로 운영한다면 re_gent의 .regent/는 git과 나란히 두어야 할 두 번째 VCS라 할 수 있다. 2026년 6월을 기준으로, 에이전트 작업의 auditability는 선택이 아닌 기본이 되어가고 있다.