정리와 연습
핵심 요점
- 에이전트는 원하는 바를 정확히 말하고 그것을 얻었는지 알아보는 능력을 배가시킬 뿐, 대체하지 않는다.
- 범위 설정은 두 번 보상한다: 좁게 잡은 작업은 실제로 리뷰할 수 있는 diff를 내고, 느슨한 작업은 리뷰할 수 없는 diff를 낸다.
- 코드베이스가 아니라 diff를 리뷰하라 —
git diff --stat은 몇 초 만에 범위 이탈을 짚어내고, 통과한 테스트 스위트가 직접 실행을 대신할 수는 없다. - 유료 를 상대로 스로틀 없는 에이전트 루프를 절대 돌리지 마라. 모든 루프에 하드 캡을 둬라 — 최대 반복 횟수, 지출 한도, 또는 타임아웃.
- 백그라운드 실행을 믿기 전에 첫 실행들을 포그라운드에서 지켜보며 에이전트가 수렴하는지 확인하라.
직접 해보기
작고 경계가 분명한 작업 하나를 골라, 명시적 종료 조건("3번 시도 후 중단" 또는 "테스트가 두 번 더 실패하면 중단")과 함께 에이전트에 넘겨라. 포그라운드에서 실행을 끝까지 지켜본 뒤, git diff --stat에 이어 git diff로 diff만 리뷰하라. 변경이 범위로 정한 것보다 많은 파일을 건드렸다면, 그것이 브리프를 조이고 다시 돌리라는 신호다.
이 장의 프롬프트
I'm giving you an autonomous task. Obey these guardrails exactly:
- SCOPE: only touch [list the files/modules]. If the fix needs more,
STOP and tell me instead of expanding scope.
- GOAL: [one concrete, checkable outcome].
- STOP CONDITIONS: stop after 3 attempts, OR if tests fail twice in a
row, OR if you've made changes outside the scope above.
- COST: do not call any paid API in a loop without a hard cap.
- REPORT: when you stop, show me `git diff --stat`, the test result,
and one sentence on whether you converged or got stuck.
Begin, and narrate each attempt so I can watch you converge.