{"content_id":"uxrumphsyw","slug":"prompt-context-harness-agentic-loop-engineering","locale":"ko","schema_type":"TechArticle","category":"comparison","category_name":"비교·분석","title":"프롬프트·컨텍스트·하네스·에이전틱·루프 엔지니어링의 차이와 설계법","summary":"프롬프트·컨텍스트·하네스·에이전틱·루프 엔지니어링은 각각 지시, 정보, 작업 환경, 자율적 실행, 반복 개선을 다룬다. 이 글은 다섯 방식의 경계와 결합 구조, 적용 순서, 검증 지표와 실패 방지법을 실무 관점에서 설명한다.","author":{"name":"인조이스 편집팀","url":"https://injoys.com/ko/about"},"key_points":["프롬프트 엔지니어링은 목표, 제약, 예시, 출력 계약과 성공 기준을 명확하게 만드는 작업이다.","컨텍스트 엔지니어링은 AI가 현재 판단에 사용할 정보의 관련성, 최신성, 출처와 토큰 효율을 관리한다.","하네스 엔지니어링은 도구, 권한, 샌드박스, 문서 구조, 검증기와 로그를 통해 AI가 안정적으로 일할 환경을 만든다.","에이전틱 엔지니어링은 목표 달성을 위한 다음 행동과 도구 선택을 AI에 제한적으로 위임한다.","루프 엔지니어링은 생성, 검증, 원인 분석, 수정, 재실행과 종료 조건을 연결해 결과를 수렴시킨다."],"content_markdown":"생성형 AI의 품질을 높이는 일을 모두 ‘프롬프트를 잘 쓰는 것’으로 묶으면, 실패 원인을 정확히 진단하기 어렵다. 프롬프트·컨텍스트·하네스·에이전틱·루프 엔지니어링은 서로 대체하는 유행어가 아니라, **요청 표현, 정보 선택, 실행 환경, 자율적 의사결정, 반복 개선**이라는 서로 다른 제어면을 다루는 보완적 설계 방식이다.\n\n## 다섯 개념의 핵심 정의\n\n| 구분 | 핵심 질문 | 주된 설계 대상 | 대표 산출물 | 대표 성공 기준 |\n|---|---|---|---|---|\n| 프롬프트 엔지니어링 | AI에게 일을 어떻게 지시할 것인가? | 지시문, 제약, 예시, 출력 형식 | 프롬프트 템플릿, 예시 입력·출력 | 지시 준수율, 형식 정확도, 1차 결과 품질 |\n| 컨텍스트 엔지니어링 | 지금 AI에게 무엇을 보여줄 것인가? | 시스템 지침, 검색 문서, 대화 상태, 메모리, 도구 결과 | 컨텍스트 조립 규칙, 검색·요약 정책 | 관련성, 최신성, 근거성, 토큰 효율 |\n| 하네스 엔지니어링 | AI가 실수하기 어렵게 어떤 작업 환경을 만들 것인가? | 도구, 권한, 샌드박스, 저장소 구조, 검증기, 로그 | 작업 규칙, 도구 인터페이스, 테스트·CI, 런북 | 재현성, 안전성, 검증 가능성, 복구 가능성 |\n| 에이전틱 엔지니어링 | 다음 행동을 누가, 어떤 범위에서 결정할 것인가? | 목표, 계획, 도구 선택, 상태 전이, 위임 | 에이전트 루프, 오케스트레이션, 승인 지점 | 과업 완료율, 적절한 도구 선택, 인간 개입률 |\n| 루프 엔지니어링 | 첫 결과가 틀렸을 때 어떻게 수렴시킬 것인가? | 생성, 평가, 원인 분류, 수정, 재실행, 종료 조건 | 평가기, 회귀 테스트, 재시도 정책, 실패 분류 | 1차 통과율, 복구율, 반복 횟수, 최종 통과율 |\n\n다섯 개념을 한 줄로 연결하면 다음과 같다.\n\n**요청을 표현한다 → 필요한 정보를 보여준다 → 안전한 작업 환경을 제공한다 → AI가 다음 행동을 선택하게 한다 → 결과가 기준을 통과할 때까지 검증하고 개선한다.**\n\n### 용어를 해석할 때의 주의점\n\n프롬프트 엔지니어링과 에이전트는 비교적 널리 쓰이는 용어지만, 하네스 엔지니어링은 아직 사용 범위가 문맥마다 다르다. 어떤 글은 모델을 제외한 거의 모든 실행 계층을 하네스로 부르고, 어떤 글은 코딩 에이전트 사용자가 저장소 바깥에 만드는 규칙·검증·피드백 구조로 좁혀 설명한다. ‘루프 엔지니어링’도 단일 표준에 의해 고정된 정식 분류라기보다, 생성과 검증을 폐쇄형 피드백 과정으로 설계한다는 실무적 명칭으로 이해하는 편이 정확하다.\n\n## 1. 프롬프트 엔지니어링: 지시의 품질을 설계한다\n\n프롬프트 엔지니어링은 모델에게 전달하는 지시를 명확하고 검증 가능하게 만드는 작업이다. 흔히 한 번의 요청과 응답에서 가장 눈에 띄는 효과를 내지만, 시스템 메시지나 멀티턴 대화 규칙에도 적용된다.\n\n좋은 프롬프트는 보통 다음 요소를 분리한다.\n\n- **목표:** 무엇을 완료해야 하는가\n- **입력:** 분석 대상과 입력 경계는 어디까지인가\n- **제약:** 하지 말아야 할 것, 허용 범위, 길이와 형식\n- **출력 계약:** JSON, 표, 코드 패치 등 결과 구조\n- **성공 기준:** 무엇을 만족하면 정답으로 볼 것인가\n- **불확실성 처리:** 정보가 부족하거나 충돌할 때 어떻게 할 것인가\n- **예시:** 기대 행동을 보여주는 대표적 입력·출력\n\n실무 템플릿은 다음처럼 단순하게 시작할 수 있다.\n\n```text\n목표:\n입력:\n제약:\n출력 형식:\n성공 기준:\n검증 방법:\n불확실할 때의 처리:\n대표 예시:\n```\n\n프롬프트를 다듬기 전에 성공 기준과 경험적 테스트 방법을 먼저 정의해야 한다는 점이 중요하다. 모든 실패가 프롬프트 수정으로 해결되는 것은 아니며, 비용·지연 시간·도구 오류·잘못된 자료 선택은 다른 계층의 문제일 수 있다.\n\n### 프롬프트 엔지니어링이 잘 해결하는 문제\n\n- 결과 형식이 자주 깨지는 문제\n- 지시의 우선순위가 모호한 문제\n- 분류, 추출, 변환, 요약처럼 입력과 출력이 비교적 명확한 문제\n- 대표 예시를 주면 성능이 안정되는 문제\n\n### 프롬프트만으로 해결하기 어려운 문제\n\n- 필요한 사실이나 파일이 입력에 없는 경우\n- 오래되거나 서로 충돌하는 문서가 섞인 경우\n- 외부 시스템을 안전하게 조회·수정해야 하는 경우\n- 여러 단계의 실행 상태와 실패 복구가 필요한 경우\n- 결과의 정답 여부를 객관적으로 검사할 방법이 없는 경우\n\n## 2. 컨텍스트 엔지니어링: AI가 보는 정보를 설계한다\n\n컨텍스트 엔지니어링은 모델이 답을 생성하는 순간 사용할 수 있는 정보 전체를 선택·정렬·압축·갱신하는 작업이다. 컨텍스트에는 프롬프트뿐 아니라 시스템 지침, 사용자 요청, 대화 이력, 검색 문서, 메모리, 도구 설명, 도구 실행 결과, 현재 시간, 권한 상태와 작업 진행 상태가 포함될 수 있다.\n\n컨텍스트 창은 유한하므로 ‘많이 넣기’가 아니라 **필요한 정보를 적시에 넣기**가 목표다. Anthropic은 컨텍스트를 에이전트의 중요하지만 유한한 자원으로 설명하며, 긴 상호작용에서는 최소한의 도구 집합, 대표 예시, 런타임 검색, 압축과 메모리 같은 전략을 권고한다.\n\n### 핵심 설계 원칙\n\n1. **관련성 우선:** 현재 단계에 필요한 정보만 넣는다.\n2. **출처와 최신성:** 문서의 작성 시점, 버전, 소유자, 신뢰도를 함께 관리한다.\n3. **즉시 검색:** 모든 자료를 미리 주입하기보다 필요할 때 파일·DB·검색 시스템에서 가져온다.\n4. **정보 계층화:** 고정 규칙, 현재 과업, 참고 자료, 도구 결과를 구분한다.\n5. **충돌 처리:** 여러 자료가 다르면 우선순위와 기준 원본을 명시한다.\n6. **압축과 상태 보존:** 오래된 대화는 요약하되 결정, 미해결 문제, 근거 링크는 잃지 않는다.\n7. **지시와 데이터 분리:** 웹페이지나 문서 속 문장을 시스템 명령처럼 취급하지 않도록 경계를 둔다.\n\n### 예시\n\n고객 지원 AI가 환불 정책을 답할 때 단순히 “정확히 답하라”는 프롬프트만 강화해도 한계가 있다. 올바른 컨텍스트 엔지니어링은 고객의 국가, 구매일, 상품 유형, 현재 정책 버전, 예외 조항, 주문 상태를 필요한 순간에 조회해 함께 제공하고, 답변에 사용한 정책 조항을 추적 가능하게 만든다.\n\n## 3. 하네스 엔지니어링: AI가 일하는 환경을 설계한다\n\n하네스는 모델의 지능을 실제 업무로 연결하는 실행 골격이다. 하네스 엔지니어링은 AI가 자주 하는 실수를 문서, 도구, 권한, 구조, 자동 검증과 피드백으로 예방하거나 조기에 발견하도록 작업 환경을 설계하는 일이다.\n\n### 하네스의 주요 구성요소\n\n| 구성요소 | 역할 | 예시 |\n|---|---|---|\n| 작업 지침 | 반복 업무의 절차와 금지 사항을 명시 | `AGENTS.md`, 런북, 체크리스트 |\n| 지식 구조 | AI가 필요한 자료를 쉽게 찾게 함 | 저장소 지도, ADR, 용어집, 예시 모음 |\n| 도구 인터페이스 | 행동의 입력·출력을 명확히 제한 | 파일 검색, DB 조회, 코드 실행, 배포 API |\n| 실행 환경 | 실패를 격리하고 재현성을 높임 | 샌드박스, 컨테이너, 고정 의존성 |\n| 검증기 | 결과가 기준을 만족하는지 자동 확인 | 스키마 검사, 단위 테스트, 린터, 정책 검사 |\n| 권한·승인 | 위험한 행동을 제한 | 최소 권한, 읽기/쓰기 분리, 인간 승인 |\n| 관측성 | 무엇을 보고 어떤 행동을 했는지 기록 | 트레이스, 로그, 도구 호출 기록, 비용 |\n| 복구 구조 | 실패 후 안전하게 되돌리고 재개 | 체크포인트, 롤백, 재시도 예산 |\n\nOpenAI의 하네스 엔지니어링 사례는 엔지니어의 역할을 단순한 코드 작성보다 환경, 의도, 저장소 지식, 테스트·검증·리뷰·복구 루프를 설계하는 쪽으로 설명한다. 핵심은 AI에게 “더 열심히 하라”고 재요청하는 것이 아니라, 부족했던 능력과 신호를 환경에 명시적으로 추가하는 것이다.\n\n### 자료 구조 예시\n\n```text\n/ai\n  /instructions   # 공통 규칙과 역할별 지침\n  /skills         # 반복 작업 절차\n  /examples       # 좋은 결과와 나쁜 결과\n  /evals          # 평가 데이터와 채점 규칙\n  /policies       # 권한, 보안, 승인 정책\n  /runbooks       # 장애·예외 대응\n```\n\n이 구조 자체가 정답은 아니다. 중요한 것은 자료가 최신 상태로 유지되고, 중복·충돌이 적으며, AI가 필요한 시점에 찾을 수 있고, 규칙이 자동 검사로 이어지는지다.\n\n## 4. 에이전틱 엔지니어링: 목표와 도구를 주고 다음 행동을 위임한다\n\n에이전틱 엔지니어링은 AI에게 목표, 도구, 작업 상태와 경계 조건을 주고, 목표를 달성하기 위한 다음 단계를 일정 범위에서 스스로 선택하게 만드는 설계다.\n\nAnthropic은 **워크플로**를 미리 정해진 코드 경로로 LLM과 도구를 조율하는 시스템, **에이전트**를 모델이 자신의 과정과 도구 사용을 동적으로 결정하는 시스템으로 구분한다. OpenAI도 에이전트를 LLM이 워크플로 실행을 관리하고, 외부 시스템과 상호작용할 도구를 동적으로 선택하는 시스템으로 설명한다.\n\n### 기본 에이전트 루프\n\n1. 현재 목표와 상태를 관찰한다.\n2. 다음 하위 목표나 행동을 계획한다.\n3. 도구를 선택해 실행한다.\n4. 결과와 환경 변화를 확인한다.\n5. 완료, 수정, 재시도, 인간 이관 중 하나를 결정한다.\n\n### 에이전트가 적합한 경우\n\n- 작업 순서가 입력마다 달라지는 경우\n- 자연어, 문서, 코드처럼 비정형 정보를 해석해야 하는 경우\n- 여러 도구를 선택적으로 사용해야 하는 경우\n- 중간 결과를 보고 계획을 바꿔야 하는 경우\n- 실패 원인이 다양하고 일정 수준의 복구가 가능한 경우\n\n### 에이전트가 과한 경우\n\n- 규칙과 순서가 고정된 단순 자동화\n- 단일 API 호출이나 SQL로 확실히 해결되는 업무\n- 검증 수단이 없고 오류 비용이 매우 큰 업무\n- 결제, 삭제, 배포처럼 되돌리기 어려운 행동을 승인 없이 수행하는 구조\n- 단일 에이전트로 충분한데 역할만 늘린 다중 에이전트 구조\n\n자율성은 이분법이 아니다. 추천만 하는 보조형, 제한된 읽기·쓰기만 허용한 실행형, 주요 단계마다 승인을 받는 감독형, 저위험 범위에서 장시간 동작하는 고자율형으로 나눌 수 있다. 업무 위험과 검증 능력에 맞춰 단계적으로 확장해야 한다.\n\n## 5. 루프 엔지니어링: 검증 가능한 개선 과정을 설계한다\n\n루프 엔지니어링은 단순한 재시도가 아니다. **생성 → 검증 → 실패 원인 분석 → 수정 전략 선택 → 재실행 → 종료 판단**을 명시적인 폐쇄형 피드백 시스템으로 만드는 것이다.\n\n### 제대로 된 루프의 구성\n\n1. **후보 생성:** 초안, 코드, 계획, 데이터 변환 결과를 만든다.\n2. **검증:** 테스트, 스키마, 참조 데이터, 정책, 근거 검사를 실행한다.\n3. **원인 분류:** 지시 오류, 컨텍스트 누락, 도구 실패, 구현 결함, 평가기 결함을 구분한다.\n4. **수정:** 실패 원인에 맞는 최소 변경을 적용한다.\n5. **재실행:** 전체를 처음부터 반복하지 말고 필요한 단계부터 다시 수행한다.\n6. **종료:** 통과, 최대 반복 횟수, 비용 한도, 시간 한도, 불확실성 임계치 중 하나에서 멈춘다.\n7. **회귀 보호:** 새 수정이 기존 성공 사례를 깨뜨리지 않았는지 확인한다.\n\n에이전트 평가는 입력과 출력만 보는 단일 턴 평가보다 복잡하다. 에이전트는 여러 번 도구를 호출하고 환경 상태를 바꾸므로, 최종 결과뿐 아니라 과정과 환경 변화를 함께 검사해야 한다. 자동 평가의 핵심은 입력을 주고 출력 또는 변경된 상태에 채점 논리를 적용하는 것이다.\n\n### 검증기의 우선순위\n\n- **결정적 검증:** 컴파일, 단위 테스트, 스키마, 수학적 제약, 권한 검사\n- **참조 기반 검증:** 기준 데이터, 원문 인용, 데이터베이스 대조\n- **규칙 기반 검증:** 금칙어, 필수 필드, 정책 조건\n- **모델 기반 평가:** 문체, 의미 보존, 종합 품질처럼 규칙화가 어려운 항목\n- **인간 평가:** 고위험 판단, 목표 자체의 타당성, 예외 승인\n\n가능하면 결정적 검증을 먼저 사용하고, 모델 평가만으로 자기 결과를 자기 채점하게 하지 않는다. 모델 평가를 쓸 때는 평가 기준, 예시, 편향 점검, 표본 인간 검토를 함께 둔다.\n\n## 다섯 방식은 계층이지 대체재가 아니다\n\n실제 시스템에서는 다섯 방식이 함께 작동한다.\n\n- 프롬프트는 **현재 행동의 계약**을 만든다.\n- 컨텍스트는 **판단에 필요한 상태와 근거**를 제공한다.\n- 하네스는 **행동 가능한 환경과 안전장치**를 제공한다.\n- 에이전틱 설계는 **다음 행동의 선택권**을 배분한다.\n- 루프 설계는 **오류를 발견하고 품질을 수렴**시킨다.\n\n따라서 “컨텍스트 엔지니어링이 프롬프트 엔지니어링을 대체했다”거나 “에이전트를 쓰면 워크플로가 필요 없다”는 식의 이해는 부정확하다. 더 넓은 계층이 좁은 계층을 포함하거나 활용할 뿐이며, 단순한 문제에는 단순한 설계가 더 안정적일 수 있다.\n\n## 실무 예시: 버그를 수정하는 AI 코딩 시스템\n\n“로그인 후 특정 사용자만 500 오류가 발생한다”는 버그를 AI가 수정한다고 가정해 보자.\n\n### 프롬프트 엔지니어링\n\n- 오류 재현 조건을 확인하라.\n- 공개 API는 변경하지 마라.\n- 최소 수정으로 해결하라.\n- 수정 후 테스트 결과와 남은 위험을 보고하라.\n\n### 컨텍스트 엔지니어링\n\n- 이슈 설명과 오류 로그\n- 관련 요청 추적 ID\n- 인증·사용자 모델 관련 파일\n- 최근 변경 내역\n- 아키텍처 규칙과 코딩 표준\n- 실패한 테스트와 실행 환경 정보\n\n### 하네스 엔지니어링\n\n- 저장소 검색, 파일 읽기·편집, 테스트 실행 도구\n- 격리된 브랜치와 샌드박스\n- 포맷터, 린터, 단위·통합 테스트\n- 변경 금지 영역과 권한 정책\n- 모든 명령과 파일 변경의 로그\n- 실패 시 롤백과 체크포인트\n\n### 에이전틱 엔지니어링\n\nAI가 재현, 가설 수립, 관련 코드 탐색, 패치, 테스트, 결과 요약의 순서를 상황에 따라 선택한다. 다만 배포나 데이터 변경은 인간 승인을 요구한다.\n\n### 루프 엔지니어링\n\n테스트가 실패하면 같은 명령을 반복하는 대신 실패 유형을 분류한다. 재현 실패라면 컨텍스트 수집을 보완하고, 회귀 실패라면 패치를 줄이며, 환경 오류라면 의존성과 설정을 복구한다. 모든 필수 테스트가 통과하고 변경 근거가 남으면 종료한다.\n\n## 문제 증상으로 어떤 엔지니어링이 필요한지 찾는 법\n\n| 증상 | 우선 점검할 영역 |\n|---|---|\n| 출력 형식이나 문체가 자주 어긋난다 | 프롬프트 |\n| 답변에 필요한 사실·파일이 빠진다 | 컨텍스트 |\n| 도구를 잘못 고르거나 위험한 명령을 실행한다 | 하네스와 권한 설계 |\n| 고정 순서로는 처리하기 어려운 변형이 많다 | 에이전틱 설계 |\n| 첫 결과는 자주 틀리지만 자동 판정은 가능하다 | 루프와 평가기 |\n| 실패 원인을 알 수 없고 재현이 어렵다 | 하네스의 관측성 |\n| 반복할수록 비용만 늘고 품질이 나아지지 않는다 | 원인 분류, 검증 신호, 종료 조건 |\n| 자료가 많을수록 오히려 답이 나빠진다 | 컨텍스트 정리와 검색 정책 |\n\n## 권장 구축 순서\n\n### 1단계: 성공 기준과 평가 세트를 먼저 만든다\n\n대표 업무, 어려운 사례, 금지 사례를 모으고 결과를 어떻게 판정할지 정의한다. 정답 데이터가 없으면 최소한 스키마, 필수 근거, 정책 준수, 인간 평가 기준을 만든다.\n\n### 2단계: 단일 호출 기준선을 만든다\n\n가장 단순한 프롬프트와 필요한 최소 컨텍스트로 성능, 비용, 지연 시간을 측정한다. 기준선 없이 에이전트를 도입하면 복잡성의 효과를 구분하기 어렵다.\n\n### 3단계: 컨텍스트 공급을 계측한다\n\n어떤 문서와 도구 결과가 들어갔는지, 얼마나 오래됐는지, 실제 답변에 사용됐는지 기록한다. 검색 실패와 과도한 컨텍스트를 구분한다.\n\n### 4단계: 최소 하네스를 만든다\n\n도구 수를 줄이고 이름과 입력을 명확히 한다. 샌드박스, 최소 권한, 자동 테스트, 로그, 체크포인트를 우선한다.\n\n### 5단계: 제한된 자율성을 부여한다\n\n단일 에이전트가 읽기 중심의 저위험 업무부터 수행하게 한다. 종료 조건과 인간 이관 조건을 명시하고, 쓰기·삭제·결제·배포 권한은 별도로 승인한다.\n\n### 6단계: 검증·복구 루프를 닫는다\n\n실패 분류, 수정 전략, 최대 반복 횟수, 비용 한도, 회귀 테스트를 연결한다. 성공률이 안정된 뒤에만 도구와 자율 범위를 넓힌다.\n\n## 운영 지표\n\n보편적인 목표 수치는 없으므로 업무 위험과 비용에 맞춰 기준을 정해야 한다.\n\n| 지표 | 의미 |\n|---|---|\n| 과업 완료율 | 최종 성공 기준을 충족한 비율 |\n| 1차 통과율 | 반복 수정 없이 처음부터 통과한 비율 |\n| 복구율 | 첫 실패 후 루프를 통해 성공한 비율 |\n| 평균 반복 횟수 | 성공 또는 중단까지 필요한 사이클 수 |\n| 도구 선택 오류율 | 부적절하거나 불필요한 도구 호출 비율 |\n| 근거 완전성 | 핵심 주장에 추적 가능한 출처가 있는 비율 |\n| 인간 개입률 | 승인, 수정, 재지시가 필요했던 비율 |\n| 단위 성공당 비용·지연 | 성공한 과업 하나를 완료하는 데 든 자원 |\n| 안전 사건 수 | 권한 위반, 잘못된 쓰기, 비가역 행동 발생 수 |\n| 회귀 실패율 | 새 변경이 기존 성공 사례를 깨뜨린 비율 |\n\n## 자주 발생하는 설계 실수\n\n| 영역 | 실수 | 개선 방법 |\n|---|---|---|\n| 프롬프트 | 모든 예외를 한 문장에 누적한다 | 규칙을 구조화하고 대표 예시와 평가를 분리한다 |\n| 프롬프트 | 성공 기준 없이 “잘 작성하라”고 지시한다 | 형식, 필수 내용, 금지 사항, 판정 기준을 명시한다 |\n| 컨텍스트 | 관련 없는 문서를 모두 넣는다 | 런타임 검색과 단계별 컨텍스트를 사용한다 |\n| 컨텍스트 | 오래된 정책과 최신 정책을 함께 제공한다 | 버전·유효일·기준 원본을 관리한다 |\n| 하네스 | 기능이 겹치는 도구를 많이 제공한다 | 최소 도구 집합과 명확한 파라미터를 설계한다 |\n| 하네스 | 쓰기 권한과 되돌리기 기능이 없다 | 최소 권한, 샌드박스, 체크포인트를 둔다 |\n| 에이전틱 | 처음부터 다중 에이전트를 만든다 | 단일 에이전트와 결정적 워크플로부터 검증한다 |\n| 에이전틱 | 완료 조건 없이 계속 실행하게 한다 | 명시적 종료·예산·이관 조건을 둔다 |\n| 루프 | 같은 요청을 그대로 반복한다 | 실패 원인을 분류하고 수정 지점을 바꾼다 |\n| 루프 | 생성 모델 하나로 모든 결과를 자기 평가한다 | 결정적 검사, 참조 대조, 인간 표본 검토를 조합한다 |\n\n## 구현 체크리스트\n\n- [ ] 성공 조건이 문장뿐 아니라 가능한 범위에서 기계적으로 검사 가능한가?\n- [ ] 프롬프트, 참고 자료, 도구 결과의 우선순위가 분리되어 있는가?\n- [ ] 문서의 출처, 버전, 유효일과 소유자를 추적할 수 있는가?\n- [ ] 도구 이름과 파라미터가 서로 겹치지 않고 명확한가?\n- [ ] 읽기, 쓰기, 삭제, 결제, 배포 권한이 위험도별로 분리되어 있는가?\n- [ ] 실패를 격리할 샌드박스와 되돌리기 수단이 있는가?\n- [ ] 모든 중요 행동과 도구 호출을 재현 가능한 형태로 기록하는가?\n- [ ] 테스트, 스키마, 정책 검사 등 외부 검증기가 있는가?\n- [ ] 최대 반복 횟수, 비용, 시간, 인간 이관 조건이 정의되어 있는가?\n- [ ] 새 개선이 기존 사례를 깨뜨리지 않는 회귀 평가가 있는가?\n\n## 결론\n\n좋은 AI 시스템은 가장 긴 프롬프트를 가진 시스템이 아니다. 실패가 **지시**, **정보**, **환경**, **의사결정**, **검증·복구** 중 어디에서 발생했는지 구분하고, 해당 계층에 가장 단순한 해결책을 배치한 시스템이다. 먼저 성공 기준과 단일 호출 기준선을 만들고, 필요한 만큼만 컨텍스트와 하네스를 보강한 뒤, 검증 가능한 범위에서 자율성과 반복 루프를 확장하는 것이 안정적인 접근이다.","content_html":"\u003cp\u003e생성형 AI의 품질을 높이는 일을 모두 ‘프롬프트를 잘 쓰는 것’으로 묶으면, 실패 원인을 정확히 진단하기 어렵다. 프롬프트·컨텍스트·하네스·에이전틱·루프 엔지니어링은 서로 대체하는 유행어가 아니라, \u003cstrong\u003e요청 표현, 정보 선택, 실행 환경, 자율적 의사결정, 반복 개선\u003c/strong\u003e이라는 서로 다른 제어면을 다루는 보완적 설계 방식이다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#다섯-개념의-핵심-정의\" class=\"anchor\" id=\"다섯-개념의-핵심-정의\"\u003e\u003c/a\u003e다섯 개념의 핵심 정의\u003c/h2\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003e구분\u003c/th\u003e\n\u003cth\u003e핵심 질문\u003c/th\u003e\n\u003cth\u003e주된 설계 대상\u003c/th\u003e\n\u003cth\u003e대표 산출물\u003c/th\u003e\n\u003cth\u003e대표 성공 기준\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e프롬프트 엔지니어링\u003c/td\u003e\n\u003ctd\u003eAI에게 일을 어떻게 지시할 것인가?\u003c/td\u003e\n\u003ctd\u003e지시문, 제약, 예시, 출력 형식\u003c/td\u003e\n\u003ctd\u003e프롬프트 템플릿, 예시 입력·출력\u003c/td\u003e\n\u003ctd\u003e지시 준수율, 형식 정확도, 1차 결과 품질\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e컨텍스트 엔지니어링\u003c/td\u003e\n\u003ctd\u003e지금 AI에게 무엇을 보여줄 것인가?\u003c/td\u003e\n\u003ctd\u003e시스템 지침, 검색 문서, 대화 상태, 메모리, 도구 결과\u003c/td\u003e\n\u003ctd\u003e컨텍스트 조립 규칙, 검색·요약 정책\u003c/td\u003e\n\u003ctd\u003e관련성, 최신성, 근거성, 토큰 효율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e하네스 엔지니어링\u003c/td\u003e\n\u003ctd\u003eAI가 실수하기 어렵게 어떤 작업 환경을 만들 것인가?\u003c/td\u003e\n\u003ctd\u003e도구, 권한, 샌드박스, 저장소 구조, 검증기, 로그\u003c/td\u003e\n\u003ctd\u003e작업 규칙, 도구 인터페이스, 테스트·CI, 런북\u003c/td\u003e\n\u003ctd\u003e재현성, 안전성, 검증 가능성, 복구 가능성\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e에이전틱 엔지니어링\u003c/td\u003e\n\u003ctd\u003e다음 행동을 누가, 어떤 범위에서 결정할 것인가?\u003c/td\u003e\n\u003ctd\u003e목표, 계획, 도구 선택, 상태 전이, 위임\u003c/td\u003e\n\u003ctd\u003e에이전트 루프, 오케스트레이션, 승인 지점\u003c/td\u003e\n\u003ctd\u003e과업 완료율, 적절한 도구 선택, 인간 개입률\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e루프 엔지니어링\u003c/td\u003e\n\u003ctd\u003e첫 결과가 틀렸을 때 어떻게 수렴시킬 것인가?\u003c/td\u003e\n\u003ctd\u003e생성, 평가, 원인 분류, 수정, 재실행, 종료 조건\u003c/td\u003e\n\u003ctd\u003e평가기, 회귀 테스트, 재시도 정책, 실패 분류\u003c/td\u003e\n\u003ctd\u003e1차 통과율, 복구율, 반복 횟수, 최종 통과율\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003cp\u003e다섯 개념을 한 줄로 연결하면 다음과 같다.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e요청을 표현한다 → 필요한 정보를 보여준다 → 안전한 작업 환경을 제공한다 → AI가 다음 행동을 선택하게 한다 → 결과가 기준을 통과할 때까지 검증하고 개선한다.\u003c/strong\u003e\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#용어를-해석할-때의-주의점\" class=\"anchor\" id=\"용어를-해석할-때의-주의점\"\u003e\u003c/a\u003e용어를 해석할 때의 주의점\u003c/h3\u003e\n\u003cp\u003e프롬프트 엔지니어링과 에이전트는 비교적 널리 쓰이는 용어지만, 하네스 엔지니어링은 아직 사용 범위가 문맥마다 다르다. 어떤 글은 모델을 제외한 거의 모든 실행 계층을 하네스로 부르고, 어떤 글은 코딩 에이전트 사용자가 저장소 바깥에 만드는 규칙·검증·피드백 구조로 좁혀 설명한다. ‘루프 엔지니어링’도 단일 표준에 의해 고정된 정식 분류라기보다, 생성과 검증을 폐쇄형 피드백 과정으로 설계한다는 실무적 명칭으로 이해하는 편이 정확하다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#1-프롬프트-엔지니어링-지시의-품질을-설계한다\" class=\"anchor\" id=\"1-프롬프트-엔지니어링-지시의-품질을-설계한다\"\u003e\u003c/a\u003e1. 프롬프트 엔지니어링: 지시의 품질을 설계한다\u003c/h2\u003e\n\u003cp\u003e프롬프트 엔지니어링은 모델에게 전달하는 지시를 명확하고 검증 가능하게 만드는 작업이다. 흔히 한 번의 요청과 응답에서 가장 눈에 띄는 효과를 내지만, 시스템 메시지나 멀티턴 대화 규칙에도 적용된다.\u003c/p\u003e\n\u003cp\u003e좋은 프롬프트는 보통 다음 요소를 분리한다.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e목표:\u003c/strong\u003e 무엇을 완료해야 하는가\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e입력:\u003c/strong\u003e 분석 대상과 입력 경계는 어디까지인가\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e제약:\u003c/strong\u003e 하지 말아야 할 것, 허용 범위, 길이와 형식\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e출력 계약:\u003c/strong\u003e JSON, 표, 코드 패치 등 결과 구조\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e성공 기준:\u003c/strong\u003e 무엇을 만족하면 정답으로 볼 것인가\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e불확실성 처리:\u003c/strong\u003e 정보가 부족하거나 충돌할 때 어떻게 할 것인가\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e예시:\u003c/strong\u003e 기대 행동을 보여주는 대표적 입력·출력\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e실무 템플릿은 다음처럼 단순하게 시작할 수 있다.\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e목표:\n\u003c/span\u003e\u003cspan\u003e입력:\n\u003c/span\u003e\u003cspan\u003e제약:\n\u003c/span\u003e\u003cspan\u003e출력 형식:\n\u003c/span\u003e\u003cspan\u003e성공 기준:\n\u003c/span\u003e\u003cspan\u003e검증 방법:\n\u003c/span\u003e\u003cspan\u003e불확실할 때의 처리:\n\u003c/span\u003e\u003cspan\u003e대표 예시:\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e프롬프트를 다듬기 전에 성공 기준과 경험적 테스트 방법을 먼저 정의해야 한다는 점이 중요하다. 모든 실패가 프롬프트 수정으로 해결되는 것은 아니며, 비용·지연 시간·도구 오류·잘못된 자료 선택은 다른 계층의 문제일 수 있다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#프롬프트-엔지니어링이-잘-해결하는-문제\" class=\"anchor\" id=\"프롬프트-엔지니어링이-잘-해결하는-문제\"\u003e\u003c/a\u003e프롬프트 엔지니어링이 잘 해결하는 문제\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e결과 형식이 자주 깨지는 문제\u003c/li\u003e\n\u003cli\u003e지시의 우선순위가 모호한 문제\u003c/li\u003e\n\u003cli\u003e분류, 추출, 변환, 요약처럼 입력과 출력이 비교적 명확한 문제\u003c/li\u003e\n\u003cli\u003e대표 예시를 주면 성능이 안정되는 문제\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"#프롬프트만으로-해결하기-어려운-문제\" class=\"anchor\" id=\"프롬프트만으로-해결하기-어려운-문제\"\u003e\u003c/a\u003e프롬프트만으로 해결하기 어려운 문제\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e필요한 사실이나 파일이 입력에 없는 경우\u003c/li\u003e\n\u003cli\u003e오래되거나 서로 충돌하는 문서가 섞인 경우\u003c/li\u003e\n\u003cli\u003e외부 시스템을 안전하게 조회·수정해야 하는 경우\u003c/li\u003e\n\u003cli\u003e여러 단계의 실행 상태와 실패 복구가 필요한 경우\u003c/li\u003e\n\u003cli\u003e결과의 정답 여부를 객관적으로 검사할 방법이 없는 경우\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"#2-컨텍스트-엔지니어링-ai가-보는-정보를-설계한다\" class=\"anchor\" id=\"2-컨텍스트-엔지니어링-ai가-보는-정보를-설계한다\"\u003e\u003c/a\u003e2. 컨텍스트 엔지니어링: AI가 보는 정보를 설계한다\u003c/h2\u003e\n\u003cp\u003e컨텍스트 엔지니어링은 모델이 답을 생성하는 순간 사용할 수 있는 정보 전체를 선택·정렬·압축·갱신하는 작업이다. 컨텍스트에는 프롬프트뿐 아니라 시스템 지침, 사용자 요청, 대화 이력, 검색 문서, 메모리, 도구 설명, 도구 실행 결과, 현재 시간, 권한 상태와 작업 진행 상태가 포함될 수 있다.\u003c/p\u003e\n\u003cp\u003e컨텍스트 창은 유한하므로 ‘많이 넣기’가 아니라 \u003cstrong\u003e필요한 정보를 적시에 넣기\u003c/strong\u003e가 목표다. Anthropic은 컨텍스트를 에이전트의 중요하지만 유한한 자원으로 설명하며, 긴 상호작용에서는 최소한의 도구 집합, 대표 예시, 런타임 검색, 압축과 메모리 같은 전략을 권고한다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#핵심-설계-원칙\" class=\"anchor\" id=\"핵심-설계-원칙\"\u003e\u003c/a\u003e핵심 설계 원칙\u003c/h3\u003e\n\u003col\u003e\n\u003cli\u003e\u003cstrong\u003e관련성 우선:\u003c/strong\u003e 현재 단계에 필요한 정보만 넣는다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e출처와 최신성:\u003c/strong\u003e 문서의 작성 시점, 버전, 소유자, 신뢰도를 함께 관리한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e즉시 검색:\u003c/strong\u003e 모든 자료를 미리 주입하기보다 필요할 때 파일·DB·검색 시스템에서 가져온다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e정보 계층화:\u003c/strong\u003e 고정 규칙, 현재 과업, 참고 자료, 도구 결과를 구분한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e충돌 처리:\u003c/strong\u003e 여러 자료가 다르면 우선순위와 기준 원본을 명시한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e압축과 상태 보존:\u003c/strong\u003e 오래된 대화는 요약하되 결정, 미해결 문제, 근거 링크는 잃지 않는다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e지시와 데이터 분리:\u003c/strong\u003e 웹페이지나 문서 속 문장을 시스템 명령처럼 취급하지 않도록 경계를 둔다.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch3\u003e\u003ca href=\"#예시\" class=\"anchor\" id=\"예시\"\u003e\u003c/a\u003e예시\u003c/h3\u003e\n\u003cp\u003e고객 지원 AI가 환불 정책을 답할 때 단순히 “정확히 답하라”는 프롬프트만 강화해도 한계가 있다. 올바른 컨텍스트 엔지니어링은 고객의 국가, 구매일, 상품 유형, 현재 정책 버전, 예외 조항, 주문 상태를 필요한 순간에 조회해 함께 제공하고, 답변에 사용한 정책 조항을 추적 가능하게 만든다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#3-하네스-엔지니어링-ai가-일하는-환경을-설계한다\" class=\"anchor\" id=\"3-하네스-엔지니어링-ai가-일하는-환경을-설계한다\"\u003e\u003c/a\u003e3. 하네스 엔지니어링: AI가 일하는 환경을 설계한다\u003c/h2\u003e\n\u003cp\u003e하네스는 모델의 지능을 실제 업무로 연결하는 실행 골격이다. 하네스 엔지니어링은 AI가 자주 하는 실수를 문서, 도구, 권한, 구조, 자동 검증과 피드백으로 예방하거나 조기에 발견하도록 작업 환경을 설계하는 일이다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#하네스의-주요-구성요소\" class=\"anchor\" id=\"하네스의-주요-구성요소\"\u003e\u003c/a\u003e하네스의 주요 구성요소\u003c/h3\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003e구성요소\u003c/th\u003e\n\u003cth\u003e역할\u003c/th\u003e\n\u003cth\u003e예시\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e작업 지침\u003c/td\u003e\n\u003ctd\u003e반복 업무의 절차와 금지 사항을 명시\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003eAGENTS.md\u003c/code\u003e, 런북, 체크리스트\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e지식 구조\u003c/td\u003e\n\u003ctd\u003eAI가 필요한 자료를 쉽게 찾게 함\u003c/td\u003e\n\u003ctd\u003e저장소 지도, ADR, 용어집, 예시 모음\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e도구 인터페이스\u003c/td\u003e\n\u003ctd\u003e행동의 입력·출력을 명확히 제한\u003c/td\u003e\n\u003ctd\u003e파일 검색, DB 조회, 코드 실행, 배포 API\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e실행 환경\u003c/td\u003e\n\u003ctd\u003e실패를 격리하고 재현성을 높임\u003c/td\u003e\n\u003ctd\u003e샌드박스, 컨테이너, 고정 의존성\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e검증기\u003c/td\u003e\n\u003ctd\u003e결과가 기준을 만족하는지 자동 확인\u003c/td\u003e\n\u003ctd\u003e스키마 검사, 단위 테스트, 린터, 정책 검사\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e권한·승인\u003c/td\u003e\n\u003ctd\u003e위험한 행동을 제한\u003c/td\u003e\n\u003ctd\u003e최소 권한, 읽기/쓰기 분리, 인간 승인\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e관측성\u003c/td\u003e\n\u003ctd\u003e무엇을 보고 어떤 행동을 했는지 기록\u003c/td\u003e\n\u003ctd\u003e트레이스, 로그, 도구 호출 기록, 비용\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e복구 구조\u003c/td\u003e\n\u003ctd\u003e실패 후 안전하게 되돌리고 재개\u003c/td\u003e\n\u003ctd\u003e체크포인트, 롤백, 재시도 예산\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003cp\u003eOpenAI의 하네스 엔지니어링 사례는 엔지니어의 역할을 단순한 코드 작성보다 환경, 의도, 저장소 지식, 테스트·검증·리뷰·복구 루프를 설계하는 쪽으로 설명한다. 핵심은 AI에게 “더 열심히 하라”고 재요청하는 것이 아니라, 부족했던 능력과 신호를 환경에 명시적으로 추가하는 것이다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#자료-구조-예시\" class=\"anchor\" id=\"자료-구조-예시\"\u003e\u003c/a\u003e자료 구조 예시\u003c/h3\u003e\n\u003cpre\u003e\u003ccode\u003e\u003cspan\u003e/ai\n\u003c/span\u003e\u003cspan\u003e  /instructions   # 공통 규칙과 역할별 지침\n\u003c/span\u003e\u003cspan\u003e  /skills         # 반복 작업 절차\n\u003c/span\u003e\u003cspan\u003e  /examples       # 좋은 결과와 나쁜 결과\n\u003c/span\u003e\u003cspan\u003e  /evals          # 평가 데이터와 채점 규칙\n\u003c/span\u003e\u003cspan\u003e  /policies       # 권한, 보안, 승인 정책\n\u003c/span\u003e\u003cspan\u003e  /runbooks       # 장애·예외 대응\n\u003c/span\u003e\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e이 구조 자체가 정답은 아니다. 중요한 것은 자료가 최신 상태로 유지되고, 중복·충돌이 적으며, AI가 필요한 시점에 찾을 수 있고, 규칙이 자동 검사로 이어지는지다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#4-에이전틱-엔지니어링-목표와-도구를-주고-다음-행동을-위임한다\" class=\"anchor\" id=\"4-에이전틱-엔지니어링-목표와-도구를-주고-다음-행동을-위임한다\"\u003e\u003c/a\u003e4. 에이전틱 엔지니어링: 목표와 도구를 주고 다음 행동을 위임한다\u003c/h2\u003e\n\u003cp\u003e에이전틱 엔지니어링은 AI에게 목표, 도구, 작업 상태와 경계 조건을 주고, 목표를 달성하기 위한 다음 단계를 일정 범위에서 스스로 선택하게 만드는 설계다.\u003c/p\u003e\n\u003cp\u003eAnthropic은 \u003cstrong\u003e워크플로\u003c/strong\u003e를 미리 정해진 코드 경로로 LLM과 도구를 조율하는 시스템, \u003cstrong\u003e에이전트\u003c/strong\u003e를 모델이 자신의 과정과 도구 사용을 동적으로 결정하는 시스템으로 구분한다. OpenAI도 에이전트를 LLM이 워크플로 실행을 관리하고, 외부 시스템과 상호작용할 도구를 동적으로 선택하는 시스템으로 설명한다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#기본-에이전트-루프\" class=\"anchor\" id=\"기본-에이전트-루프\"\u003e\u003c/a\u003e기본 에이전트 루프\u003c/h3\u003e\n\u003col\u003e\n\u003cli\u003e현재 목표와 상태를 관찰한다.\u003c/li\u003e\n\u003cli\u003e다음 하위 목표나 행동을 계획한다.\u003c/li\u003e\n\u003cli\u003e도구를 선택해 실행한다.\u003c/li\u003e\n\u003cli\u003e결과와 환경 변화를 확인한다.\u003c/li\u003e\n\u003cli\u003e완료, 수정, 재시도, 인간 이관 중 하나를 결정한다.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch3\u003e\u003ca href=\"#에이전트가-적합한-경우\" class=\"anchor\" id=\"에이전트가-적합한-경우\"\u003e\u003c/a\u003e에이전트가 적합한 경우\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e작업 순서가 입력마다 달라지는 경우\u003c/li\u003e\n\u003cli\u003e자연어, 문서, 코드처럼 비정형 정보를 해석해야 하는 경우\u003c/li\u003e\n\u003cli\u003e여러 도구를 선택적으로 사용해야 하는 경우\u003c/li\u003e\n\u003cli\u003e중간 결과를 보고 계획을 바꿔야 하는 경우\u003c/li\u003e\n\u003cli\u003e실패 원인이 다양하고 일정 수준의 복구가 가능한 경우\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"#에이전트가-과한-경우\" class=\"anchor\" id=\"에이전트가-과한-경우\"\u003e\u003c/a\u003e에이전트가 과한 경우\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e규칙과 순서가 고정된 단순 자동화\u003c/li\u003e\n\u003cli\u003e단일 API 호출이나 SQL로 확실히 해결되는 업무\u003c/li\u003e\n\u003cli\u003e검증 수단이 없고 오류 비용이 매우 큰 업무\u003c/li\u003e\n\u003cli\u003e결제, 삭제, 배포처럼 되돌리기 어려운 행동을 승인 없이 수행하는 구조\u003c/li\u003e\n\u003cli\u003e단일 에이전트로 충분한데 역할만 늘린 다중 에이전트 구조\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e자율성은 이분법이 아니다. 추천만 하는 보조형, 제한된 읽기·쓰기만 허용한 실행형, 주요 단계마다 승인을 받는 감독형, 저위험 범위에서 장시간 동작하는 고자율형으로 나눌 수 있다. 업무 위험과 검증 능력에 맞춰 단계적으로 확장해야 한다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#5-루프-엔지니어링-검증-가능한-개선-과정을-설계한다\" class=\"anchor\" id=\"5-루프-엔지니어링-검증-가능한-개선-과정을-설계한다\"\u003e\u003c/a\u003e5. 루프 엔지니어링: 검증 가능한 개선 과정을 설계한다\u003c/h2\u003e\n\u003cp\u003e루프 엔지니어링은 단순한 재시도가 아니다. \u003cstrong\u003e생성 → 검증 → 실패 원인 분석 → 수정 전략 선택 → 재실행 → 종료 판단\u003c/strong\u003e을 명시적인 폐쇄형 피드백 시스템으로 만드는 것이다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#제대로-된-루프의-구성\" class=\"anchor\" id=\"제대로-된-루프의-구성\"\u003e\u003c/a\u003e제대로 된 루프의 구성\u003c/h3\u003e\n\u003col\u003e\n\u003cli\u003e\u003cstrong\u003e후보 생성:\u003c/strong\u003e 초안, 코드, 계획, 데이터 변환 결과를 만든다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e검증:\u003c/strong\u003e 테스트, 스키마, 참조 데이터, 정책, 근거 검사를 실행한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e원인 분류:\u003c/strong\u003e 지시 오류, 컨텍스트 누락, 도구 실패, 구현 결함, 평가기 결함을 구분한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e수정:\u003c/strong\u003e 실패 원인에 맞는 최소 변경을 적용한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e재실행:\u003c/strong\u003e 전체를 처음부터 반복하지 말고 필요한 단계부터 다시 수행한다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e종료:\u003c/strong\u003e 통과, 최대 반복 횟수, 비용 한도, 시간 한도, 불확실성 임계치 중 하나에서 멈춘다.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e회귀 보호:\u003c/strong\u003e 새 수정이 기존 성공 사례를 깨뜨리지 않았는지 확인한다.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003e에이전트 평가는 입력과 출력만 보는 단일 턴 평가보다 복잡하다. 에이전트는 여러 번 도구를 호출하고 환경 상태를 바꾸므로, 최종 결과뿐 아니라 과정과 환경 변화를 함께 검사해야 한다. 자동 평가의 핵심은 입력을 주고 출력 또는 변경된 상태에 채점 논리를 적용하는 것이다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#검증기의-우선순위\" class=\"anchor\" id=\"검증기의-우선순위\"\u003e\u003c/a\u003e검증기의 우선순위\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e결정적 검증:\u003c/strong\u003e 컴파일, 단위 테스트, 스키마, 수학적 제약, 권한 검사\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e참조 기반 검증:\u003c/strong\u003e 기준 데이터, 원문 인용, 데이터베이스 대조\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e규칙 기반 검증:\u003c/strong\u003e 금칙어, 필수 필드, 정책 조건\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e모델 기반 평가:\u003c/strong\u003e 문체, 의미 보존, 종합 품질처럼 규칙화가 어려운 항목\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e인간 평가:\u003c/strong\u003e 고위험 판단, 목표 자체의 타당성, 예외 승인\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e가능하면 결정적 검증을 먼저 사용하고, 모델 평가만으로 자기 결과를 자기 채점하게 하지 않는다. 모델 평가를 쓸 때는 평가 기준, 예시, 편향 점검, 표본 인간 검토를 함께 둔다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#다섯-방식은-계층이지-대체재가-아니다\" class=\"anchor\" id=\"다섯-방식은-계층이지-대체재가-아니다\"\u003e\u003c/a\u003e다섯 방식은 계층이지 대체재가 아니다\u003c/h2\u003e\n\u003cp\u003e실제 시스템에서는 다섯 방식이 함께 작동한다.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e프롬프트는 \u003cstrong\u003e현재 행동의 계약\u003c/strong\u003e을 만든다.\u003c/li\u003e\n\u003cli\u003e컨텍스트는 \u003cstrong\u003e판단에 필요한 상태와 근거\u003c/strong\u003e를 제공한다.\u003c/li\u003e\n\u003cli\u003e하네스는 \u003cstrong\u003e행동 가능한 환경과 안전장치\u003c/strong\u003e를 제공한다.\u003c/li\u003e\n\u003cli\u003e에이전틱 설계는 \u003cstrong\u003e다음 행동의 선택권\u003c/strong\u003e을 배분한다.\u003c/li\u003e\n\u003cli\u003e루프 설계는 \u003cstrong\u003e오류를 발견하고 품질을 수렴\u003c/strong\u003e시킨다.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e따라서 “컨텍스트 엔지니어링이 프롬프트 엔지니어링을 대체했다”거나 “에이전트를 쓰면 워크플로가 필요 없다”는 식의 이해는 부정확하다. 더 넓은 계층이 좁은 계층을 포함하거나 활용할 뿐이며, 단순한 문제에는 단순한 설계가 더 안정적일 수 있다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#실무-예시-버그를-수정하는-ai-코딩-시스템\" class=\"anchor\" id=\"실무-예시-버그를-수정하는-ai-코딩-시스템\"\u003e\u003c/a\u003e실무 예시: 버그를 수정하는 AI 코딩 시스템\u003c/h2\u003e\n\u003cp\u003e“로그인 후 특정 사용자만 500 오류가 발생한다”는 버그를 AI가 수정한다고 가정해 보자.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#프롬프트-엔지니어링\" class=\"anchor\" id=\"프롬프트-엔지니어링\"\u003e\u003c/a\u003e프롬프트 엔지니어링\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e오류 재현 조건을 확인하라.\u003c/li\u003e\n\u003cli\u003e공개 API는 변경하지 마라.\u003c/li\u003e\n\u003cli\u003e최소 수정으로 해결하라.\u003c/li\u003e\n\u003cli\u003e수정 후 테스트 결과와 남은 위험을 보고하라.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"#컨텍스트-엔지니어링\" class=\"anchor\" id=\"컨텍스트-엔지니어링\"\u003e\u003c/a\u003e컨텍스트 엔지니어링\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e이슈 설명과 오류 로그\u003c/li\u003e\n\u003cli\u003e관련 요청 추적 ID\u003c/li\u003e\n\u003cli\u003e인증·사용자 모델 관련 파일\u003c/li\u003e\n\u003cli\u003e최근 변경 내역\u003c/li\u003e\n\u003cli\u003e아키텍처 규칙과 코딩 표준\u003c/li\u003e\n\u003cli\u003e실패한 테스트와 실행 환경 정보\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"#하네스-엔지니어링\" class=\"anchor\" id=\"하네스-엔지니어링\"\u003e\u003c/a\u003e하네스 엔지니어링\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e저장소 검색, 파일 읽기·편집, 테스트 실행 도구\u003c/li\u003e\n\u003cli\u003e격리된 브랜치와 샌드박스\u003c/li\u003e\n\u003cli\u003e포맷터, 린터, 단위·통합 테스트\u003c/li\u003e\n\u003cli\u003e변경 금지 영역과 권한 정책\u003c/li\u003e\n\u003cli\u003e모든 명령과 파일 변경의 로그\u003c/li\u003e\n\u003cli\u003e실패 시 롤백과 체크포인트\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003ca href=\"#에이전틱-엔지니어링\" class=\"anchor\" id=\"에이전틱-엔지니어링\"\u003e\u003c/a\u003e에이전틱 엔지니어링\u003c/h3\u003e\n\u003cp\u003eAI가 재현, 가설 수립, 관련 코드 탐색, 패치, 테스트, 결과 요약의 순서를 상황에 따라 선택한다. 다만 배포나 데이터 변경은 인간 승인을 요구한다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#루프-엔지니어링\" class=\"anchor\" id=\"루프-엔지니어링\"\u003e\u003c/a\u003e루프 엔지니어링\u003c/h3\u003e\n\u003cp\u003e테스트가 실패하면 같은 명령을 반복하는 대신 실패 유형을 분류한다. 재현 실패라면 컨텍스트 수집을 보완하고, 회귀 실패라면 패치를 줄이며, 환경 오류라면 의존성과 설정을 복구한다. 모든 필수 테스트가 통과하고 변경 근거가 남으면 종료한다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#문제-증상으로-어떤-엔지니어링이-필요한지-찾는-법\" class=\"anchor\" id=\"문제-증상으로-어떤-엔지니어링이-필요한지-찾는-법\"\u003e\u003c/a\u003e문제 증상으로 어떤 엔지니어링이 필요한지 찾는 법\u003c/h2\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003e증상\u003c/th\u003e\n\u003cth\u003e우선 점검할 영역\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e출력 형식이나 문체가 자주 어긋난다\u003c/td\u003e\n\u003ctd\u003e프롬프트\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e답변에 필요한 사실·파일이 빠진다\u003c/td\u003e\n\u003ctd\u003e컨텍스트\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e도구를 잘못 고르거나 위험한 명령을 실행한다\u003c/td\u003e\n\u003ctd\u003e하네스와 권한 설계\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e고정 순서로는 처리하기 어려운 변형이 많다\u003c/td\u003e\n\u003ctd\u003e에이전틱 설계\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e첫 결과는 자주 틀리지만 자동 판정은 가능하다\u003c/td\u003e\n\u003ctd\u003e루프와 평가기\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e실패 원인을 알 수 없고 재현이 어렵다\u003c/td\u003e\n\u003ctd\u003e하네스의 관측성\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e반복할수록 비용만 늘고 품질이 나아지지 않는다\u003c/td\u003e\n\u003ctd\u003e원인 분류, 검증 신호, 종료 조건\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e자료가 많을수록 오히려 답이 나빠진다\u003c/td\u003e\n\u003ctd\u003e컨텍스트 정리와 검색 정책\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003ch2\u003e\u003ca href=\"#권장-구축-순서\" class=\"anchor\" id=\"권장-구축-순서\"\u003e\u003c/a\u003e권장 구축 순서\u003c/h2\u003e\n\u003ch3\u003e\u003ca href=\"#1단계-성공-기준과-평가-세트를-먼저-만든다\" class=\"anchor\" id=\"1단계-성공-기준과-평가-세트를-먼저-만든다\"\u003e\u003c/a\u003e1단계: 성공 기준과 평가 세트를 먼저 만든다\u003c/h3\u003e\n\u003cp\u003e대표 업무, 어려운 사례, 금지 사례를 모으고 결과를 어떻게 판정할지 정의한다. 정답 데이터가 없으면 최소한 스키마, 필수 근거, 정책 준수, 인간 평가 기준을 만든다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#2단계-단일-호출-기준선을-만든다\" class=\"anchor\" id=\"2단계-단일-호출-기준선을-만든다\"\u003e\u003c/a\u003e2단계: 단일 호출 기준선을 만든다\u003c/h3\u003e\n\u003cp\u003e가장 단순한 프롬프트와 필요한 최소 컨텍스트로 성능, 비용, 지연 시간을 측정한다. 기준선 없이 에이전트를 도입하면 복잡성의 효과를 구분하기 어렵다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#3단계-컨텍스트-공급을-계측한다\" class=\"anchor\" id=\"3단계-컨텍스트-공급을-계측한다\"\u003e\u003c/a\u003e3단계: 컨텍스트 공급을 계측한다\u003c/h3\u003e\n\u003cp\u003e어떤 문서와 도구 결과가 들어갔는지, 얼마나 오래됐는지, 실제 답변에 사용됐는지 기록한다. 검색 실패와 과도한 컨텍스트를 구분한다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#4단계-최소-하네스를-만든다\" class=\"anchor\" id=\"4단계-최소-하네스를-만든다\"\u003e\u003c/a\u003e4단계: 최소 하네스를 만든다\u003c/h3\u003e\n\u003cp\u003e도구 수를 줄이고 이름과 입력을 명확히 한다. 샌드박스, 최소 권한, 자동 테스트, 로그, 체크포인트를 우선한다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#5단계-제한된-자율성을-부여한다\" class=\"anchor\" id=\"5단계-제한된-자율성을-부여한다\"\u003e\u003c/a\u003e5단계: 제한된 자율성을 부여한다\u003c/h3\u003e\n\u003cp\u003e단일 에이전트가 읽기 중심의 저위험 업무부터 수행하게 한다. 종료 조건과 인간 이관 조건을 명시하고, 쓰기·삭제·결제·배포 권한은 별도로 승인한다.\u003c/p\u003e\n\u003ch3\u003e\u003ca href=\"#6단계-검증복구-루프를-닫는다\" class=\"anchor\" id=\"6단계-검증복구-루프를-닫는다\"\u003e\u003c/a\u003e6단계: 검증·복구 루프를 닫는다\u003c/h3\u003e\n\u003cp\u003e실패 분류, 수정 전략, 최대 반복 횟수, 비용 한도, 회귀 테스트를 연결한다. 성공률이 안정된 뒤에만 도구와 자율 범위를 넓힌다.\u003c/p\u003e\n\u003ch2\u003e\u003ca href=\"#운영-지표\" class=\"anchor\" id=\"운영-지표\"\u003e\u003c/a\u003e운영 지표\u003c/h2\u003e\n\u003cp\u003e보편적인 목표 수치는 없으므로 업무 위험과 비용에 맞춰 기준을 정해야 한다.\u003c/p\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003e지표\u003c/th\u003e\n\u003cth\u003e의미\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e과업 완료율\u003c/td\u003e\n\u003ctd\u003e최종 성공 기준을 충족한 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e1차 통과율\u003c/td\u003e\n\u003ctd\u003e반복 수정 없이 처음부터 통과한 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e복구율\u003c/td\u003e\n\u003ctd\u003e첫 실패 후 루프를 통해 성공한 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e평균 반복 횟수\u003c/td\u003e\n\u003ctd\u003e성공 또는 중단까지 필요한 사이클 수\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e도구 선택 오류율\u003c/td\u003e\n\u003ctd\u003e부적절하거나 불필요한 도구 호출 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e근거 완전성\u003c/td\u003e\n\u003ctd\u003e핵심 주장에 추적 가능한 출처가 있는 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e인간 개입률\u003c/td\u003e\n\u003ctd\u003e승인, 수정, 재지시가 필요했던 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e단위 성공당 비용·지연\u003c/td\u003e\n\u003ctd\u003e성공한 과업 하나를 완료하는 데 든 자원\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e안전 사건 수\u003c/td\u003e\n\u003ctd\u003e권한 위반, 잘못된 쓰기, 비가역 행동 발생 수\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e회귀 실패율\u003c/td\u003e\n\u003ctd\u003e새 변경이 기존 성공 사례를 깨뜨린 비율\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003ch2\u003e\u003ca href=\"#자주-발생하는-설계-실수\" class=\"anchor\" id=\"자주-발생하는-설계-실수\"\u003e\u003c/a\u003e자주 발생하는 설계 실수\u003c/h2\u003e\n\u003cdiv class=\"overflow-x-auto\"\u003e\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003e영역\u003c/th\u003e\n\u003cth\u003e실수\u003c/th\u003e\n\u003cth\u003e개선 방법\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e프롬프트\u003c/td\u003e\n\u003ctd\u003e모든 예외를 한 문장에 누적한다\u003c/td\u003e\n\u003ctd\u003e규칙을 구조화하고 대표 예시와 평가를 분리한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e프롬프트\u003c/td\u003e\n\u003ctd\u003e성공 기준 없이 “잘 작성하라”고 지시한다\u003c/td\u003e\n\u003ctd\u003e형식, 필수 내용, 금지 사항, 판정 기준을 명시한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e컨텍스트\u003c/td\u003e\n\u003ctd\u003e관련 없는 문서를 모두 넣는다\u003c/td\u003e\n\u003ctd\u003e런타임 검색과 단계별 컨텍스트를 사용한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e컨텍스트\u003c/td\u003e\n\u003ctd\u003e오래된 정책과 최신 정책을 함께 제공한다\u003c/td\u003e\n\u003ctd\u003e버전·유효일·기준 원본을 관리한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e하네스\u003c/td\u003e\n\u003ctd\u003e기능이 겹치는 도구를 많이 제공한다\u003c/td\u003e\n\u003ctd\u003e최소 도구 집합과 명확한 파라미터를 설계한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e하네스\u003c/td\u003e\n\u003ctd\u003e쓰기 권한과 되돌리기 기능이 없다\u003c/td\u003e\n\u003ctd\u003e최소 권한, 샌드박스, 체크포인트를 둔다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e에이전틱\u003c/td\u003e\n\u003ctd\u003e처음부터 다중 에이전트를 만든다\u003c/td\u003e\n\u003ctd\u003e단일 에이전트와 결정적 워크플로부터 검증한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e에이전틱\u003c/td\u003e\n\u003ctd\u003e완료 조건 없이 계속 실행하게 한다\u003c/td\u003e\n\u003ctd\u003e명시적 종료·예산·이관 조건을 둔다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e루프\u003c/td\u003e\n\u003ctd\u003e같은 요청을 그대로 반복한다\u003c/td\u003e\n\u003ctd\u003e실패 원인을 분류하고 수정 지점을 바꾼다\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e루프\u003c/td\u003e\n\u003ctd\u003e생성 모델 하나로 모든 결과를 자기 평가한다\u003c/td\u003e\n\u003ctd\u003e결정적 검사, 참조 대조, 인간 표본 검토를 조합한다\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\u003c/div\u003e\n\u003ch2\u003e\u003ca href=\"#구현-체크리스트\" class=\"anchor\" id=\"구현-체크리스트\"\u003e\u003c/a\u003e구현 체크리스트\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e 성공 조건이 문장뿐 아니라 가능한 범위에서 기계적으로 검사 가능한가?\u003c/li\u003e\n\u003cli\u003e 프롬프트, 참고 자료, 도구 결과의 우선순위가 분리되어 있는가?\u003c/li\u003e\n\u003cli\u003e 문서의 출처, 버전, 유효일과 소유자를 추적할 수 있는가?\u003c/li\u003e\n\u003cli\u003e 도구 이름과 파라미터가 서로 겹치지 않고 명확한가?\u003c/li\u003e\n\u003cli\u003e 읽기, 쓰기, 삭제, 결제, 배포 권한이 위험도별로 분리되어 있는가?\u003c/li\u003e\n\u003cli\u003e 실패를 격리할 샌드박스와 되돌리기 수단이 있는가?\u003c/li\u003e\n\u003cli\u003e 모든 중요 행동과 도구 호출을 재현 가능한 형태로 기록하는가?\u003c/li\u003e\n\u003cli\u003e 테스트, 스키마, 정책 검사 등 외부 검증기가 있는가?\u003c/li\u003e\n\u003cli\u003e 최대 반복 횟수, 비용, 시간, 인간 이관 조건이 정의되어 있는가?\u003c/li\u003e\n\u003cli\u003e 새 개선이 기존 사례를 깨뜨리지 않는 회귀 평가가 있는가?\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"#결론\" class=\"anchor\" id=\"결론\"\u003e\u003c/a\u003e결론\u003c/h2\u003e\n\u003cp\u003e좋은 AI 시스템은 가장 긴 프롬프트를 가진 시스템이 아니다. 실패가 \u003cstrong\u003e지시\u003c/strong\u003e, \u003cstrong\u003e정보\u003c/strong\u003e, \u003cstrong\u003e환경\u003c/strong\u003e, \u003cstrong\u003e의사결정\u003c/strong\u003e, \u003cstrong\u003e검증·복구\u003c/strong\u003e 중 어디에서 발생했는지 구분하고, 해당 계층에 가장 단순한 해결책을 배치한 시스템이다. 먼저 성공 기준과 단일 호출 기준선을 만들고, 필요한 만큼만 컨텍스트와 하네스를 보강한 뒤, 검증 가능한 범위에서 자율성과 반복 루프를 확장하는 것이 안정적인 접근이다.\u003c/p\u003e\n","tags":["프롬프트 엔지니어링","컨텍스트 엔지니어링","하네스 엔지니어링","AI 에이전트","AI 평가"],"faqs":[{"question":"다섯 엔지니어링 방식은 반드시 순서대로 도입해야 하나요?","answer":"고정된 성숙도 단계는 아니다. 다만 성공 기준과 단일 호출 기준선을 만든 뒤 프롬프트와 컨텍스트를 정리하고, 필요할 때 하네스·자율성·반복 루프를 추가하면 복잡성의 효과를 측정하기 쉽다."},{"question":"컨텍스트 엔지니어링이 프롬프트 엔지니어링을 대체하나요?","answer":"대체하지 않는다. 프롬프트는 해야 할 행동과 출력 계약을 정의하고, 컨텍스트는 그 행동에 필요한 사실·상태·근거를 제공한다. 좋은 시스템은 둘을 함께 설계한다."},{"question":"컨텍스트 엔지니어링과 하네스 엔지니어링의 차이는 무엇인가요?","answer":"컨텍스트 엔지니어링은 특정 순간 모델이 보는 정보에 초점을 둔다. 하네스 엔지니어링은 그 정보를 찾고 행동을 수행하며 결과를 검사하는 도구, 권한, 실행 환경, 문서 구조, 로그와 복구 장치까지 포함한다."},{"question":"에이전트와 일반 워크플로 자동화는 어떻게 다른가요?","answer":"일반 워크플로는 미리 정의된 순서와 분기를 따르는 반면, 에이전트는 현재 상태를 해석해 다음 행동과 도구를 동적으로 선택한다. 규칙이 안정적인 업무는 결정적 워크플로가 더 저렴하고 예측 가능할 수 있다."},{"question":"루프 엔지니어링은 단순 재시도와 무엇이 다른가요?","answer":"단순 재시도는 같은 조건에서 다시 생성할 뿐이다. 루프 엔지니어링은 외부 검증 신호로 실패를 확인하고 원인을 분류한 뒤, 프롬프트·컨텍스트·도구·구현 중 필요한 부분을 수정하며 종료 조건과 회귀 검사를 적용한다."},{"question":"언제 다중 에이전트를 사용해야 하나요?","answer":"역할별 도구와 권한이 뚜렷하게 다르고, 한 에이전트의 컨텍스트나 도구 집합이 지나치게 커져 성능과 평가가 악화될 때 고려한다. 단순한 역할 분담만을 위해 여러 에이전트를 만들면 비용, 지연, 오류 전파와 디버깅 난도가 증가할 수 있다."},{"question":"AI가 자신의 결과를 평가하게 해도 되나요?","answer":"보조 신호로는 사용할 수 있지만 유일한 검증기로 삼는 것은 위험하다. 가능하면 테스트, 스키마, 참조 데이터와 정책 규칙을 먼저 적용하고, 모델 평가는 명시적 루브릭과 인간 표본 검토로 보완해야 한다."},{"question":"하네스 문서에는 무엇을 넣어야 하나요?","answer":"반복되는 작업 절차, 저장소와 시스템 구조, 허용·금지 행동, 도구 사용법, 좋은·나쁜 예시, 테스트 명령, 장애 대응, 승인 정책과 완료 기준을 넣는다. 문서는 짧고 검색 가능하며 버전 관리되어야 한다."},{"question":"외부 문서를 컨텍스트에 넣을 때 가장 중요한 보안 원칙은 무엇인가요?","answer":"외부 문서는 신뢰할 수 없는 데이터로 취급하고 시스템 지침과 분리해야 한다. 문서 속 명령을 실행하지 않도록 도구 권한을 최소화하고, 중요한 쓰기·삭제·결제·배포 행동에는 별도 정책 검사와 인간 승인을 둔다."},{"question":"소규모 팀은 어디서 시작하는 것이 좋나요?","answer":"작은 대표 평가 세트와 실패 사례를 모아 단일 모델 호출의 기준선을 측정한다. 이후 가장 큰 실패 원인이 지시, 정보, 도구 환경, 계획, 검증 중 어디에 있는지 확인해 한 계층씩 개선하는 것이 효율적이다."}],"sources":[{"url":"https://platform.claude.com/docs/ko/build-with-claude/prompt-engineering/overview","title":"프롬프트 엔지니어링 개요 - Claude Platform Docs","type":"source"},{"url":"https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents","title":"Effective context engineering for AI agents","type":"source"},{"url":"https://openai.com/index/harness-engineering/","title":"Harness engineering: leveraging Codex in an agent-first world","type":"source"},{"url":"https://www.anthropic.com/engineering/building-effective-agents","title":"Building effective agents","type":"source"},{"url":"https://openai.com/business/guides-and-resources/a-practical-guide-to-building-ai-agents/","title":"A practical guide to building agents","type":"source"},{"url":"https://www.anthropic.com/engineering/demystifying-evals-for-ai-agents","title":"Demystifying evals for AI agents","type":"source"},{"url":"https://martinfowler.com/articles/harness-engineering.html","title":"Harness engineering for coding agent users","type":"source"}],"images":[{"id":192,"url":"https://injoys.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTg0NywicHVyIjoiYmxvYl9pZCJ9fQ==--9f1b84d1d297642915a0d27477d3800017987668/ChatGPT%20Image%202026%E1%84%82%E1%85%A7%E1%86%AB%207%E1%84%8B%E1%85%AF%E1%86%AF%2016%E1%84%8B%E1%85%B5%E1%86%AF%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%2004_12_32.webp","is_representative":true,"generation_method":"upload","mime_type":"image/webp","original_filename":"ChatGPT Image 2026년 7월 16일 오후 04_12_32.png","translations":{"ko":{"alt":"중앙 AI 허브와 지시, 정보, 도구, 자율 실행, 검증 루프 모듈이 연결된 시스템 구조","caption":"다섯 가지 AI 엔지니어링 방식이 하나의 시스템에서 연결되고 반복 개선되는 구조를 보여준다.","description":null},"en":{"alt":"Central AI hub connected to instruction, context, tools, autonomous action, and validation loop modules","caption":"The illustration shows five AI engineering approaches working together in a connected improvement cycle.","description":null},"ja":{"alt":"中央のAIハブに指示、情報、ツール、自律実行、検証ループの各モジュールが接続された構成","caption":"5つのAIエンジニアリング手法が連携し、反復的に改善される仕組みを表している。","description":null},"es":{"alt":"Núcleo central de IA conectado con módulos de instrucciones, contexto, herramientas, acción autónoma y validación","caption":"La ilustración muestra cinco enfoques de ingeniería de IA integrados en un ciclo de mejora continua.","description":null},"id":{"alt":"Pusat AI terhubung ke modul instruksi, konteks, alat, tindakan otonom, dan siklus validasi","caption":"Ilustrasi ini menunjukkan lima pendekatan rekayasa AI yang bekerja bersama dalam siklus perbaikan.","description":null},"pt":{"alt":"Núcleo central de IA ligado a módulos de instruções, contexto, ferramentas, ação autônoma e validação","caption":"A ilustração mostra cinco abordagens de engenharia de IA integradas em um ciclo contínuo de melhoria.","description":null},"zh-hant":{"alt":"中央 AI 核心連接指令、情境、工具、自主執行與驗證迴圈模組的系統架構","caption":"圖中呈現五種 AI 工程方法如何協同運作並形成持續改進的循環。","description":null}}},{"id":193,"url":"https://injoys.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTg1NCwicHVyIjoiYmxvYl9pZCJ9fQ==--47acd549387f7a60f4c18de6ac673ca1b551dd36/ChatGPT%20Image%202026%E1%84%82%E1%85%A7%E1%86%AB%207%E1%84%8B%E1%85%AF%E1%86%AF%2016%E1%84%8B%E1%85%B5%E1%86%AF%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%2004_36_26.webp","is_representative":false,"generation_method":"upload","mime_type":"image/webp","original_filename":"ChatGPT Image 2026년 7월 16일 오후 04_36_26.png","translations":{"ko":{"alt":"지시 설정부터 정보 선별, 안전 환경, 자율 실행, 검증 반복까지 이어지는 AI 구축 파이프라인","caption":"AI 시스템을 단계적으로 설계하고 검증 결과를 앞 단계에 반영하는 실무 흐름을 보여준다.","description":null},"en":{"alt":"AI build pipeline from instruction setup and context filtering to safe execution, autonomous action, and validation loops","caption":"The illustration shows a step-by-step AI workflow with feedback loops returning results to earlier stages.","description":null},"ja":{"alt":"指示設定、情報選別、安全な実行環境、自律動作、検証ループへ続くAI構築パイプライン","caption":"AIシステムを段階的に設計し、検証結果を前の工程へ反映する流れを示している。","description":null},"es":{"alt":"Flujo de creación de IA con instrucciones, filtrado de contexto, entorno seguro, acción autónoma y validación iterativa","caption":"La ilustración muestra un proceso gradual de diseño de IA con ciclos de retroalimentación hacia etapas anteriores.","description":null},"id":{"alt":"Alur pembangunan AI dari pengaturan instruksi dan penyaringan konteks hingga eksekusi aman, tindakan otonom, dan validasi","caption":"Ilustrasi ini menunjukkan tahapan perancangan sistem AI dengan umpan balik ke proses sebelumnya.","description":null},"pt":{"alt":"Fluxo de construção de IA com instruções, filtragem de contexto, ambiente seguro, ação autônoma e validação iterativa","caption":"A ilustração mostra um processo gradual de projeto de IA com ciclos de retorno às etapas anteriores.","description":null},"zh-hant":{"alt":"從指令設定、情境篩選與安全環境，到自主執行和反覆驗證的 AI 建置流程","caption":"圖中呈現 AI 系統的分階段設計流程，以及驗證結果回饋至前序階段的機制。","description":null}}},{"id":194,"url":"https://injoys.com/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6MTg2MSwicHVyIjoiYmxvYl9pZCJ9fQ==--31d0c984f5273bce116022438efdbbf24d086656/ChatGPT%20Image%202026%E1%84%82%E1%85%A7%E1%86%AB%207%E1%84%8B%E1%85%AF%E1%86%AF%2016%E1%84%8B%E1%85%B5%E1%86%AF%20%E1%84%8B%E1%85%A9%E1%84%92%E1%85%AE%2004_47_39.webp","is_representative":false,"generation_method":"upload","mime_type":"image/webp","original_filename":"ChatGPT Image 2026년 7월 16일 오후 04_47_39.png","visible_locales":["ko"],"translations":{"ko":{"alt":"프롬프트부터 루프까지 AI 엔지니어링 5가지의 역할, 작동 흐름, 지표와 구축 순서를 정리한 인포그래픽","caption":"다섯 AI 엔지니어링 방식의 핵심 요소와 단계별 적용·검증 구조를 한눈에 보여준다.","description":null},"en":{"alt":"Infographic comparing five AI engineering approaches with their roles, workflow, metrics, and recommended build order","caption":"The infographic summarizes how five AI engineering approaches connect, operate, and improve system quality.","description":null},"ja":{"alt":"5つのAIエンジニアリング手法の役割、動作フロー、指標、構築順序を整理したインフォグラフィック","caption":"5つの手法の主要要素と段階的な適用・検証の仕組みを一覧で示している。","description":null},"es":{"alt":"Infografía de cinco enfoques de ingeniería de IA con funciones, flujo, métricas y orden recomendado de implementación","caption":"La infografía resume cómo se conectan, se aplican y se evalúan cinco enfoques de ingeniería de IA.","description":null},"id":{"alt":"Infografik lima pendekatan rekayasa AI beserta peran, alur kerja, metrik, dan urutan pembangunan yang disarankan","caption":"Infografik ini merangkum hubungan, penerapan bertahap, dan evaluasi lima pendekatan rekayasa AI.","description":null},"pt":{"alt":"Infográfico de cinco abordagens de engenharia de IA com funções, fluxo, métricas e ordem recomendada de implementação","caption":"O infográfico resume como cinco abordagens de engenharia de IA se conectam, operam e são avaliadas.","description":null},"zh-hant":{"alt":"整理五種 AI 工程方法之角色、運作流程、評估指標與建置順序的資訊圖表","caption":"圖表呈現五種 AI 工程方法的核心要素、連接方式及分階段驗證流程。","description":null}}}],"published_at":"2026-07-16T17:00:54+09:00","updated_at":"2026-07-16T17:00:54+09:00","license":"cc_by","translation_status":"original","available_locales":["ko","en","ja","es"],"data_locales":["ko","en","ja","es","id","pt","zh-hant"],"url":"https://injoys.com/ko/articles/prompt-context-harness-agentic-loop-engineering"}