
문제는 AI가 멍청해서가 아니라, AI가 일하는 환경이 제대로 안 갖춰져 있어서일 수 있어요.
그 환경을 설계하는 게 바로 하네스 엔지니어링이에요.
하네스(Harness)가 뭔데요?
하네스(Harness)는 원래 말에 씌우는 마구(馬具)를 뜻해요. 고삐, 안장, 등자 같은 것들이죠.
아무리 힘이 센 말이라도 마구 없이는 원하는 방향으로 달리게 할 수 없잖아요. 그냥 풀어놓으면 제 마음대로 뛰어다닐 뿐이니까요.
AI 에이전트도 똑같아요. 모델 자체가 아무리 뛰어나도, 그 주변 환경이 제대로 안 갖춰져 있으면 원하는 일을 안정적으로 시킬 수가 없어요.
하네스 엔지니어링은 한마디로, AI 에이전트가 일을 잘 할 수 있는 구조와 환경을 설계하는 것이에요. 모델을 더 똑똑하게 만드는 게 아니라, 모델이 올바르게 작동할 수밖에 없는 판을 짜는 거죠.
어쩌다 이 개념이 나왔을까요?
AI 활용 방식은 2023년 이후 이렇게 진화해왔어요.
| 단계 | 시기 | 핵심 질문 |
|---|---|---|
| 프롬프트 엔지니어링 | 2023년~ | AI한테 뭘 어떻게 말하지? |
| 컨텍스트 엔지니어링 | 2025년~ | AI한테 어떤 정보를 얼마나 줄까? |
| 하네스 엔지니어링 | 2026년~ | AI가 일하는 환경 전체를 어떻게 설계하지? |
프롬프트가 "AI한테 잘 말하는 법"이었다면, 하네스는 "AI가 잘 일할 수 있는 판을 짜는 법"으로 시야가 넓어진 거예요.
솔직히 처음 이 개념을 접했을 때, 그냥 프롬프트 잘 쓰면 되는 거 아닌가 싶었는데요 — 실제로 에이전트를 써보면 확실히 다르더라고요.
하네스의 구성요소
하네스는 AI 에이전트를 둘러싼 모든 외부 구조를 말해요. 크게 보면 이런 요소들이에요.
폴더 구성, 파일 명명 규칙, 문서 위치처럼 AI가 코드베이스를 읽을 수 있게 정리된 상태. AI는 맥락을 못 찾으면 그냥 추측해버리거든요.
"이 파일은 손대지 마", "테스트는 꼭 실행해" 같은 명시적인 지침. CLAUDE.md나 .cursorrules 같은 파일이 여기에 해당해요.
AI가 직접 실행할 수 있는 도구들. 코드 실행, 파일 읽기, 테스트 자동화 등. 툴이 없으면 AI는 말만 하고 끝이에요.
AI가 결과를 확인하고 스스로 수정할 수 있는 흐름. 테스트 결과, 로그, 오류 메시지를 AI가 다시 볼 수 있어야 해요.
실제로 어떻게 쓸 수 있을까요?
거창하게 생각할 필요 없어요. 지금 당장 Claude Code나 Cursor를 쓰고 있다면, 이미 하네스 엔지니어링을 부분적으로 하고 있는 거예요.
| 상황 | 하네스 요소 |
|---|---|
| CLAUDE.md에 규칙 적어두기 | 규칙 (Rules) |
| 폴더 구조를 명확하게 정리해두기 | 구조 (Structure) |
| AI가 테스트를 직접 실행하도록 허용하기 | 툴 + 피드백 루프 |
| 에러 로그를 AI한테 다시 넘겨주기 | 피드백 루프 |
AI 에이전트가 점점 많아질수록, 모델 성능보다 구조를 얼마나 잘 짜느냐가 결과를 가른다는 말이
실감 나더라고요.
복잡한 개념처럼 들리지만, 결국은 "AI가 헤매지 않도록 판을 잘 깔아주자"는 얘기예요.
한 번 의식하고 쓰면 꽤 달라져요.
'Ai 취미생활 > 용어&개념&이론' 카테고리의 다른 글
| 옵시디언(Obsidian)이 뭔지 궁금했는데 — 개념부터 활용까지 초보자도 알기 쉽게 (1) | 2026.06.11 |
|---|---|
| API와 JSON이 뭔가요? 바이브코딩 초보자를 위한 기초 정리 (0) | 2026.06.04 |
| 소프트웨어 3.0이란? 자연어가 코딩이 되는 시대 — Karpathy의 패러다임 정리 (0) | 2026.06.02 |
| LLM 위키 — 안드레 카파시의 한마디로 다시 보는 AI (학습 못 한다는 진실까지) (11) | 2026.05.25 |
| 로컬 LLM 입문 가이드 (개념·종류·사양·양자화·회사별 지향점까지) (1) | 2026.05.25 |