AI 에이전트가 혼자 일하게 두면 생기는 일
tags: ai, kr, dev
최근에 AI 에이전트에게 "이 버그 좀 잡아"라고 맡기고 자리를 비운 적이 있습니다. 30분 뒤 돌아와서 화면을 보니... 생각보다 많은 일이 일어나 있더군요.
제가 겪은 실제 사례들
사례 1: 의도치 않은 대규모 리팩토링
"로그인 버그를 잡아줘"라고 했는데, 에이전트가 로그인 모듈 전체를 리팩토링했습니다. 원인은 한 줄이었는데, 주변 코드를 "개선"하다가 15개 파일을 수정했네요.
결과적으로 버그는 고쳤지만, PR 리뷰에 2시간이 걸렸습니다. 리뷰어가 "이건 버그 수정이 아니라 리팩토링 PR이잖아요"라고 했죠.
사례 2: 존재하지 않는 패키지 설치
에이전트가 npm 패키지를 설치하라고 했는데, 그 패키지는 3년 전에 deprecated된 것이었습니다. 알아서 alternatives를 찾아서 교체했지만, 호환성 문제가 생겨서 결국 롤백했습니다.
사례 3: 무한 루프
테스트를 실행하라고 했는데, 테스트가 실패해서 → 수정하고 → 다시 실행하고 → 또 실패하고... 20번 반복하다가 타임아웃으로 멈췄습니다. API 비용만 몇 달러 나왔네요.
교훈
1. 범위를 명확히 하기
"이 버그를 잡아줘"가 아니라 "auth.ts 파일의 validateToken 함수에서 null 체크가 빠져서 에러 나는 것 같아. 확인하고 수정해줘"처럼 구체적으로.
2. 수정 범위 제한하기
"이 파일만 수정해", "새 파일은 만들지 마", "리팩토링은 하지 마" 같은 제약을 걸어두면 불필요한 변경이 줄어듭니다.
3. 중간 점검하기
복잡한 작업은 한 번에 다 맡기지 말고, 계획 단계와 실행 단계를 나누세요. "먼저 원인을 파악해서 알려줘" → 확인 후 → "수정해줘" 순서로요.
4. 타임아웃 설정하기
비용도 비용이지만, 무한 루프를 방지하는 건 필수입니다. 대부분의 에이전트 도구에 타임아웃 옵션이 있습니다.
5. 커밋 단위로 검토하기
에이전트가 커밋을 남기게 하면, 각 커밋별로 무엇을 바꿨는지 추적하기 쉽습니다. 문제가 생기면 특정 커밋만 롤백하면 되니까요.
결론
AI 에이전트는 강력한 도구지만, 아직은 "감독"이 필요합니다. 완전히 자율적으로 돌아가게 두는 건 위험합니다.
적절한 가드레일을 설치하고, 중간에 확인하면서 사용하는 게 현재로서는 가장 현실적인 방법입니다.
여러분은 AI 에이전트를 맡겼을 때, 어떤 문제를 겪으셨나요?
참고하겠습니다~~
아직까지 감독하에 사용하고 있어서
문제는 격은 적은 없는데
이것도 문제라면 문제일까요.
세션의 영속성 때문에 ^^
가끔 기존에 있넌 서비스를 꺼버리고 해당 서비스에 신규 프로그램을 가져다 놓네요 ㅠ.ㅠ
세션 영속성이 양날의 검이죠 ㅎㅎ 저도 비슷한 경험 많습니다. 에이전트가 이전 세션의 컨텍스트를 기억하고 있다 보니, "이건 이미 있는 서비스인데 왜 새로 만들었어?" 보다는 "기존 걸 갈아치워야 더 깔끔하겠지"라고 판단해버리는 경우가 종종 있어요.
결국 에이전트는 "지시한 것"만큼만 잘합니다. 감독은 아직 필수고, 다만 그 감독을 어떻게 효율적으로 할지가 핵심인 것 같습니다.
좋은 정보 감사합니다.