Skip to content

하네스 개발 방법론

프로젝트에 하네스 개발 방법론(Harness Engineering) 적용을 위한 절차

  1. 프로젝트 초기에 아래의 항목들에 대해서 CLAUDE.md 파일에 정리하고 규칙을 확정해서 진행한다.
  2. 프로젝트 중반에 규칙을 변경하면 리팩토링 이슈가 생기고 사이드 이펙트로 없던 버그가 발생하여 수정에 많은 시간을 사용하게 된다.
  3. AI 에이전트를 활용하면 사람이 일주일동안 개발할 분량을 한시간 이내에 개발이 가능하다. 개발 분량이 많아도 AI 에이전트를 활용하면 단기간에 많은 분량을 충분히 쳐낼 수 있다.
  4. 프로젝트 초반에 규칙을 정리하는데 시간을 사용하는것이 향후 프로젝트를 유연하게 진행할 수 있다.

프레임워크

프로젝트의 구성 요소들이 충분하게 통합되어있는 안정된 프레임워크를 사용한다.

형상관리 브랜치 규칙 정리

작업 브랜치와 배포 브랜치, 마스터 브랜치의 역할을 상세하게 정의하고, 머지 시점에 대해서도 확정해야 한다.

프런트앤드 개발 규칙 정리

모던 자바스크립트와 코딩 스타일, 디렉토리 구조와 형식에 대한 규칙을 정의한다.

백앤드 개발 규칙 정리

모던 자바와 코딩 스타일, 디렉토리 구조와 형식에 대한 규칙을 정의한다.

템플릿 코드 작성

에이전트가 코드를 작성하기 위한 가이드 역할을 할 수 있는 템플릿 코드를 작성한다. CRUD를 비롯한 범용 메소드를 광범위하게 참조할 수 있는 샘플이면 좋다.

데이터베이스 개발 규칙 정리

데이터베이스 연결에 대한 규칙을 정의한다.

인터페이스 개발 규칙 정리

인터페이스 연결에 대한 규칙을 정의한다.

테스트

모든 영역에서 테스트를 적극적으로 도입해야 한다.

문서로 정리

AI가 지켜야 하는 규칙은 CLAUDE.md 파일에 작성하고 개발 가이드는 별도 문서로 정리한다(예- README.md).

클로드 코드 프롬프트에서 아래와 같이 요청하면 된다. CLAUDE.md 파일만 업데이트되면 되기 때문에 각자의 방식을 사용할 수도 있다.

  1. 프롬프트에 직접 룰를 입력하고 규칙에 추가해 달라고 요청

    커밋 메시지 포매팅 규칙은 `Conventional Commits` 방식을 따른다. 규칙에 등록하고 엄격하게 적용해 줘
  2. 프롬프트에 *에 대해서 어떻게 생각해? 라고 물어본뒤 출력 리포트를 확인후 규칙에 추가해 줘 하고 요청

    master 브랜치에 직접 push하는것에 대해 어떻게 생각해?
    ... AI의 출력 리포트 확인...
    그러면 규칙에 추가하고 엄격하게 적용해 줘
  1. 런타임에 사용 가능한 메모리 크기는 한정되어 있기 때문에 너무 광범위한 요청을 작성하면 정상적으로 완료되지 않을 가능성이 있다.
  2. 하나의 요청에는 하나의 목적만 담는다. 여러 작업을 한 번에 요청하면 결과를 검증하기 어렵고, 문제가 생겼을 때 원인을 특정하기도 어렵다.
  3. 요청 전에 관련 파일 경로나 기존 코드/문서를 먼저 언급해서 컨텍스트를 좁혀준다. AI가 불필요한 탐색 과정 없이 정확한 위치에서 작업을 시작할 수 있다.
  4. “정리해줘”, “잘 만들어줘”처럼 애매한 표현보다는 구체적인 조건과 기대 결과를 명시한다(예- “OO 규칙에 맞춰 XX 항목을 추가해줘”).
  5. 결과물을 받으면 바로 다음 요청으로 넘어가지 말고 리뷰 후 피드백을 준다. 반복할수록 규칙과 컨벤션이 정교해진다.