프롬프트 창은 운전대였다. 루프 엔지니어링은 운전대에서 손을 떼는 게 아니라, 차가 스스로 다닐 노선도를 그리는 일로 운전자의 자리를 옮기는 것이다.
무슨 일이 있었나
- 06-06 Claude Code를 이끄는 Anthropic의 Boris Cherny 발언이 X에서 확산 — "이제 Claude에 프롬프트를 치지 않는다. Claude를 찌르고 다음 할 일을 정하는 루프들이 돌고 있다. 내 일은 루프를 쓰는 것"
- 06-07 Peter Steinberger가 이어받음 — "코딩 에이전트에 프롬프트를 칠 게 아니라, 에이전트에 프롬프트를 넣는 루프를 설계해야 한다"
- 06-08(한국시간) Google 엔지니어 Addy Osmani가 이 패턴에 루프 엔지니어링(loop engineering) 이라는 이름을 붙인 글 발행 — 발언 연쇄가 도구 사용법 논쟁으로 번짐
- The New Stack은 06-10 기사에서 이 흐름을 "이번 주 AI 개발 도구 동네에서 가장 빠르게 움직인 대화"로 정리
루프는 예약 작업과 무엇이 다른가
- 루프 = 일을 찾고, 나눠주고, 검사하고, 기록하고, 다음 일을 정하는 작은 시스템. 사람이 에이전트를 찌르는 대신 이 시스템이 찌름
- 예약 작업(cron)은 고정된 스크립트를 돌림 — 루프는 가운데에 모델이 있어 현재 상태를 읽고 다음 행동을 고름
- 1년 전에는 이런 루프를 직접 셸 스크립트 더미로 짜서 평생 유지보수해야 했음 — 지금은 부품이 제품 안에 들어옴
부품 6개는 이미 제품 안에 있다
Osmani가 정리한 루프의 부품. Codex와 Claude Code 양쪽에 거의 같은 형태로 존재함:
- 예약 실행 — 정해진 시간에 스스로 일을 찾고 분류 (Codex Automations 탭 / Claude Code 예약 작업·`/loop`·훅)
- 워크트리 — 병렬로 일하는 에이전트끼리 서로 밟지 않게 격리 (`git worktree`)
- 스킬 — 에이전트가 추측할 프로젝트 지식을 `SKILL.md`로 명문화
- 연결기 — 이미 쓰는 외부 도구에 접속 (MCP 서버·플러그인)
- 서브에이전트 — 만드는 에이전트와 검사하는 에이전트를 분리
- 기록 — 대화 밖에 남는 메모리 (`CLAUDE.md`·`AGENTS.md`·Linear 보드). 모델은 실행 사이마다 다 잊으므로 기록은 디스크에 있어야 함
작성자와 검증자의 분리가 핵심
- 루프 설계에서 가장 중요한 선택은 코드를 쓰는 에이전트와 검사하는 에이전트를 가르는 것 — 모델이 자기 결과를 채점하면 너무 후함
- Anthropic이 장기 실행 하네스 글에서 공식화한 분리이고, 두 제품의 `/goal` 명령은 검증 가능한 종료 조건이 성립할 때까지 에이전트를 굴림 — Claude Code는 별도 모델이 결과를 채점
- Ramp의 Inspect가 6개월 전 같은 구조를 자체 인프라로 구축했는데, 이제 두 생태계에서 기본 기능이 됨 — 닫힌 루프 운용이 기본값이 되는 중
명명자 본인이 가장 조심스럽다
- Osmani는 자기가 이름 붙인 유행에 대해 "아직 초기이고, 나는 회의적"이라고 명시 — 토큰 비용은 사용 패턴에 따라 크게 출렁임
- 무인으로 도는 루프는 실수도 무인으로 반복함
- 가장 날카로운 경고는 이해 부채(comprehension debt) — 읽지 않은 코드를 시스템이 계속 출하할 때 벌어지는 간극. 같은 루프를 돌려도 한 사람은 이해한 일에서 더 빨라지고, 다른 사람은 이해 자체를 회피하게 됨
시사점
- 18개월이 안 되는 사이 작업 단위가 프롬프트 → 컨텍스트 → 하네스 → 루프로 네 번 이동 — 도구가 아니라 설계 단위가 바뀌는 중
- 부품이 두 제품에 같은 모양으로 들어왔으므로, 어느 도구를 쓰느냐보다 어떤 루프를 설계하느냐가 차이를 만듦
- 다음 경쟁은 루프 정의의 이식성 — 루프를 제품 간에 들고 다닐 수 있게 만드는 쪽이 앞선다는 관측