환경 설정부터 병렬 세션 확장까지, Claude Code를 최대한 활용하기 위한 팁과 패턴을 정리합니다.
영어
검색...
⌘K AI에게 물어보기
검색...
내비게이션
핵심 개념
Claude Code를 위한 모범 사례
시작하기Claude Code로 빌드하기배포관리구성레퍼런스리소스
이 페이지에서
핵심 개념
페이지 복사
환경 구성부터 병렬 세션 확장까지, Claude Code를 최대한 활용하기 위한 팁과 패턴.
페이지 복사
Claude Code는 에이전트형 코딩 환경입니다. 질문에 답하고 기다리는 챗봇과 달리, Claude Code는 파일을 읽고, 명령을 실행하고, 변경을 적용하며, 여러분이 지켜보거나 방향을 다시 잡아주거나 완전히 자리를 비운 동안에도 문제를 자율적으로 해결해 나갈 수 있습니다. 이는 작업 방식을 바꿉니다. 직접 코드를 작성하고 Claude에게 리뷰를 부탁하는 대신, 여러분은 원하는 바를 설명하고 Claude가 그것을 어떻게 만들지 찾아냅니다. Claude는 탐색하고, 계획하고, 구현합니다.
하지만 이러한 자율성에는 여전히 학습 곡선이 있습니다. Claude는 여러분이 이해해야 하는 특정 제약 안에서 동작합니다.
이 가이드는 Anthropic 내부 팀과 다양한 코드베이스·언어·환경에서 Claude Code를 사용하는 엔지니어들에게서 효과가 입증된 패턴을 다룹니다. 에이전트 루프가 내부적으로 어떻게 동작하는지에 대해서는 Claude Code가 작동하는 방식을 참고하세요.
대부분의 모범 사례는 하나의 제약에서 출발합니다. Claude의 컨텍스트 윈도우는 빠르게 차고, 차는 만큼 성능이 저하됩니다.
Claude의 컨텍스트 윈도우에는 전체 대화(모든 메시지), Claude가 읽은 모든 파일, 모든 명령 출력이 포함됩니다. 하지만 이는 금방 가득 찰 수 있습니다. 한 번의 디버깅 세션이나 코드베이스 탐색만으로도 수만 토큰을 생성하고 소비할 수 있습니다.
이는 중요한데, 컨텍스트가 차면서 LLM 성능이 저하되기 때문입니다. 컨텍스트 윈도우가 가득 차기 시작하면 Claude는 이전 지시를 “잊어버리거나” 더 많은 실수를 하기 시작할 수 있습니다. 컨텍스트 윈도우는 관리해야 할 가장 중요한 자원입니다. 토큰 사용량을 줄이는 자세한 전략은 토큰 사용량 줄이기를 참고하세요.
Claude가 스스로 점검할 수 있도록 테스트, 스크린샷, 기대 출력 등을 포함하세요. 이것이 여러분이 할 수 있는 단일 행동 중 레버리지가 가장 큽니다.
Claude는 테스트 실행, 스크린샷 비교, 출력 검증처럼 자신의 작업을 검증할 수 있을 때 성능이 극적으로 좋아집니다.
명확한 성공 기준이 없으면, 겉으로는 그럴듯해 보여도 실제로는 동작하지 않는 결과를 만들 수 있습니다. 이 경우 여러분이 유일한 피드백 루프가 되며, 모든 실수는 여러분의 주의를 필요로 합니다.
| 전략 | 전 | 후 |
|---|---|---|
| 검증 기준 제공 | "이메일 주소를 검증하는 함수를 구현해" | "validateEmail 함수를 작성해. 예시 테스트 케이스: [email protected]는 true, invalid는 false, [email protected]는 false. 구현 후 테스트를 실행해" |
| UI 변경을 시각적으로 검증 | "대시보드를 더 보기 좋게 만들어" | "[스크린샷 붙여넣기] 이 디자인을 구현해. 결과 스크린샷을 찍어 원본과 비교해. 차이점을 나열하고 수정해" |
| 증상이 아니라 근본 원인 해결 | "빌드가 실패해" | "빌드가 이 오류로 실패해: [오류 붙여넣기]. 고치고 빌드가 성공하는지 검증해. 오류를 억누르지 말고 근본 원인을 해결해" |
UI 변경은 Chrome 확장 프로그램의 Claude로 검증할 수 있습니다. 브라우저를 열어 UI를 테스트하고, 코드가 동작할 때까지 반복합니다.
검증 수단은 테스트 스위트, 린터, 혹은 출력 확인용 Bash 명령일 수도 있습니다. 검증을 견고하게 만드는 데 투자하세요.
잘못된 문제를 풀지 않도록 조사/계획과 구현을 분리하세요.
Claude가 곧바로 코딩으로 뛰어들게 하면 잘못된 문제를 해결하는 코드가 나올 수 있습니다. Plan Mode를 사용해 탐색과 실행을 분리하세요.
권장 워크플로는 네 단계입니다:
1
탐색
Plan Mode로 들어가세요. Claude는 파일을 읽고 질문에 답하지만 변경을 만들지 않습니다.
claude (Plan Mode)
복사
AI에게 물어보기
read /src/auth and understand how we handle sessions and login.
also look at how we manage environment variables for secrets.
2
계획
Claude에게 상세한 구현 계획을 만들게 하세요.
claude (Plan Mode)
복사
AI에게 물어보기
I want to add Google OAuth. What files need to change?
What's the session flow? Create a plan.
3
구현
Normal Mode로 돌아가 Claude가 코딩하도록 하되, 계획과 대조해 검증하세요.
claude (Normal Mode)
복사
AI에게 물어보기
implement the OAuth flow from your plan. write tests for the
callback handler, run the test suite and fix any failures.
4
커밋
Claude에게 설명적인 메시지로 커밋하고 PR을 만들게 하세요.
claude (Normal Mode)
복사
AI에게 물어보기
commit with a descriptive message and open a PR
Plan Mode는 유용하지만 오버헤드도 있습니다.
범위가 명확하고 수정이 작은 작업(오타 수정, 로그 한 줄 추가, 변수 이름 변경 등)에서는 Claude에게 바로 처리하라고 요청하세요.
계획은 접근법이 불확실할 때, 여러 파일을 수정할 때, 수정 대상 코드에 익숙하지 않을 때 가장 유용합니다. 한 문장으로 diff를 설명할 수 있다면 계획을 건너뛰세요.
지시가 정밀할수록 수정이 줄어듭니다.
Claude는 의도를 추론할 수 있지만, 여러분의 마음을 읽을 수는 없습니다. 특정 파일을 참조하고, 제약 조건을 언급하며, 예시 패턴을 가리키세요.
| 전략 | 전 | 후 |
|---|---|---|
| 작업 범위를 정하기. 파일, 시나리오, 테스트 선호도를 지정하세요. | "foo.py에 테스트 추가해" | "로그아웃된 사용자일 때의 엣지 케이스를 다루는 foo.py 테스트를 작성해. 목(mock)은 피해." |
| 정보 출처를 지정하기. 답을 줄 수 있는 소스를 보게 하세요. | "ExecutionFactory가 왜 API가 이렇게 이상해?" | "ExecutionFactory의 git 히스토리를 훑어서 이 API가 어떻게 이렇게 되었는지 요약해" |
| 기존 패턴을 참조하기. 코드베이스 내 패턴을 가리키세요. | "캘린더 위젯 추가해" | "홈 페이지의 기존 위젯들이 어떻게 구현되어 있는지 보고 패턴을 이해해. HotDogWidget.php가 좋은 예야. 그 패턴을 따라 사용자가 월을 선택하고, 앞으로/뒤로 페이지네이션으로 연도를 선택할 수 있는 새 캘린더 위젯을 구현해. 코드베이스에 이미 사용 중인 라이브러리 외에는 라이브러리 없이 처음부터 만들어." |
| 증상을 설명하기. 증상, 추정 위치, ‘고쳐짐’의 기준을 제공하세요. | "로그인 버그 고쳐" | "세션 타임아웃 이후 로그인 실패를 사용자들이 보고해. src/auth/의 인증 플로우, 특히 토큰 리프레시를 확인해. 이슈를 재현하는 실패 테스트를 먼저 작성하고, 그다음 수정해" |
모호한 프롬프트는 탐색 중이며 방향 수정이 가능할 때 유용할 수 있습니다. 예를 들어 "이 파일에서 무엇을 개선하겠어?" 같은 프롬프트는 여러분이 생각하지 못했던 사항을 드러낼 수 있습니다.
풍부한 콘텐츠 제공하기
@로 파일을 참조하고, 스크린샷/이미지를 붙여 넣거나, 데이터를 직접 파이프로 전달하세요.
Claude에 풍부한 데이터를 제공하는 방법은 여러 가지가 있습니다:
@로 파일 참조: 코드가 어디 있는지 설명하는 대신 @로 파일을 가리키세요. Claude는 응답 전에 파일을 읽습니다./permissions로 allowlist에 추가하세요.cat error.log | claude를 실행해 파일 내용을 바로 전달하세요.몇 가지 설정만 해도 모든 세션에서 Claude Code의 효율이 크게 올라갑니다. 확장 기능 전체 개요와 각 기능을 언제 사용하는지에 대해서는 Claude Code 확장하기를 참고하세요.
효과적인 CLAUDE.md 작성하기
/init을 실행해 현재 프로젝트 구조를 기반으로 시작용 CLAUDE.md 파일을 생성한 뒤, 시간에 따라 다듬어 가세요.
CLAUDE.md는 Claude가 매 대화 시작 시 읽는 특별한 파일입니다. Bash 명령, 코드 스타일, 워크플로 규칙을 포함하세요. 이는 코드만으로는 추론할 수 없는 지속 컨텍스트를 제공합니다.
/init 명령은 코드베이스를 분석해 빌드 시스템, 테스트 프레임워크, 코드 패턴을 감지하고, 다듬기에 좋은 기반을 만들어 줍니다.
CLAUDE.md 형식은 필수가 아니지만, 짧고 사람이 읽기 쉽게 유지하세요. 예:
CLAUDE.md
복사
AI에게 물어보기
# Code style
- Use ES modules (import/export) syntax, not CommonJS (require)
- Destructure imports when possible (eg. import { foo } from 'bar')
# Workflow
- Be sure to typecheck when you're done making a series of code changes
- Prefer running single tests, and not the whole test suite, for performance
CLAUDE.md는 매 세션 로드되므로, 전반적으로 적용되는 내용만 포함하세요. 프로젝트/팀/도메인 지식 중 가끔만 관련되는 워크플로는 대신 스킬을 사용하세요. 스킬은 필요할 때만 로드되어 매 대화를 비대하게 만들지 않습니다.
간결하게 유지하세요. 각 줄마다 이렇게 자문해 보세요: “이 줄을 제거하면 Claude가 실수할까?” 그렇지 않다면 과감히 삭제하세요. 비대해진 CLAUDE.md는 Claude가 실제 지시를 무시하게 만듭니다!
| ✅ 포함 | ❌ 제외 |
|---|---|
| Claude가 추측할 수 없는 Bash 명령 | 코드를 읽으면 알 수 있는 것 |
| 기본값과 다른 코드 스타일 규칙 | Claude가 이미 아는 표준 언어 관례 |
| 테스트 지침 및 선호 테스트 러너 | 상세 API 문서(대신 문서 링크) |
| 저장소 에티켓(브랜치 명명, PR 관례) | 자주 바뀌는 정보 |
| 프로젝트에 특화된 아키텍처 결정 | 긴 설명이나 튜토리얼 |
| 개발 환경의 특이점(필수 env var) | 코드베이스를 파일별로 설명한 내용 |
| 자주 걸리는 함정/자명하지 않은 동작 | “깨끗한 코드 작성” 같은 자명한 문구 |
CLAUDE.md에 금지 규칙을 넣었는데도 Claude가 계속 원치 않는 행동을 한다면, 파일이 너무 길어 규칙이 묻히고 있을 가능성이 큽니다. 반대로 Claude가 CLAUDE.md에 답이 있는 질문을 한다면, 문구가 모호할 수 있습니다.
CLAUDE.md를 코드처럼 다루세요. 문제가 생기면 검토하고, 정기적으로 가지치기하며, Claude의 행동이 실제로 바뀌는지 관찰해 변경을 “테스트”하세요.
지시 준수를 높이기 위해 강조(예: “IMPORTANT”, “YOU MUST”)를 추가해 튜닝할 수 있습니다.
팀이 기여할 수 있도록 CLAUDE.md를 git에 커밋하세요. 파일은 시간이 지날수록 가치가 누적됩니다.
CLAUDE.md는 @path/to/import 문법으로 추가 파일을 import할 수 있습니다:
CLAUDE.md
복사
AI에게 물어보기
See @README.md for project overview and @package.json for available npm commands.
# Additional Instructions
- Git workflow: @docs/git-instructions.md
- Personal overrides: @~/.claude/my-project-instructions.md
CLAUDE.md는 여러 위치에 둘 수 있습니다:
~/.claude/CLAUDE.md): 모든 Claude 세션에 적용./CLAUDE.md): 팀 공유를 위해 git에 커밋하거나, CLAUDE.local.md로 두고 .gitignore 처리root/CLAUDE.md와 root/foo/CLAUDE.md가 자동으로 함께 로드)권한 구성하기
/permissions로 안전한 명령을 allowlist에 넣거나, OS 수준 격리를 위해 /sandbox를 사용하세요. 중단을 줄이면서도 통제권을 유지할 수 있습니다.
기본적으로 Claude Code는 시스템을 수정할 수 있는 액션(파일 쓰기, Bash 명령, MCP 도구 등)에 대해 권한을 요청합니다. 이는 안전하지만 번거롭습니다. 열 번쯤 승인하고 나면 사실상 더 이상 검토하지 않고 클릭만 하게 됩니다.
중단을 줄이는 방법은 두 가지입니다:
npm run lint, git commit)또는 --dangerously-skip-permissions를 사용해, 린트 오류 수정이나 보일러플레이트 생성처럼 제한된 워크플로에서 모든 권한 체크를 우회할 수 있습니다.
임의의 명령 실행을 허용하면 데이터 손실, 시스템 손상, 프롬프트 인젝션에 의한 데이터 유출이 발생할 수 있습니다. 인터넷이 없는 샌드박스에서만 --dangerously-skip-permissions를 사용하세요.
자세한 내용은 권한 구성과 샌드박싱 활성화를 참고하세요.
CLI 도구 사용하기
외부 서비스와 상호작용할 때 gh, aws, gcloud, sentry-cli 같은 CLI 도구를 사용하라고 Claude Code에 알려 주세요.
CLI 도구는 외부 서비스와 상호작용하는 가장 컨텍스트 효율적인 방법입니다. GitHub를 사용한다면 gh CLI를 설치하세요. Claude는 이 도구를 사용해 이슈 생성, PR 열기, 코멘트 읽기 등을 할 줄 압니다.
gh가 없어도 Claude는 GitHub API를 사용할 수 있지만, 인증되지 않은 요청은 종종 레이트 리밋에 걸립니다.
Claude는 아직 모르는 CLI 도구도 학습해 사용할 수 있습니다. 예를 들어 Use 'foo-cli-tool --help' to learn about foo tool, then use it to solve A, B, C. 같은 프롬프트를 시도해 보세요.
MCP 서버 연결하기
claude mcp add를 실행해 Notion, Figma, 데이터베이스 같은 외부 도구를 연결하세요.
MCP 서버를 사용하면 이슈 트래커의 기능을 구현하고, 데이터베이스를 쿼리하고, 모니터링 데이터를 분석하고, Figma 디자인을 통합하고, 워크플로를 자동화하도록 Claude에게 요청할 수 있습니다.
훅 설정하기
예외 없이 매번 반드시 실행되어야 하는 작업에는 훅을 사용하세요.
훅은 Claude의 워크플로 특정 지점에서 스크립트를 자동으로 실행합니다. CLAUDE.md 지시는 권고(advisory)인 반면, 훅은 결정적(deterministic)이라 해당 동작이 반드시 실행됨을 보장합니다.
Claude가 훅을 대신 작성하게 할 수도 있습니다. 예: “파일 편집 후마다 eslint를 실행하는 훅을 작성해” 또는 “migrations 폴더에 쓰기를 차단하는 훅을 작성해.”
대화형 설정은 /hooks를 실행하거나, .claude/settings.json을 직접 편집하세요.
스킬 만들기
.claude/skills/에 SKILL.md 파일을 만들어 Claude에 도메인 지식과 재사용 가능한 워크플로를 제공하세요.
스킬은 프로젝트/팀/도메인에 특화된 정보로 Claude의 지식을 확장합니다. 관련 있을 때 자동 적용되거나, /skill-name으로 직접 호출할 수 있습니다.
.claude/skills/에 SKILL.md가 있는 디렉터리를 추가해 스킬을 만드세요:
.claude/skills/api-conventions/SKILL.md
복사
AI에게 물어보기
---
name: api-conventions
description: REST API design conventions for our services
---
# API Conventions
- Use kebab-case for URL paths
- Use camelCase for JSON properties
- Always include pagination for list endpoints
- Version APIs in the URL path (/v1/, /v2/)
스킬은 직접 호출하는 반복 가능한 워크플로도 정의할 수 있습니다:
.claude/skills/fix-issue/SKILL.md
복사
AI에게 물어보기
---
name: fix-issue
description: Fix a GitHub issue
disable-model-invocation: true
---
Analyze and fix the GitHub issue: $ARGUMENTS.
1. Use `gh issue view` to get the issue details
2. Understand the problem described in the issue
3. Search the codebase for relevant files
4. Implement the necessary changes to fix the issue
5. Write and run tests to verify the fix
6. Ensure code passes linting and type checking
7. Create a descriptive commit message
8. Push and create a PR
/fix-issue 1234로 호출하세요. 부작용이 있는 워크플로를 수동 트리거로만 실행하고 싶다면 disable-model-invocation: true를 사용하세요.
커스텀 서브에이전트 만들기
.claude/agents/에 특화된 어시스턴트를 정의해, Claude가 격리된 작업을 위임할 수 있게 하세요.
서브에이전트는 자체 컨텍스트와 허용된 도구 세트로 실행됩니다. 많은 파일을 읽어야 하거나, 메인 대화를 어지럽히지 않고 특화된 집중이 필요할 때 유용합니다.
.claude/agents/security-reviewer.md
복사
AI에게 물어보기
---
name: security-reviewer
description: Reviews code for security vulnerabilities
tools: Read, Grep, Glob, Bash
model: opus
---
You are a senior security engineer. Review code for:
- Injection vulnerabilities (SQL, XSS, command injection)
- Authentication and authorization flaws
- Secrets or credentials in code
- Insecure data handling
Provide specific line references and suggested fixes.
서브에이전트를 명시적으로 사용하라고 지시하세요: “서브에이전트를 사용해서 이 코드를 보안 이슈 관점에서 리뷰해.”
플러그인 설치하기
/plugin을 실행해 마켓플레이스를 둘러보세요. 플러그인은 별도 설정 없이 스킬, 도구, 통합을 추가합니다.
플러그인은 커뮤니티와 Anthropic에서 제공하는 스킬, 훅, 서브에이전트, MCP 서버를 하나의 설치 가능한 유닛으로 묶습니다.
스킬/서브에이전트/훅/MCP 중 무엇을 선택할지에 대한 가이드는 Claude Code 확장하기를 참고하세요.
Claude Code와 소통하는 방식은 결과 품질에 큰 영향을 줍니다.
코드베이스 질문하기
시니어 엔지니어에게 하듯 Claude에게 질문하세요.
새 코드베이스에 온보딩할 때, Claude Code를 학습과 탐색에 활용하세요. 다른 엔지니어에게 하듯이 Claude에게도 같은 종류의 질문을 할 수 있습니다:
foo.rs 134줄의 async move { ... }는 무엇을 하나요?CustomerOnboardingFlowImpl는 어떤 엣지 케이스를 처리하나요?bar() 대신 foo()를 호출하나요?이런 방식으로 Claude Code를 쓰는 것은 온보딩에 효과적이며, 램프업 시간을 줄이고 다른 엔지니어의 부담을 낮춥니다. 특별한 프롬프트 기법 없이, 직접 질문하면 됩니다.
Claude가 인터뷰하게 하기
큰 기능의 경우, 먼저 Claude가 여러분을 인터뷰하게 하세요. 최소한의 프롬프트로 시작하고 AskUserQuestion 도구를 사용해 인터뷰하라고 요청하세요.
Claude는 기술 구현, UI/UX, 엣지 케이스, 트레이드오프 등 여러분이 아직 고려하지 못한 것들까지 질문합니다.
복사
AI에게 물어보기
I want to build [brief description]. Interview me in detail using the AskUserQuestion tool.
Ask about technical implementation, UI/UX, edge cases, concerns, and tradeoffs. Don't ask obvious questions, dig into the hard parts I might not have considered.
Keep interviewing until we've covered everything, then write a complete spec to SPEC.md.
스펙이 완성되면, 이를 실행하기 위해 새 세션을 시작하세요. 새 세션은 구현에만 집중하는 깨끗한 컨텍스트를 갖게 되고, 참고할 수 있는 작성된 스펙도 확보됩니다.
대화는 지속되며 되돌릴 수 있습니다. 이를 유리하게 활용하세요!
일찍 자주 방향 수정하기
Claude가 엇나가고 있다고 느끼는 즉시 바로잡으세요.
최고의 결과는 촘촘한 피드백 루프에서 나옵니다. Claude가 가끔은 첫 시도에 완벽히 해결하기도 하지만, 대개는 빠르게 교정할수록 더 좋은 해결책을 더 빨리 얻습니다.
Esc: Esc 키로 Claude의 진행을 중간에 멈춥니다. 컨텍스트는 유지되므로 방향을 다시 잡을 수 있습니다.Esc + Esc 또는 /rewind: Esc를 두 번 누르거나 /rewind를 실행해 되감기 메뉴를 열고 이전 대화/코드 상태로 복원합니다."Undo that": Claude에게 변경을 되돌리게 합니다./clear: 관련 없는 작업 사이에 컨텍스트를 리셋합니다. 관련 없는 컨텍스트가 쌓인 긴 세션은 성능을 낮출 수 있습니다.한 세션에서 같은 이슈를 두 번 이상 교정해야 했다면, 컨텍스트가 실패한 접근들로 복잡해졌을 수 있습니다. /clear를 실행하고, 배운 내용을 반영해 더 구체적인 프롬프트로 새로 시작하세요. 누적된 교정이 쌓인 긴 세션보다, 더 나은 프롬프트를 가진 깨끗한 세션이 거의 항상 더 좋은 성능을 냅니다.
컨텍스트를 공격적으로 관리하기
관련 없는 작업 사이에는 /clear를 실행해 컨텍스트를 리셋하세요.
Claude Code는 컨텍스트 한계에 가까워지면 대화 기록을 자동으로 압축(compact)해, 중요한 코드와 결정을 보존하면서 공간을 확보합니다.
긴 세션 동안에는 관련 없는 대화, 파일 내용, 명령들이 컨텍스트를 채울 수 있습니다. 이는 성능을 낮추고 때로는 Claude를 산만하게 만들 수 있습니다.
/clear를 자주 사용해 컨텍스트 윈도우를 완전히 리셋하세요./compact <instructions>를 실행하세요. 예: /compact Focus on the API changes"When compacting, always preserve the full list of modified files and any test commands"처럼 지시해 중요한 컨텍스트가 요약에서 살아남도록 하세요.조사를 위해 서브에이전트 사용하기
"use subagents to investigate X"로 조사 작업을 위임하세요. 별도 컨텍스트에서 탐색하므로 메인 대화는 구현을 위해 깔끔하게 유지됩니다.
컨텍스트가 근본 제약이기 때문에, 서브에이전트는 가장 강력한 도구 중 하나입니다. Claude가 코드베이스를 조사할 때는 많은 파일을 읽는데, 이는 모두 컨텍스트를 소비합니다. 서브에이전트는 별도 컨텍스트 윈도우에서 실행되어 요약을 보고합니다:
복사
AI에게 물어보기
Use subagents to investigate how our authentication system handles token
refresh, and whether we have any existing OAuth utilities I should reuse.
서브에이전트가 코드베이스를 탐색하고 관련 파일을 읽어도, 메인 대화는 어지럽혀지지 않은 채로 결과만 보고받습니다.
Claude가 무언가를 구현한 뒤 검증에도 서브에이전트를 사용할 수 있습니다:
복사
AI에게 물어보기
use a subagent to review this code for edge cases
체크포인트로 되감기
Claude가 하는 모든 액션은 체크포인트를 생성합니다. 어떤 이전 체크포인트로든 대화, 코드, 또는 둘 다를 복원할 수 있습니다.
Claude는 변경 전에 자동으로 체크포인트를 남깁니다. Escape를 두 번 누르거나 /rewind를 실행해 체크포인트 메뉴를 여세요. 대화만 복원(코드 변경 유지), 코드만 복원(대화 유지), 둘 다 복원이 가능합니다.
모든 움직임을 조심스럽게 계획하기보다, Claude에게 위험한 시도를 하라고 말할 수 있습니다. 작동하지 않으면 되감고 다른 접근을 시도하면 됩니다.
체크포인트는 세션 간에도 유지되므로, 터미널을 닫았다가 나중에 다시 되감을 수도 있습니다.
체크포인트는 Claude가 만든 변경만 추적하며, 외부 프로세스 변경은 추적하지 않습니다. 이는 git을 대체하지 않습니다.
대화 이어가기
claude --continue로 중단했던 곳에서 이어가거나, --resume로 최근 세션 중에서 선택하세요.
Claude Code는 대화를 로컬에 저장합니다. 작업이 여러 세션에 걸칠 때(기능 개발을 시작했다가 중단되고, 다음 날 다시 돌아오는 경우) 컨텍스트를 다시 설명할 필요가 없습니다:
복사
AI에게 물어보기
claude --continue # 가장 최근 대화를 재개
claude --resume # 최근 대화 중에서 선택
/rename으로 세션에 설명적인 이름("oauth-migration", "debugging-memory-leak")을 붙여 나중에 찾기 쉽게 하세요.
세션을 브랜치처럼 다루세요. 서로 다른 작업 흐름은 각자 분리된 지속 컨텍스트를 가질 수 있습니다.
한 명의 Claude로 효과를 보았다면, 병렬 세션, 헤드리스 모드, 팬아웃 패턴으로 산출량을 늘리세요.
지금까지는 1명의 사람, 1명의 Claude, 1개의 대화를 전제로 했습니다. 하지만 Claude Code는 수평 확장이 가능합니다. 이 섹션의 기법은 더 많은 일을 해내는 방법을 보여줍니다.
헤드리스 모드 실행하기
CI, pre-commit 훅, 스크립트에서 claude -p "prompt"를 사용하세요. JSON 스트리밍 출력에는 --output-format stream-json을 추가하세요.
claude -p "your prompt"로 대화형 세션 없이 헤드리스로 Claude를 실행할 수 있습니다. 헤드리스 모드는 Claude를 CI 파이프라인, pre-commit 훅, 혹은 어떤 자동화 워크플로든 통합하는 방법입니다. 출력 형식(일반 텍스트, JSON, 스트리밍 JSON)을 통해 결과를 프로그램적으로 파싱할 수 있습니다.
복사
AI에게 물어보기
# 단발성 질의
claude -p "Explain what this project does"
# 스크립트를 위한 구조화된 출력
claude -p "List all API endpoints" --output-format json
# 실시간 처리를 위한 스트리밍
claude -p "Analyze this log file" --output-format stream-json
여러 Claude 세션 실행하기
여러 Claude 세션을 병렬로 실행해 개발 속도를 높이거나, 격리된 실험을 하거나, 복잡한 워크플로를 시작하세요.
병렬 세션을 실행하는 주요 방법은 두 가지입니다:
병렬화 외에도, 여러 세션은 품질 중심 워크플로를 가능하게 합니다. 새 컨텍스트는 코드 리뷰에 유리한데, Claude가 방금 자신이 작성한 코드에 편향되지 않기 때문입니다.
예를 들어 작성자/리뷰어(Writer/Reviewer) 패턴:
| 세션 A(작성자) | 세션 B(리뷰어) |
|---|---|
우리 API 엔드포인트에 레이트 리미터를 구현해 | |
@src/middleware/rateLimiter.ts의 레이트 리미터 구현을 리뷰해. 엣지 케이스, 레이스 컨디션, 기존 미들웨어 패턴과의 일관성을 확인해. | |
리뷰 피드백은 여기야: [세션 B 출력]. 이 이슈들을 반영해 수정해. |
테스트도 비슷하게 할 수 있습니다. 한 Claude가 테스트를 작성하고, 다른 Claude가 그 테스트를 통과시키는 코드를 작성하게 하세요.
여러 파일로 팬아웃하기
각 작업마다 claude -p를 호출하는 루프를 돌리세요. 배치 작업의 권한 범위는 --allowedTools로 제한하세요.
대규모 마이그레이션이나 분석에서는, 많은 병렬 Claude 호출로 작업을 분산할 수 있습니다:
1
작업 목록 생성
Claude에게 마이그레이션이 필요한 모든 파일을 나열하게 하세요(예: 마이그레이션이 필요한 2,000개의 Python 파일을 모두 나열해).
2
목록을 순회하는 스크립트 작성
복사
AI에게 물어보기
for file in $(cat files.txt); do
claude -p "Migrate $file from React to Vue. Return OK or FAIL." \
--allowedTools "Edit,Bash(git commit:*)"
done
3
몇 개 파일로 테스트한 뒤, 대규모로 실행
처음 2~3개 파일에서 무엇이 잘못되는지 보고 프롬프트를 다듬은 다음, 전체 세트에 적용하세요. --allowedTools 플래그는 무인 실행 시 Claude가 할 수 있는 일을 제한하므로 중요합니다.
기존 데이터/처리 파이프라인에도 Claude를 통합할 수 있습니다:
복사
AI에게 물어보기
claude -p "<your prompt>" --output-format json | your_command
개발 중 디버깅에는 --verbose를 사용하고, 프로덕션에서는 꺼 두세요.
안전한 자율 모드
claude --dangerously-skip-permissions로 모든 권한 체크를 우회해 Claude가 중단 없이 작업하도록 하세요. 린트 오류 수정이나 보일러플레이트 생성 같은 워크플로에 잘 맞습니다.
Claude가 임의의 명령을 실행하게 하는 것은 위험하며, 데이터 손실, 시스템 손상, 데이터 유출(예: 프롬프트 인젝션 공격)을 초래할 수 있습니다. 위험을 최소화하려면 인터넷이 없는 컨테이너에서 --dangerously-skip-permissions를 사용하세요.
샌드박싱(/sandbox)을 활성화하면, 더 나은 보안으로 유사한 자율성을 얻을 수 있습니다. 샌드박스는 모든 체크를 우회하는 대신, 사전에 경계를 정의합니다.
다음은 흔한 실수입니다. 이를 일찍 알아차리면 시간을 절약할 수 있습니다:
해결: 관련 없는 작업 사이에
/clear.
해결: 같은 이슈를 두 번 교정했으면
/clear후, 배운 내용을 반영한 더 좋은 초기 프롬프트로 다시 시작.
해결: 무자비하게 가지치기. Claude가 지시 없이도 이미 올바르게 하는 일이라면 삭제하거나 훅으로 전환.
해결: 항상 검증(테스트, 스크립트, 스크린샷)을 제공. 검증할 수 없다면 배포하지 말 것.
해결: 조사의 범위를 좁히거나 서브에이전트를 사용해 메인 컨텍스트를 소비하지 않게 하기.
이 가이드의 패턴은 절대적인 규칙이 아닙니다. 전반적으로 잘 작동하는 출발점이지만, 모든 상황에 최적은 아닐 수 있습니다.
때로는 복잡한 문제를 깊게 파고들고 있어 기록이 가치가 있으므로 컨텍스트가 누적되게 두는 것이 낫습니다. 때로는 탐색적 작업이라 계획을 건너뛰고 Claude가 스스로 찾아내게 하는 편이 좋습니다. 때로는 문제를 제한하기 전에 Claude가 어떻게 해석하는지 보고 싶으므로 모호한 프롬프트가 בדיוק 맞습니다.
무엇이 효과적인지 관찰하세요. Claude가 훌륭한 결과를 내면, 여러분이 무엇을 했는지(프롬프트 구조, 제공한 컨텍스트, 사용한 모드)를 주목하세요. Claude가 어려워하면 이유를 물으세요. 컨텍스트가 너무 시끄러웠나요? 프롬프트가 너무 모호했나요? 한 번에 처리하기엔 작업이 너무 컸나요?
시간이 지나면 어떤 가이드로도 담을 수 없는 직관이 생깁니다. 언제 구체적으로 해야 하는지, 언제 열어두어야 하는지, 언제 계획해야 하는지, 언제 탐색해야 하는지, 언제 컨텍스트를 지우고 언제 누적해야 하는지 알게 됩니다.
Claude Code가 작동하는 방식 --------------------- 에이전트 루프, 도구, 컨텍스트 관리를 이해하기
Claude Code 확장하기 ------------------ 스킬, 훅, MCP, 서브에이전트, 플러그인 중 선택하기
일반적인 워크플로 ---------------- 디버깅, 테스트, PR 등을 위한 단계별 레시피
CLAUDE.md --------- 프로젝트 관례와 지속 컨텍스트 저장
이 페이지가 도움이 되었나요?
예 아니오
⌘I
회사
도움말 및 보안
학습
코스MCP 커넥터고객 사례엔지니어링 블로그이벤트Claude로 구동서비스 파트너스타트업 프로그램
약관 및 정책