도현우
Methodology

Harness-Driven Development

HDD — AI를 가상 IT 조직처럼 운용하는 OS

“AI의 출력 품질은 프롬프트의 길이가 아니라, 시스템이 가하는 제약(Harness)의 강도에 비례한다.”

왜 만들었나

Problem 1

“기존 컨벤션 지켜줘” — 새 컨텍스트 창이 열리면 AI는 모든 약속을 망각. 프롬프트는 규칙이 아니다.

Problem 2

자유도가 높을수록 환각·에이전트 표류. 코드베이스가 수만 줄을 넘으면 관련 없는 파일을 탐색하다가 멀쩡한 코드를 망가뜨림.

Problem 3

1인 개발자는 PM/디자이너/백엔드/프론트/QA/마케팅을 동시 고용 불가. 지치지 않는 가상 팀이 필요.

5가지 통제 정책

Persona Isolation

  • · 6개 AI 페르소나(PM/Designer/Backend/Frontend/QA/Marketing) 권한 격리
  • · 각 페르소나는 허가된 경로 외 접근 불가
  • · 타 영역 침범 시 자동 차단

Dependency Blinding

  • · depcruise + ast-grep으로 영향받는 파일만 컨텍스트에 주입
  • · AI가 코드베이스 무분별 탐색하는 것을 원천 차단
  • · 1평짜리 독방으로 주의력 집중

AST 기반 변환 강제

  • · 텍스트 편집 금지, ts-morph 스크립트로만 리팩토링
  • · Props 변경, 시그니처 변경, 리네이밍 모두 AST
  • · 괄호 누락·오탈자 물리적 차단

State Machine

  • · 10~15개 파일 단위 원자적 배치로 분절
  • · batch_N.md로 상태 영속화
  • · 컨텍스트 소실 후에도 100% 복원

Circuit Breaker

  • · 동일 에러 3회 실패 시 자동 중단
  • · 구조화된 핸드오버 보고서 출력
  • · 재시도 없이 인간에게 제어권 반환

외주 A→Z 파이프라인

STEP 1
외주 수주
크몽/위시켓
STEP 2
PRD 작성
PM 페르소나
STEP 3
UI 명세
Designer 페르소나
STEP 4
배치 분할
원자적 배치
STEP 5
개발 배치
Dev + AST
STEP 6
QA / GitOps
QA + PR 자동화
STEP 7
납품
패키징 + 인수인계

하네스 실전 코드

Dependency Blinding — 영향 파일만 컨텍스트 주입
# 단일 파일 변경 시 영향 파악
npx depcruise src --focus "src/components/Portfolio/Card.tsx" \
  --output-type json | jq -r '.modules[].source'

# 스키마 변경 시 영향 파악
npx depcruise src --include-only "^src/(components|hooks|app)" \
  --focus "src/generated/graphql.ts" \
  --output-type json | jq -r '.modules[] | select(.dependents | length > 0) | .source'

# 특정 심볼(타입, 함수) 사용처 탐색
ast-grep --pattern 'PortfolioCardProps' --lang tsx
AI가 전체 코드베이스를 자유 탐색하지 못하도록 물리적으로 차단.
Circuit Breaker — 무한 루프 차단
[🚨 CIRCUIT BREAKER TRIGGERED — HUMAN HANDOVER REQUIRED]
시도 횟수      : 3/3
실패 단계      : [build/lint/test/e2e]
에러 메시지    : [full error text]
영향 파일      : [list]
근본 원인 추정 : [analysis]
권장 조치      : [next steps for human]

# Do not retry without explicit human instruction.
동일 에러 3회 실패 시 작업을 즉시 중단하고 인간에게 제어권 반환.
Result — Benchlink PMS 마이그레이션 실전 검증
3배
개발 가속
$600
총 투자 비용
12개
도메인 마이그레이션
30건
AI 배치 처리

예상 3개월 분량의 Firebase → GCP Spanner 마이그레이션을 1개월에 완수. ROI 약 300%. 사내 Vibe Coding · HDD 방법론 표준화 및 전파.

Persona IsolationDependency BlindingAST ManipulationState MachineCircuit BreakerGitOpsVibe Coding