코드 에이전트가 장시간 오랫동안 목적을 지속적으로 수행하도록 하기 위한 작업이다. 적절한 가이드를 제공함으로써 개발 과정의 효율을 높일 수도 있고 돌발 상황에 대한 안전장치가 될 수도 있다.
Harness를 다루기 전에 코드 에이전트와 관련된 여러 가지 용어와 기술에 대해서 알아보자.
코드 에이전트에서 우선적으로 사용되는 규칙, 지침 파일이다.
코드 에이전트별로 다르며 Claude code에서는 CLAUDE.md 파일을 사용한다.

context window:
모델이 한 번에 받아들이는 입력 내용의 영역으로 크기가 제한되어 있다.
에이전트에게 특정 작업을 수행하는 방법을 정의하여, 재사용 가능한 지식, 능력 패키지이다. AGENTS.md와 달리, on-demand 방식으로 필요할 때만 동적으로 불러온다.
각 Skill은 SKILL.md 파일을 가지는데 여기에는 Skill의 metadata (name, description) 정보가 함께 들어있다. 코드 에이전트는 스킬 목록에서 metadata를 불러와서 스킬을 로드할지 판단한다.
코드 에이전트에서 수많은 외부 서비스를 통일된 방식으로 연결하기 위한 표준 프로토콜이다.
단일 에이전트에서 복잡한 업무를 처리할 때 Context Window에 입력된 많은 정보로 성능이 떨어질 수 있다. 멀티 에이전트는 복잡한 업무를 여러 단계로 나누어 각각의 전문가(서브 에이전트)에게 업무를 분배하고 다음과 같은 특성을 이용하여 효율적으로 처리한다.
궁금한 점
모델이 100k의 컨텍스트를 지원한다고 할 때, 멀티 에이전트로 구성할 경우 각 서브 에이전트는 100k의 컨텍스트를 가질까? => Yes
멀티 에이전트의 단점
토큰 소비량이 많아진다. 각 에이전트 별로 독립된 Context를 가지기 때문에, 초기화 비용이 중복으로 발생한다.
https://github.com/multica-ai/andrej-karpathy-skills
https://github.com/multica-ai/andrej-karpathy-skills/blob/main/CLAUDE.md
AI 코딩 에이전트의 흔한 실수를 줄이기 위해 사용되는 유명한 지침 (2026-07 기준 Github Stars 수 약 200k)
이런 기본적인 하네스를 구성하는 것도 좋지만, 이는 LLM, 코드 에이전트가 발전할수록 필요성이 떨어질 것이다.
나의 프로젝트에 맞게 최적화된 Harness를 구성하는 것이 더 중요하다.
Superpowers Skill의 /brainstorming을 사용하면 질의응답을 통해, 모도한 요구사항을 더 명확하게 만들 수 있다.
단계별로 어떤 내용을 개발할지 계획
각 Phase 별로 동작되어야 하며 사람이 직접 테스트 가능해야 한다.
코드 품질을 높이기 위해 각 Phase 마다, 4단계 작업을 구성하고 각 에이전트가 이를 담당하게 구성한다.
ex) claude
.claude/
├── agents/
│ ├── coder.md # 구현 (Coding)
│ ├── tester.md # 테스트 작성·실행 (Test)
│ ├── reviewer.md # 정확성/보안/품질 리뷰 (Review)
│ └── verifier.md # end-to-end 동작 검증 (Verify)
Claude Code 전용 기능
서브 에이전트들의 Workflow를 구성하여 실행해 주는 JavaScript 코드를 만들어 준다.

일부 작업이 실패하더라도 개발 수행이 중단되지 않도록 하는 안전장치(Harness)가 필요하다. 각 에이전트 수행 중 실패 시 코드 수정 후, 다시 test 단계로 되돌아가는 피드백 루프를 추가한다.
Harness Engineering 잘하기 위해서 많이 사용되는 AI Harness를 적용해 보면 좋을 것 같다.