Series 21 — Claude Code Field Guide · Part III

자율 주행 모드

테스트를 주면 Claude는 혼자 달린다. 감독에서 위임으로 전환하는 핵심 기술.

Part I — The Verification Loop

검증이 자율을 만든다

Tip 09 — Complete the Write-Test Cycle

검증 수단을 제공하면 Claude는 자율적으로 작업할 수 있다

단위 테스트, Playwright, git bisect, tmux — 어떤 것이든 "이게 맞는지 확인할 방법"을 주면 Claude는 스스로 시도하고 수정하는 루프에 들어간다.

대부분의 사용자는 Claude Code를 "명령-확인-수정"의 감독 모드로 쓴다. 코드를 쓰게 하고, 결과를 확인하고, 문제가 있으면 다시 지시하는 방식이다. 이것은 쓸모없는 건 아니지만 생산성의 절반만 활용하는 것이다.

진짜 생산성 폭발은 "자율 모드"에서 일어난다. Claude에게 코드를 쓰게 하고, 테스트를 돌리게 하고, 실패하면 수정하게 하고, 다시 테스트를 돌리게 하는 루프를 구축하면 — 당신이 커피를 마시는 동안 Claude가 일을 끝낸다.

01 작업 지시 무엇을 만들지
명확하게 지시
02 코드 작성 Claude가
코드를 생성
03 자동 검증 테스트 실행
결과 확인
04 자동 수정 실패 시
스스로 수정

이 루프의 핵심은 03번(자동 검증)이다. 검증 수단이 없으면 Claude는 "이게 맞는 것 같습니다"라고 말할 수밖에 없다. 하지만 테스트가 있으면 "테스트가 통과했습니다" 또는 "3개가 실패해서 수정하겠습니다"라고 구체적으로 행동한다.

자율 모드 프롬프트 예시 # 검증 수단을 명시적으로 알려준다 "auth 모듈을 리팩토링해줘. 테스트는 npm test로 돌릴 수 있어. 모든 테스트가 통과할 때까지 수정을 반복해줘. 중간에 확인 받지 않아도 돼."

마지막 줄이 핵심이다. "중간에 확인 받지 않아도 돼"라고 명시하면 Claude는 매 수정마다 멈추지 않고 연속적으로 작업한다. 물론 이를 위해서는 충분한 테스트 커버리지가 전제되어야 한다.

Part II — Test-Driven Development

테스트를 먼저 쓴다

Tip 34 — Write Lots of Tests (and Use TDD)

Claude는 테스트 작성에 뛰어나다. 이것을 활용하지 않는 건 낭비다

테스트-주도 개발(TDD)은 Claude Code와 궁합이 가장 좋은 방법론이다. 테스트가 자율 작업의 가드레일이 된다.

많은 개발자가 테스트를 "나중에" 쓴다. 기능 구현이 먼저고, 테스트는 시간이 남으면 하는 것. Claude Code를 쓰면 이 순서가 뒤집혀야 한다. 테스트를 먼저 쓰면, Claude의 자율 작업 품질이 비약적으로 올라간다.

Without TDD

테스트 없이 코딩

Claude가 코드를 쓴다. "이게 맞나?" 직접 실행해서 확인한다. 문제 발견. 다시 지시한다. 3-4번 왕복 후에야 원하는 결과를 얻는다.

With TDD

테스트 먼저 작성

먼저 테스트를 작성하게 한다. 그 다음 구현을 시킨다. Claude는 테스트를 돌리며 스스로 수정한다. 당신은 최종 결과만 확인하면 된다.

TDD 워크플로우 # 1단계: 테스트부터 작성하게 한다 "결제 모듈의 테스트를 먼저 작성해줘. - 정상 결제 성공 - 잔액 부족 실패 - 중복 결제 방지 - 환불 처리 아직 구현은 하지 마." # 2단계: 테스트를 통과하도록 구현 "이제 모든 테스트가 통과하도록 결제 모듈을 구현해줘. npm test로 확인하면서 진행해."

이 방식의 부수 효과도 있다. 테스트가 요구사항의 명세 역할을 한다. "정상 결제 성공"이라는 테스트 케이스 이름 자체가 Claude에게 무엇을 구현해야 하는지 알려준다. 별도의 긴 설명이 필요 없다.

Part III — Git Like a Pro

Git을 프로처럼

Tip 04 — Using Git and GitHub CLI Like a Pro

Git 조작과 GitHub CLI를 Claude에게 위임하라

커밋, 브랜치, PR 생성까지 Claude가 처리한다. 드래프트 PR로 안전하게 운영하고, GitHub GraphQL API로 고급 작업도 가능하다.

Claude Code는 터미널에서 동작하므로 Git과 GitHub CLI(gh)를 네이티브로 사용할 수 있다. 이것을 활용하지 않고 직접 git 명령어를 치는 건 통역관에게 직접 외국어로 말하는 것과 같다.

