Logo
본문으로 이동
중급15분 소요architectureagentic-looptools

Claude Code 작동 방식

에이전트 루프, 내장 도구, Claude Code가 프로젝트와 상호작용하는 방식을 이해합니다.

Claude Code는 터미널에서 실행되는 에이전트 어시스턴트입니다. 코딩에 탁월하지만, 문서 작성, 빌드 실행, 파일 검색, 주제 조사 등 커맨드 라인에서 할 수 있는 모든 작업을 도울 수 있습니다.

에이전트 루프

작업을 주면 Claude는 세 단계로 진행합니다: 컨텍스트 수집, 작업 실행, 결과 검증. 이 단계들은 서로 혼합됩니다. Claude는 코드를 이해하기 위해 파일을 검색하고, 변경을 위해 편집하고, 작업을 확인하기 위해 테스트를 실행하는 등 전 과정에서 도구를 사용합니다.

루프는 요청에 따라 적응합니다:

  • 코드베이스에 대한 질문: 컨텍스트 수집만 필요할 수 있음
  • 버그 수정: 세 단계를 반복적으로 순환
  • 리팩토링: 광범위한 검증 포함

언제든지 Claude를 중단하고 다른 방향으로 이끌거나, 추가 컨텍스트를 제공하거나, 다른 접근 방식을 시도하도록 요청할 수 있습니다.

모델

Claude Code는 Claude 모델을 사용해 코드를 이해하고 작업을 추론합니다. 여러 모델을 사용할 수 있습니다:

  • Sonnet: 대부분의 코딩 작업에 적합
  • Opus: 복잡한 아키텍처 결정에 더 강한 추론 제공

세션 중 /model로 전환하거나 claude --model <name>으로 시작할 수 있습니다.

도구

도구는 Claude Code를 에이전트로 만드는 요소입니다. 도구 없이 Claude는 텍스트로만 응답합니다. 도구를 통해 Claude는 코드를 읽고, 파일을 편집하고, 명령을 실행하고, 웹을 검색하고, 외부 서비스와 상호작용할 수 있습니다.

카테고리 Claude가 할 수 있는 것
파일 작업 파일 읽기, 코드 편집, 새 파일 생성, 이름 변경 및 재구성
검색 패턴으로 파일 찾기, 정규식으로 내용 검색, 코드베이스 탐색
실행 쉘 명령 실행, 서버 시작, 테스트 실행, git 사용
웹 검색, 문서 가져오기, 오류 메시지 조회
코드 인텔리전스 편집 후 타입 오류와 경고 확인, 정의로 이동, 참조 찾기

Claude는 프롬프트와 이전 단계에서 학습한 내용을 바탕으로 어떤 도구를 사용할지 선택합니다.

예시: "실패하는 테스트를 수정해줘"라고 하면 Claude는:

  1. 테스트 스위트 실행해 실패 확인
  2. 오류 출력 읽기
  3. 관련 소스 파일 검색
  4. 코드 이해를 위해 파일 읽기
  5. 문제 수정을 위해 파일 편집
  6. 수정 검증을 위해 테스트 다시 실행

Claude가 접근할 수 있는 것

claude를 디렉토리에서 실행하면 Claude Code는 다음에 접근합니다:

  • 프로젝트: 디렉토리와 서브디렉토리의 파일
  • 터미널: 빌드 도구, git, 패키지 매니저, 시스템 유틸리티, 스크립트
  • Git 상태: 현재 브랜치, 커밋되지 않은 변경, 최근 커밋 히스토리
  • CLAUDE.md: 매 세션마다 Claude가 알아야 할 프로젝트별 지시, 규칙, 컨텍스트
  • 설정된 확장: MCP 서버, 스킬, 서브에이전트, Chrome의 Claude

Claude가 프로젝트 전체를 볼 수 있기 때문에 여러 파일에 걸친 작업을 할 수 있습니다.


세션 작업하기

Claude Code는 작업하면서 대화를 로컬에 저장합니다. 각 메시지, 도구 사용, 결과가 저장되어 되감기, 재개, 포크가 가능합니다.

세션은 독립적입니다. 각 새 세션은 이전 세션의 대화 기록 없이 새로운 컨텍스트 윈도우로 시작합니다. Claude는 자동 메모리를 사용해 세션 간 학습을 지속할 수 있습니다.

브랜치 간 작업

