AI가 DB를 통째로 삭제하지 않으려면 — 미첼 하시모토가 정립한 에이전트 제어 공학.
하네스 엔지니어링(Harness Engineering)은 AI 코딩 에이전트가 동일한 실수를 반복하지 않도록 모델 외부의 시스템·제약 조건·검증 환경을 구조적으로 설계하는 기술 체계입니다. 2026년 2월 유명 개발자 미첼 하시모토(Mitchell Hashimoto)가 AI 에이전트 개발 과정에서 겪은 한계를 바탕으로 정립한 신조어입니다.
예를 들어 결제 시스템 구현을 지시받은 AI가 아무런 제약 없이 개발용 데이터베이스 테이블을 통째로 삭제하는 경우가 실제로 발생합니다. AI 모델 자체는 텍스트 입력값을 받아 출력하는 '순수 함수'에 불과하므로, 외부 시스템 차원의 단단한 경계면이 없으면 치명적인 실수를 방지할 수 없습니다.
에이전트가 실수하는 이유는 지능이나 정보의 문제가 아닌 구조적 규제의 부재입니다. 아무리 똑똑한 모델도 울타리가 없으면 경계를 넘습니다.
지속성 컨텍스트 파일 (Context Files): Claude Code의 CLAUDE.md, agent.md 같은 설정 문서입니다. 새 세션이 시작되거나 컨텍스트가 리셋되더라도 에이전트가 작동 개시 시점에 가장 먼저 강제로 읽는 파일로, 프로젝트 규칙·제약 조건·아키텍처 방향이 담깁니다.
도구 안전망 (Tool Guardrails): 에이전트가 실행할 수 있는 명령어·API·DB 작업에 화이트리스트/블랙리스트를 설정합니다. 예: "프로덕션 DB 삭제 명령은 절대 실행 불가", "git push는 사람이 확인 후에만". 모델이 아무리 요청해도 시스템 레벨에서 차단됩니다.
가비지 컬렉션 에이전트 (Garbage Collection): 프로그래밍에서 안 쓰는 메모리를 청소하듯, AI 에이전트가 누적해 놓은 레거시·조악한 코드를 정기적으로 스캔해 자동 삭제·정리하는 별도 에이전트를 가동합니다. 나쁜 코드 패턴이 남아있으면 LLM이 이를 인컨텍스트 학습해 악순환이 반복되기 때문에 원천 차단이 필요합니다.
| 적용 사례 | 결과 |
|---|---|
| 엔지니어 3명, 5개월 AI 에이전트 프로젝트 | 실제 서비스 코드 한 줄 생산 없이도 에이전트가 완전히 통제된 자율 환경에서 작업 완료. 컨텍스트 파일이 에이전트 간 공유되어 "왜 이걸 했지?" 혼선 제거. |
| 대형 LLM 벤치마크 실험 | 하네스 없는 에이전트 대비 치명적 오류 발생률 70% 이상 감소. 특히 데이터 삭제·보안 취약점 생성 등 회복 불가능한 실수 방지 효율 압도적. |
1단계 — CLAUDE.md(컨텍스트 파일) 작성: 프로젝트 루트에 AI가 반드시 지켜야 할 규칙을 명시합니다. 예: "테스트 없이 코드 커밋 금지", "환경변수 하드코딩 금지", "DB 스키마 변경 전 항상 확인 요청".
2단계 — 허용 명령어 화이트리스트: Claude Code의 settings.json에서 허용할 bash 명령어를 사전 정의합니다. AI가 임의로 rm -rf나 DROP TABLE을 실행하지 못하도록 합니다.
3단계 — 정기적 코드 리뷰 에이전트: 주 1회 AI에게 "지난 주 생성된 코드 중 안티패턴·레거시·중복 코드를 찾아 정리해줘"를 요청하는 루틴을 만듭니다.
하네스는 AI를 불신하는 것이 아니라, AI가 실수할 수 없는 환경을 설계하는 것입니다. 안전벨트를 매는 이유가 운전 실력을 믿지 않아서가 아닌 것처럼.
GPT-4o, Claude 3.7, Gemini 2.0 중 어느 모델을 쓰느냐보다, 그 모델을 둘러싼 하네스 아키텍처가 얼마나 잘 설계됐느냐가 AI 코딩 에이전트의 실제 생산성을 결정합니다. 미첼 하시모토의 하네스 엔지니어링은 단순한 프롬프트 기법이 아닌, AI 시대의 새로운 소프트웨어 공학 패러다임입니다.
지금 당장 프로젝트에 CLAUDE.md 파일 하나만 만들어도 AI 에이전트의 실수율이 현저히 줄어듭니다. 가장 단순한 하네스부터 시작하세요.