AI 코딩 도구를 처음 쓸 때는 보통 “어떤 모델이 더 똑똑한가?”에 관심이 갑니다. 하지만 프로젝트가 커지면 다른 문제가 보이기 시작합니다. 같은 모델인데도 어떤 프로젝트에서는 일을 잘하고, 어떤 프로젝트에서는 같은 실수를 반복합니다.
이 차이를 만드는 것 중 하나가 하네스(harness)입니다. 쉽게 말하면 모델이 일할 때 참고하는 규칙, 도구, 컨텍스트, 실행 환경처럼 모델 주변을 둘러싼 작업 시스템입니다.
모델과 하네스는 역할이 다릅니다
모델은 추론하고 문장을 만들거나 코드를 제안합니다. 하네스는 모델이 무엇을 보고, 무엇을 할 수 있고, 어디까지 허용되는지를 정합니다.
예를 들어 같은 코딩 모델이라도 저장소 구조를 전혀 모르는 상태와, 프로젝트 규칙·테스트 명령·금지 영역을 알고 있는 상태의 행동은 달라질 수 있습니다. 모델 자체를 바꾸지 않아도 주변 조건을 정리하면 결과가 달라지는 이유입니다.
왜 지금 많이 이야기할까요?
AI가 단순한 채팅을 넘어 파일을 읽고, 명령을 실행하고, 여러 단계를 이어서 처리하는 에이전트형 도구로 확장됐기 때문입니다. 작업 단계가 길어질수록 한 번의 좋은 프롬프트보다 작업 환경 전체가 중요해집니다.
Anthropic도 장기 실행 에이전트 연구에서 모델만큼이나 에이전트가 작업을 이어갈 수 있도록 만드는 환경과 실행 구조의 중요성을 다루고 있습니다.
하네스는 거대한 시스템일 필요가 없습니다
입문 단계에서는 어렵게 생각할 필요가 없습니다. 다음 질문만 던져봐도 충분합니다.
- AI가 프로젝트의 목적과 제한을 알고 있는가?
- 사용할 수 있는 도구와 사용할 수 없는 행동이 구분되어 있는가?
- 작업 후 스스로 확인할 방법이 있는가?
- 세션이 바뀌어도 중요한 맥락을 다시 찾을 수 있는가?
핵심은 “프롬프트를 길게 쓰자”가 아닙니다. AI가 일하기 좋은 환경을 설계한다는 관점입니다.
어디서부터 시작하면 좋을까요?
Claude Code, Codex, Cursor처럼 에이전트형 코딩 도구를 쓰고 있다면 가장 작은 프로젝트 하나를 골라보세요. 그리고 AI에게 매번 반복해서 설명하는 정보가 무엇인지 적어보면 됩니다. 그 반복 설명이 바로 환경으로 옮겨볼 수 있는 후보입니다.
하네스 엔지니어링은 특정 제품 이름이 아니라, AI와 함께 개발할 때 모델 밖의 구조까지 생각하는 방법에 가깝습니다. 이 관점을 이해하면 “AI가 왜 자꾸 엉뚱하게 움직이지?”라는 질문을 모델 탓만 하지 않고 더 넓게 볼 수 있습니다.