각 Claude Code 대화는 현재 디렉토리에 연결된 세션입니다. 브랜치를 전환할 때 Claude는 새 브랜치의 파일을 보지만 대화 기록은 동일하게 유지됩니다.

세션 재개 또는 포크

claude --continue    # 가장 최근 대화 재개
claude --resume      # 대화 선택기 열기

# 분기해서 다른 접근 방식 시도
claude --continue --fork-session

컨텍스트 윈도우

Claude의 컨텍스트 윈도우는 대화 기록, 파일 내용, 명령 출력, CLAUDE.md, 로드된 스킬, 시스템 지시를 포함합니다.

컨텍스트가 가득 찰 때

Claude Code는 한도에 가까워지면 자동으로 컨텍스트를 관리합니다:

  • 이전 도구 출력을 먼저 지움
  • 필요한 경우 대화를 요약
  • 요청과 주요 코드 스니펫은 보존

지속적인 규칙은 대화 기록에 의존하는 대신 CLAUDE.md에 넣으세요.

/context를 실행해 공간을 사용하는 것을 확인할 수 있습니다.

스킬과 서브에이전트로 컨텍스트 관리

  • 스킬: 필요 시 로드됩니다. 수동으로 호출하는 스킬은 disable-model-invocation: true로 설정해 설명을 컨텍스트에서 제외할 수 있음
  • 서브에이전트: 완전히 별도의 새로운 컨텍스트를 가집니다. 작업이 완료되면 요약을 반환

체크포인트와 권한으로 안전하게 유지하기

체크포인트로 변경 취소하기

모든 파일 편집은 되돌릴 수 있습니다. Claude가 파일을 편집하기 전에 현재 내용의 스냅샷을 저장합니다. 문제가 발생하면 Esc를 두 번 눌러 이전 상태로 되감기할 수 있습니다.

체크포인트는 세션에 로컬이며 git과 별개입니다. 파일 변경만 포함합니다.

Claude가 할 수 있는 것 제어하기

Shift+Tab으로 권한 모드 간 전환:

  • 기본: 파일 편집과 쉘 명령 전에 요청
  • 자동 편집 수락: 파일은 묻지 않고 편집, 명령에 대해서는 여전히 요청
  • 플랜 모드: 읽기 전용 도구만 사용, 실행 전에 승인할 계획 생성

특정 명령을 .claude/settings.json에서 허용하면 Claude가 매번 묻지 않아도 됩니다.


Claude Code와 효과적으로 작업하기

도움 요청하기

Claude Code는 자기 사용 방법을 가르쳐 줄 수 있습니다:

> 훅은 어떻게 설정하나요?
> CLAUDE.md를 가장 잘 구성하는 방법은?

내장 명령:

  • /init - 프로젝트를 위한 CLAUDE.md 생성
  • /agents - 커스텀 서브에이전트 설정
  • /doctor - 설치 문제 진단

대화로 접근하기

Claude Code는 대화형입니다. 완벽한 프롬프트가 필요하지 않습니다:

> 로그인 버그를 수정해줘

[Claude 조사 후 시도]

> 그게 아닌 것 같아. 문제는 세션 처리에 있어.

[Claude 접근 방식 조정]

처음 시도가 올바르지 않으면 처음부터 다시 시작하지 않아도 됩니다. 반복합니다.

구체적으로 지정하기

프롬프트가 구체적일수록 수정이 적게 필요합니다:

> 만료된 카드를 가진 사용자의 체크아웃 흐름이 깨져 있어.
> 특히 토큰 새로 고침에 집중하여 src/payments/에서 문제를 확인해줘.
> 먼저 실패하는 테스트를 작성한 다음 수정해줘.

검증 기준 제공하기

Claude는 자신의 작업을 확인할 수 있을 때 더 잘 수행합니다:

> validateEmail을 구현해줘. 테스트 케이스: 'user@example.com' → true,
> 'invalid' → false. 그 다음 테스트를 실행해줘.

구현 전 탐색하기

복잡한 문제의 경우 연구와 코딩을 분리하세요:

> src/auth/를 읽고 세션 처리 방식을 이해해줘.
> 그런 다음 OAuth 지원 추가 계획을 만들어줘.

다음 단계

관련 가이드

Claude Code 작동 방식 | Claude Code 가이드 | GodDaeHee | GodDaeHee