Claude에게 Git 위임 # 커밋 메시지 자동 생성 "변경사항을 확인하고 적절한 커밋 메시지로 커밋해줘" # 드래프트 PR 생성 (안전한 방법) "이 브랜치의 변경사항으로 드래프트 PR을 만들어줘. 제목과 설명은 변경사항을 기반으로 작성해" # 고급: GraphQL 쿼리 "gh api graphql로 이 레포의 최근 10개 PR 상태를 가져와줘"

핵심은 드래프트 PR이다. Claude가 만든 PR을 바로 머지하는 건 위험하다. 드래프트로 만들면 CI가 돌아가고, 코드 리뷰를 할 수 있고, 문제가 있으면 수정할 수 있다. 안전망을 유지하면서 자동화의 이점을 누리는 방법이다.

Part IV — Git Worktrees

두 개의 브랜치를 동시에

Tip 16 — Git Worktrees for Parallel Branch Work

git worktree로 브랜치 전환 없이 병렬 작업하라

별도의 작업 디렉토리를 만들어 서로 다른 브랜치를 동시에 편집한다. Claude Code 멀티 인스턴스와 조합하면 병렬 개발이 가능하다.

일반적인 Git 워크플로우에서 브랜치를 전환하면 작업 디렉토리의 파일이 바뀐다. 빌드 캐시가 날아가고, 에디터가 파일을 다시 로드한다. worktree는 이 문제를 해결한다. 하나의 레포에서 여러 브랜치를 각각 다른 디렉토리로 체크아웃한다.

Git Worktree 기본 사용법 # 새 worktree 생성 (feat-auth 브랜치를 ../auth-work에) $ git worktree add ../auth-work feat-auth # 이제 두 터미널을 열 수 있다 # 터미널 1: ./main-project (main 브랜치) $ claude # Claude 인스턴스 1 - 메인 작업 # 터미널 2: ./auth-work (feat-auth 브랜치) $ claude # Claude 인스턴스 2 - 인증 모듈 작업 # worktree 삭제 $ git worktree remove ../auth-work

Claude Code 멀티 인스턴스와 worktree의 조합은 강력하다. 하나의 Claude가 메인 기능을 작업하는 동안, 다른 Claude가 별도 브랜치에서 버그를 수정하거나 테스트를 보강할 수 있다. 각 인스턴스의 컨텍스트가 서로 독립적이므로 간섭이 없다.

Part V — Plan, Prototype, Review

계획과 프로토타입 사이

Tip 39 + 26 — Plan, Prototype, and Review

계획에 시간을 쓰되, 빠르게 프로토타이핑하라. 그리고 리뷰로 품질을 잡아라

/plan 모드로 설계, 빠른 프로토타이핑으로 검증, 인터랙티브 PR 리뷰로 품질 확보. 세 단계의 균형이 최적의 결과를 만든다.

01 — PLAN

/plan 모드로 설계

코드를 쓰기 전에 /plan으로 구조를 잡는다. Claude가 파일 구조, 인터페이스, 데이터 흐름을 설계한다. 계획이 있으면 구현이 빨라진다.

02 — PROTOTYPE

빠르게 만들고 확인

완벽한 계획보다 빠른 프로토타입이 낫다. 작동하는 코드를 먼저 만들고, 그것을 기반으로 개선한다. 계획에만 시간을 쏟지 않는다.

03 — REVIEW

인터랙티브 코드 리뷰

Claude에게 자신이 쓴 코드를 리뷰하게 한다. "이 PR의 변경사항을 리뷰해줘"라고 요청하면 보안 문제, 성능 이슈, 코드 스멜을 찾아낸다.

04 — ITERATE

반복하여 개선

리뷰에서 발견된 문제를 수정하고, 다시 리뷰한다. 이 사이클을 2-3회 돌리면 혼자 작업하면서도 팀 코드 리뷰 수준의 품질을 달성할 수 있다.

이 세 단계의 비율은 프로젝트 성격에 따라 달라진다. 새 프로젝트라면 Plan에 더 시간을 쓴다. 기존 코드의 버그 수정이라면 Prototype으로 바로 들어간다. 중요한 건 세 단계를 모두 거치는 것이다. 계획 없이 코딩하면 헤매고, 프로토타입 없이 계획만 하면 진도가 안 나가고, 리뷰 없이 머지하면 품질이 떨어진다.

자율은 방임이 아니다.
테스트라는 가드레일 안에서의 자유다.

감독에서 위임으로
당신의 역할이 바뀐다

다음 편 "터미널 밖으로"에서는 Claude Code를 코딩 이외의 영역으로 확장하는 법을 다룬다. DevOps, 리서치, 컨테이너 격리, 백그라운드 서브에이전트까지.