코딩 에이전트는 버그 수정을 처음부터 끝까지 — 재현, 위치 파악, 수정, 검증, 커밋 — 주도할 수 있지만, 범위가 제한된 권한, 사람의 승인, 작고 되돌릴 수 있는 단계로 루프를 통제하면 당신이 주도권을 유지합니다. 타이핑은 에이전트가 하고, 실제로 반영되는 것은 당신이 결정합니다.
루프
text
1. REPRODUCE → 버그를 보여주는 실패하는 테스트를 작성/실행(red)
2. LOCATE → 코드베이스를 검색하고 관련 파일을 읽어 가설을 세움
3. PROPOSE → 최소한의 수정을 초안 작성(편집 전에 계획을 검토 가능)
4. VERIFY → 테스트 + lint/typecheck 실행 → 테스트가 green이 되어 수정이 입증됨
5. REVIEW → 승인을 위해 DIFF를 표시(아직 아무것도 커밋되지 않음)
6. COMMIT → 승인 후에만, branch에서, 명확한 메시지로
핵심 아이디어는 테스트 기반 검증입니다. 에이전트는 "고쳤다"고 주장하지 않고 — 실패하던 테스트를 통과시켜 입증합니다. 1단계의 실패하는 테스트가 변경이 효과가 있었다는 객관적 신호입니다.
통제 메커니즘
text
- SCOPED PERMISSIONS → 안전한 명령(test, lint)은 allowlist; 나머지는 확인 요청
- APPROVAL GATES → 파괴적/되돌릴 수 없는 행동과 최종 커밋은 사람이 확인
- SMALL STEPS → 한 번에 하나의 집중된 변경 → 검토와 되돌리기가 쉬움
- BRANCH / WORKTREE → main과 격리된 작업; 잘못되면 버림
- DIFF REVIEW → 에이전트 요약이 아니라 실제 diff를 커밋 전에 읽음
