-
헤드리스 방식으로 Claude Code를 무한 루프에 넣어두자 1000건이 넘는 커밋과 수 개의 코드베이스 포팅 결과가 생성됨
- 이 방식으로 assistant-ui React 프로젝트를 Vue로, Python 프로젝트를 TypeScript로 자동 변환하는 등 다양한 포팅 성공 경험을 얻음
-
프롬프트를 단순하게 유지할수록 성능이 향상되고, 복잡하게 만들면 비효율이 커짐을 확인함
- 완벽하지는 않지만, 소스/타깃 저장소 동기화에 유용한 RepoMirror 도구까지 함께 개발함
-
AI 에이전트의 자기중단, 과제 추가 등 예기치 못한 행동과 학습도 관찰하여, 앞으로의 자동화 가능성과 한계를 동시에 체감함
프로젝트 개요 및 목적
- 본 프로젝트는 AI 코딩 에이전트(Coding Agent)를 무한 while 루프에 넣어 실제 코드 포팅 작업을 어떻게 진행하는지 실험함
- Claude Code를 헤드리스로, 지속적으로 입력 프롬프트를 반복하여 다양한 리포지터리에 자동 변환 과정을 적용함
- 1000건 이상 커밋, React에서 Vue, Python에서 TypeScript 등 여러 포팅 작업 자동화 결과를 도출함
- 그 과정에서 포팅 자동화 지원 도구인 RepoMirror도 개발함
무한 루프 방식 에이전트 운용
- Geoff Huntley가 권장한, 코딩 에이전트 프롬프트를 쉘에서 연속적으로 실행하는 형태
- 예시: while :; do cat prompt.md | claude -p --dangerously-skip-permissions; done
- assistant-ui의 React를 Vue로 바꾸는 작업 등에 이 루프 방식 적용
- 각 파일 수정마다 커밋과 푸시 실행
- 작업 내역 및 계획을 .agent/ 디렉토리에 기록
다양한 포팅 케이스 실험
-
Browser Use(Python에서 TypeScript로 포팅)
- simple 프롬프트로 infinite loop 수행
- GCP VM에서 tmux로 루프 지속 실행
- 아침에 거의 완벽 동작하는 TypeScript 포트 결과 확인
-
Vercel AI SDK TypeScript → Python 포팅도 적용
- FastAPI/Flask 오토 어댑터 생성
- Python의 다양한 schema validator로도 변환 지원
-
명세 기반 코드 자동화: Convex, Dedalus와 같은 프로젝트도 문서에서 직접 코드 생성 시도
실험 중 나타난 현상 및 교훈
에이전트의 테스트 작성 및 자기중단
- 에이전트는 명령에 따라 테스트 코드도 작성함
- 무한 루프에 빠지거나 임무 완료 시 스스로 pkill로 프로세스 종료한 사례도 있음
- 작업 범위 엄수, TODO.md에 완료 수준 반복 기록
추가적인 창발적 행동
- 포팅 작업 종료 후, 본래 JS 버전에 없는 FastAPI/Flask 통합, schema validator 지원 등 부가 기능 자발적 추가
프롬프트 단순화의 중요성
- 짧고 단순한 프롬프트가 우수한 성능을 보임
- 103자 프롬프트에서 1500자 프롬프트로 늘릴 경우 느려지고 정확도 하락
- 실제 사용 프롬프트 정보는 prompts 폴더 참고
완전 자동화 한계
- 두드러진 문제: 종종 완전 작동하지 않는 포팅 코드 배출 (일부 브라우저 데모 미완 등)
- 프롬프트 보정 및 인터랙티브 수정 필요
인프라/비용 및 운영
- 소요 비용 약 $800, 총 커밋 1100건, 에이전트 각 $10.50/시간 수준
- 여러 소스/타깃 저장소 포팅 과정 자동화 도구 즉석 제작(RepoMirror)
- shadcn 스타일 오픈박스 원칙 적용, init 단계 후 스크립트 및 프롬프트 커스텀 가능 폴더 생성
-
npx repomirror sync 및 sync-forever로 반복 실행 지원
도구 사용 및 활용 방법
-
npx repomirror init로 소스/타깃 디렉토리 지정 및 명령 입력해 초기화
- ex) React → Vue, gRPC → REST 변환 등 새 명령 손쉽게 적용
- 폴더 구조:
- .repomirror/prompt.md, sync.sh, ralph.sh 등 초기 파일 자동 생성
- 각 반복 단위 sync/sync-forever 실행으로 AI 포팅 루프 운영
- 주요 예시, 데모 결과 및 소스코드 레포는 README에서 확인 가능
실험 후 소회 및 팀 피드백
AGI(범용 인공지능)를 실감하고, 주로 흥분과 약간의 두려움이 동반됨
단순함이 효과적임을 직접 체험할 수 있었음
지금은 지수적 성장 곡선의 극초기 단계라는 느낌을 가짐
결론
- 무한 루프 기반 AI 코딩 에이전트의 실제 소스 코드 포팅 및 동기화 작업 현실화 경험
- 단순 구조 및 효과적 프롬프트 운용의 중요성 강조
- 자동화의 미래 가능성 및 한계 모두 드러남
- 관련 도구(RepoMirror)는 오픈소스 형태로 활용 및 연구 가능