Claude Code 101로 돌아가기Back to Claude Code 101
Module 10 — 실전 프로젝트Real-world Project

실전 프로젝트:
DailyMemo
Real-world Project:
DailyMemo App

처음부터 끝까지, Claude Code로 앱 하나를 완성해봅시다 From start to finish, let's build a complete app with Claude Code

프로젝트 소개Project Intro Phase 1 시작Start Phase 1
스크롤Scroll
01

프로젝트 소개 & 완성 미리보기Project Intro & Final Preview

지금까지 배운 모든 것을 하나의 프로젝트에 녹여봅니다. DailyMemo — 간단하지만 완전한 메모 앱을 처음부터 끝까지 만들어봅시다. Put everything you've learned into a single project. DailyMemo — a simple but complete memo app, built from scratch to finish.

요리 교실 최종 시험The Cooking Class Final Exam

요리 교실에서 칼 쓰기, 불 조절, 양념 비율을 각각 배웠다면, 최종 시험은 코스 요리 한 상을 차리는 것입니다.

이 프로젝트가 바로 그 최종 시험입니다. CLAUDE.md 작성, Plan Mode 설계, 에이전트 활용, Hook 설정, Git 워크플로우 — 지금까지 배운 모든 기술을 한 프로젝트에 통합합니다.

개별 기술은 이미 배웠으니, 이제는 어떤 순서로, 어떻게 조합하는지에 집중합니다.

If a cooking class taught you knife skills, fire control, and seasoning ratios separately, the final exam is setting a complete course dinner.

This project is exactly that final exam. Writing CLAUDE.md, designing with Plan Mode, using agents, configuring Hooks, Git workflows — integrate every skill you've learned into one project.

You've already learned the individual techniques, so now focus on the order and how to combine them.

📱 DailyMemo 핵심 기능DailyMemo Core Features

📝

메모 CRUDMemo CRUD

메모를 생성, 읽기, 수정, 삭제할 수 있는 기본 기능. 모든 앱의 근간이 되는 데이터 관리입니다.

Core create, read, update, delete functionality for memos. The data management foundation that underlies every app.

🔍

검색Search

제목과 본문 내용으로 메모를 빠르게 검색. 메모가 쌓여도 원하는 내용을 즉시 찾을 수 있습니다.

Quickly search memos by title and body content. Find what you need instantly even as memos pile up.

🏷️

카테고리Categories

메모를 카테고리별로 분류하고 필터링. 업무, 개인, 아이디어 등으로 체계적으로 관리합니다.

Categorize and filter memos. Organize systematically by Work, Personal, Ideas, and more.

📄

마크다운 지원Markdown Support

메모 본문에 마크다운 문법을 사용할 수 있어 서식 있는 문서를 깔끔하게 작성합니다.

Use markdown syntax in memo bodies to write neatly formatted rich-text documents.

🛠️ 사용할 기술과 도구Tools and Technologies

  • CLAUDE.md프로젝트 컨벤션과 규칙을 정의하여 일관된 코드 생성Define project conventions and rules for consistent code generation
  • Plan Mode (/plan)코드 작성 전 아키텍처를 설계하고 검토Design and review architecture before writing code
  • 커스텀 에이전트Custom Agent@code-reviewer로 코드 품질 자동 검토Automated code quality review with @code-reviewer
  • Hookmain 브랜치 보호 등 자동화 규칙 설정Set automation rules like main branch protection
  • Git 워크플로우Git Workflow기능별 브랜치, 커밋, PR 자동 생성Feature branches, commits, and auto-generated PRs
02

Phase 1 — 프로젝트 셋업 & CLAUDE.mdPhase 1 — Project Setup & CLAUDE.md

모든 프로젝트의 시작은 기반을 다지는 것입니다. 빈 폴더에서 CLAUDE.md까지, 프로젝트의 뼈대를 세웁니다. Every project starts by laying the foundation. From an empty folder to CLAUDE.md, we build the skeleton of the project.

1

빈 폴더 생성Create an Empty Folder

터미널에서 프로젝트 디렉토리를 만들고 이동합니다.

Create the project directory in your terminal and navigate into it.

Terminal
mkdir daily-memo && cd daily-memo
2

Claude Code 실행Launch Claude Code

빈 폴더에서 Claude를 시작합니다. 아무것도 없는 상태에서 시작하는 것이 핵심입니다.

Start Claude in the empty folder. Starting from nothing is the key.

Terminal
claude
3

CLAUDE.md 먼저 생성Create CLAUDE.md First

코드를 작성하기 전에, 프로젝트의 규칙과 컨벤션을 먼저 정의합니다. 이것이 프로 개발자의 습관입니다.

Before writing any code, define the project's rules and conventions first. This is a professional developer habit.

Claude Code Prompt
DailyMemo라는 메모 앱을 만들 거야. 시작하기 전에 CLAUDE.md 파일을 먼저 만들어줘. 프로젝트 정보: - React + TypeScript 웹 앱 - 로컬 스토리지 기반 (백엔드 없음) - 한국어 UI CLAUDE.md에 포함할 것: - 기술 스택과 버전 - 코드 컨벤션 (네이밍, 파일 구조) - 커밋 메시지 규칙 - 테스트 규칙
4

프로젝트 구조 확인Verify Project Structure

CLAUDE.md가 생성되면 내용을 검토하고, 필요하면 수정을 요청합니다.

Once CLAUDE.md is created, review its contents and request modifications if needed.

📋 CLAUDE.md 예시CLAUDE.md Example

CLAUDE.md
# DailyMemo 프로젝트 ## 기술 스택 - React 18 + TypeScript - Vite (빌드 도구) - CSS Modules (스타일링) - localStorage (데이터 저장) ## 코드 컨벤션 - 컴포넌트: PascalCase (예: MemoList.tsx) - 함수/변수: camelCase (예: getMemoById) - 타입: PascalCase + 접미사 (예: MemoType, CategoryFilter) - 파일 구조: feature 기반 (features/memo/, features/category/) ## 커밋 규칙 - feat: 새 기능 / fix: 버그 수정 / refactor: 리팩토링 - 한국어 본문 허용, 제목은 영어 ## 테스트 - 핵심 유틸 함수는 반드시 테스트 작성 - 컴포넌트는 주요 인터랙션 테스트
💡
왜 CLAUDE.md가 먼저인가요? CLAUDE.md 없이 코드를 먼저 생성하면, Claude가 매번 다른 스타일로 코드를 작성합니다. 미리 규칙을 정해두면 처음부터 끝까지 일관된 코드가 나옵니다.
Why CLAUDE.md first? Without CLAUDE.md, Claude writes code in different styles each time. Setting rules upfront produces consistent code from start to finish.
03

Phase 2 — 아키텍처 설계 (/plan)Phase 2 — Architecture Design (/plan)

코드를 바로 작성하지 않습니다. Plan Mode로 먼저 전체 구조를 설계하고, 검토한 뒤 구현합니다. Don't write code right away. Use Plan Mode to design the overall structure first, review it, then implement.

Claude Code Prompt (/plan)
/plan DailyMemo 앱의 전체 아키텍처를 설계해줘. 필요한 기능: 1. 메모 CRUD (생성, 읽기, 수정, 삭제) 2. 검색 (제목 + 본문) 3. 카테고리 분류 및 필터링 4. 마크다운 지원 (에디터 + 미리보기) 설계에 포함할 것: - 데이터 모델 (TypeScript 타입) - 컴포넌트 트리 - 화면별 와이어프레임 설명 - 상태 관리 방식 - 파일/폴더 구조
1

데이터 모델 정의Define Data Models

메모와 카테고리의 타입을 먼저 정의합니다. 이것이 앱의 기초입니다. Plan Mode에서 Claude가 TypeScript 인터페이스를 제안해줍니다.

Define the types for memos and categories first. This is the foundation of the app. In Plan Mode, Claude suggests TypeScript interfaces.

2

화면 구성Screen Layout

어떤 화면이 필요한지, 각 화면에 어떤 컴포넌트가 들어가는지 정리합니다. 목록 화면, 작성/편집 화면, 검색 결과 화면 등을 설계합니다.

Plan which screens are needed and what components go in each. Design the list screen, create/edit screen, search results screen, etc.

3

네비게이션 플로우Navigation Flow

화면 간 이동 흐름을 정의합니다. 사용자가 앱을 열고, 메모를 작성하고, 검색하는 전체 여정을 그립니다.

Define the flow between screens. Map the complete user journey: opening the app, writing a memo, and searching.

🔄
계획에 만족할 때까지 수정 요청하세요. Plan Mode에서는 코드가 생성되지 않으므로 부담 없이 "카테고리 모델에 색상 필드도 추가해줘", "검색은 실시간 필터링으로 바꿔줘" 같은 수정을 반복할 수 있습니다. 계획이 탄탄해야 구현이 빨라집니다.
Keep requesting revisions until you're satisfied with the plan. In Plan Mode no code is generated, so freely iterate with requests like "add a color field to the category model" or "change search to real-time filtering." A solid plan speeds up implementation.
04

Phase 3 — 핵심 기능 구현Phase 3 — Core Feature Implementation

설계가 완료되었으니, 이제 한 번에 하나씩 기능을 구현합니다. 순서가 중요합니다. Design is done. Now implement features one at a time. Order matters.

1

데이터 모델 구현Implement Data Models

타입 정의와 localStorage 유틸리티 함수부터 만듭니다. 이것이 모든 기능의 기초입니다.

Start with type definitions and localStorage utility functions. This is the foundation for all features.

Claude Code Prompt
Phase 2에서 설계한 데이터 모델을 구현해줘. 1. Memo, Category 타입 정의 (types.ts) 2. localStorage CRUD 유틸리티 (storage.ts) 3. 초기 더미 데이터 3개 생성 CLAUDE.md의 네이밍 컨벤션을 따라줘.
2

목록 화면 (리스트 + 검색)List Screen (List + Search)

메모 목록을 보여주고, 실시간으로 검색할 수 있는 메인 화면을 만듭니다.

Build the main screen that shows the memo list and allows real-time search.

Claude Code Prompt
메모 목록 화면을 만들어줘. 포함할 것: - 메모 카드 리스트 (제목, 날짜, 카테고리 뱃지) - 상단 검색바 (제목+본문 실시간 필터링) - 새 메모 작성 버튼 (FAB) - 빈 상태 화면 ("아직 메모가 없습니다") storage.ts의 함수를 사용해줘.
3

작성/편집 화면 (마크다운 에디터)Create/Edit Screen (Markdown Editor)

마크다운을 지원하는 메모 작성 및 편집 화면을 구현합니다.

Implement the memo creation and editing screen with markdown support.

Claude Code Prompt
메모 작성/편집 화면을 만들어줘. 포함할 것: - 제목 입력 필드 - 마크다운 에디터 (편집 모드 / 미리보기 모드 토글) - 카테고리 선택 드롭다운 - 저장 / 취소 버튼 - 삭제 버튼 (편집 모드일 때) 마크다운 렌더링은 marked 라이브러리 사용.
4

카테고리 필터링Category Filtering

사이드바 또는 탭으로 카테고리별 필터링 기능을 추가합니다.

Add category-based filtering via a sidebar or tabs.

Claude Code Prompt
카테고리 필터링 기능을 추가해줘. - 목록 화면 상단에 카테고리 탭 추가 - "전체" + 각 카테고리별 필터 - 카테고리 관리 (추가/삭제) 기능 - 각 카테고리에 색상 지정 가능
🎯
한 번에 하나씩, 단계별로 진행하세요. "메모 앱 전체를 만들어줘"보다 기능별로 나눠서 요청하면, 각 단계에서 결과를 확인하고 피드백을 줄 수 있습니다. 문제가 생겨도 어디서 발생했는지 바로 알 수 있죠.
One at a time, step by step. Breaking requests by feature rather than "build the whole app" lets you review results and give feedback at each step. When problems arise, you know exactly where they came from.
05

Phase 4 & 5 — 코드 리뷰 & 테스트Phase 4 & 5 — Code Review & Testing

기능 구현이 끝나면 끝이 아닙니다. 커스텀 에이전트로 코드를 리뷰하고, 테스트로 안정성을 확보합니다. Feature implementation isn't the finish line. Review code with a custom agent and ensure stability with tests.

1

@code-reviewer로 리뷰 실행Run Review with @code-reviewer

커스텀 에이전트를 활용하여 코드 전체를 체계적으로 리뷰합니다.

Use the custom agent to systematically review the entire codebase.

Claude Code Prompt
@code-reviewer DailyMemo 프로젝트 전체를 리뷰해줘. 특히 다음을 중점적으로 봐줘: - TypeScript 타입 안정성 - 컴포넌트 분리가 적절한지 - localStorage 에러 처리 - 접근성 (a11y) 준수 여부
2

리뷰 피드백 반영Apply Review Feedback

리뷰에서 발견된 문제점을 하나씩 수정합니다. 심각도가 높은 것부터 처리합니다.

Fix issues found in the review one by one. Address the most severe ones first.

3

유닛 테스트 작성 요청Request Unit Test Writing

핵심 로직에 대한 테스트를 작성합니다.

Write tests for the core logic.

Claude Code Prompt
DailyMemo의 핵심 로직에 유닛 테스트를 작성해줘. 테스트 대상: - storage.ts: CRUD 함수 전체 - 검색 필터링 로직 - 카테고리 필터링 로직 - 마크다운 변환 유틸 Vitest를 사용하고, 각 함수별로 정상/에러 케이스 포함.
4

테스트 실행 및 수정Run Tests and Fix

작성된 테스트를 실행하고, 실패하는 테스트가 있으면 코드를 수정합니다.

Run the written tests and fix any failing ones by updating the code.

❌ 테스트 전
❌ Before Tests
"메모 저장이 가끔 안 되는 것 같은데..." "검색이 한글로 안 되는 건가?" "삭제했는데 새로고침하면 다시 나타나요" → 버그인지 아닌지도 확인 불가 → 수정하면 다른 곳이 깨짐
"Memo saving seems to fail sometimes..." "Does search not work in Korean?" "I deleted it but it reappears on refresh" → Can't even tell if it's a bug → Fix one thing, break another
✅ 테스트 후
✅ After Tests
✅ storage.test.ts 12 passed ✅ search.test.ts 8 passed ✅ category.test.ts 6 passed ✅ markdown.test.ts 4 passed
→ 30개 테스트가 모든 케이스를 검증 → 수정해도 안심하고 배포 가능
→ 30 tests cover all edge cases → Deploy with confidence after any fix
06

Phase 6 — Hook + Git + PR 자동화Phase 6 — Hook + Git + PR Automation

마지막 단계입니다. Hook으로 안전장치를 걸고, Git으로 깔끔하게 정리하고, PR을 자동 생성합니다.
The final phase. Set up safety guards with Hooks, clean up with Git, and auto-generate PRs.

1

Hook 설정 (main 브랜치 보호)Hook Configuration (Protect main branch)

Claude가 실수로 main 브랜치에 직접 커밋하는 것을 방지합니다.

Prevents Claude from accidentally committing directly to the main branch.

.claude/settings.json
{ "hooks": { "PreToolUse": [ { "matcher": "Bash", "hooks": [ { "type": "command", "command": "if git branch --show-current | grep -q '^main$'; then echo 'DENY: main 브랜치에 직접 작업 금지. 기능 브랜치를 만들어주세요.' && exit 1; fi" } ] } ] } }
2

기능별 커밋 분리 요청Request Feature-by-Feature Commit Split

지금까지의 변경사항을 기능별로 깔끔하게 커밋합니다.

Cleanly commit all changes made so far, organized by feature.

Claude Code Prompt
지금까지 만든 코드를 기능별로 커밋을 나눠줘. 커밋 순서: 1. feat: 프로젝트 초기 셋업 및 CLAUDE.md 2. feat: 데이터 모델 및 스토리지 유틸리티 3. feat: 메모 목록 화면 및 검색 4. feat: 메모 작성/편집 및 마크다운 지원 5. feat: 카테고리 필터링 6. test: 유닛 테스트 추가 7. fix: 코드 리뷰 피드백 반영 CLAUDE.md의 커밋 규칙을 따라줘.
3

PR 설명 자동 생성Auto-generate PR Description

모든 커밋이 정리되면 PR을 생성합니다.

Once all commits are organized, create the PR.

Claude Code Prompt
feature/daily-memo 브랜치로 PR을 만들어줘. PR 설명에 포함할 것: - 구현한 기능 목록 - 스크린샷 placeholder - 테스트 결과 요약 - 리뷰어에게 봐달라는 포인트
4

최종 리뷰Final Review

PR이 생성되면 마지막으로 전체를 한 번 더 점검합니다. 빠진 것이 없는지, 테스트가 모두 통과하는지 확인합니다.

Once the PR is created, do one final check of everything. Verify nothing is missing and all tests pass.

07

GitHub Actions 통합GitHub Actions Integration

DailyMemo를 GitHub에 올렸다면, Claude Code GitHub Actions로 PR 리뷰, 이슈 처리, 버그 수정을 자동화할 수 있습니다.
Once DailyMemo is on GitHub, you can automate PR reviews, issue handling, and bug fixes with Claude Code GitHub Actions.

팀원이 24시간 대기 중A Teammate on 24/7 Standby

PR을 열면 Claude가 자동으로 코드를 리뷰합니다. 이슈에 @claude를 멘션하면 직접 코드를 짜서 PR을 올려줍니다. 새벽 2시에도, 주말에도.

Open a PR and Claude automatically reviews the code. Mention @claude in an issue and it writes the code and opens a PR. At 2 AM, on weekends — always there.

빠른 설정Quick Setup

Claude Code 터미널에서 /install-github-app 명령 하나로 GitHub 앱 설치와 시크릿 설정을 안내받을 수 있습니다. 또는 아래 워크플로우 파일을 직접 추가할 수도 있습니다. Run /install-github-app in the Claude Code terminal to be guided through GitHub app installation and secret setup. Or manually add the workflow file below.

.github/workflows/claude.yml
name: Claude Code on: issue_comment: types: [created] pull_request_review_comment: types: [created] jobs: claude: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: anthropics/claude-code-action@v1 with: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} # @claude 멘션에 자동 응답
⚠️
베타 버전 사용 중이라면? @beta@v1으로 변경하고, mode·direct_prompt 같은 구 파라미터는 제거하세요. v1에서는 자동 모드 감지와 통합 prompt 인터페이스가 기본 제공됩니다.
Using the beta version? Change @beta to @v1 and remove old parameters like mode and direct_prompt. v1 provides automatic mode detection and a unified prompt interface by default.

📋 실제 사용 시나리오Real-world Usage Scenarios

🔍

자동 PR 코드 리뷰Automated PR Code Review

PR을 올리면 Claude가 CLAUDE.md 기준으로 자동 리뷰. 이슈를 댓글로 남겨줍니다. 사람 리뷰어가 핵심에만 집중할 수 있습니다.

Open a PR and Claude auto-reviews against your CLAUDE.md. Issues are posted as comments. Human reviewers can focus on what matters most.

@claude review this PR
🐛

버그 리포트 → PRBug Report → PR

이슈에 버그를 설명하고 @claude를 멘션하면, Claude가 코드를 수정해서 PR을 직접 올려줍니다.

Describe a bug in an issue and mention @claude. Claude fixes the code and opens a PR directly.

이슈 → PR 자동화Issue → PR Automation
🏷️

이슈 트리아지 & 라벨링Issue Triage & Labeling

새 이슈가 열리면 자동으로 분석하여 적절한 라벨을 붙이고, 우선순위를 제안합니다. 이슈 관리 시간을 크게 줄여줍니다.

When a new issue is opened, Claude automatically analyzes it, applies labels, and suggests priority. Greatly reduces issue management time.

자동 분류Auto Classification
🧪

테스트 실패 분석Test Failure Analysis

CI에서 테스트가 실패하면 Claude가 로그를 분석해 원인을 설명하고 수정 방법을 제안합니다. 디버깅 시간을 절약합니다.

When CI tests fail, Claude analyzes the logs, explains the cause, and suggests a fix. Saves debugging time.

CI 연동CI Integration

💬 이슈/PR에서 Claude 호출하기Calling Claude from Issues/PRs

GitHub 이슈 / PR 댓글
# 기능 구현 요청 @claude implement this feature based on the issue description # 코드 리뷰 요청 @claude review this PR for security issues # 버그 수정 요청 @claude fix the TypeError in the user dashboard component

📊 PR 자동 리뷰 워크플로우PR Auto-review Workflow

.github/workflows/claude-review.yml
name: Claude Code Review on: pull_request: types: [opened, synchronize] jobs: review: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: anthropics/claude-code-action@v1 with: anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }} prompt: "/review" claude_args: "--max-turns 5"
💡
GitLab CI/CD도 지원합니다. GitHub Actions 외에도 GitLab CI/CD 파이프라인에 Claude를 통합할 수 있습니다. 기업 환경이라면 AWS Bedrock 또는 Google Vertex AI를 통해 자체 인프라에서 실행하는 것도 가능합니다.
GitLab CI/CD is also supported. Beyond GitHub Actions, you can integrate Claude into GitLab CI/CD pipelines. Enterprise environments can also run it on their own infrastructure via AWS Bedrock or Google Vertex AI.

📱 Slack 통합 (Teams 전용)Slack Integration (Teams Only)

💬

Slack에서 @Claude 호출Call @Claude from Slack

Slack 채널에서 @Claude를 멘션하면 코드 작업을 요청할 수 있습니다. 버그 리포트를 보내면 PR이 돌아옵니다.

Mention @Claude in a Slack channel to request code work. Send a bug report and get a PR back.

👥

Claude Code for Teams 필요Requires Claude Code for Teams

Slack 통합은 Claude Code for Teams 플랜에서 지원됩니다. 팀 전체가 동일한 Claude 설정을 공유하고 협업할 수 있습니다.

Slack integration is available on the Claude Code for Teams plan. The whole team shares the same Claude configuration and collaborates seamlessly.

08

팀 워크플로우 & 비용 관리Team Workflows & Cost Management

혼자가 아닌 팀으로 일할 때, 버전 컨트롤로 Claude 설정을 공유하고 비용을 효율적으로 관리하는 방법입니다.
When working as a team rather than solo, here's how to share Claude configs via version control and manage costs efficiently.

📂 팀과 공유할 파일들Files to Share with Your Team

📋

CLAUDE.md — 팀 표준CLAUDE.md — Team Standard

코드 컨벤션, 커밋 규칙, 아키텍처 결정사항을 CLAUDE.md에 정의합니다. 저장소에 커밋하면 모든 팀원이 동일한 기준으로 작업합니다.

Define code conventions, commit rules, and architecture decisions in CLAUDE.md. Commit to the repo so every team member works from the same standard.

git에 커밋commit to git
🧠

.claude/skills/ — 팀 공용 스킬.claude/skills/ — Shared Team Skills

자주 쓰는 커스텀 프롬프트(코드 리뷰, PR 생성 등)를 .claude/skills/에 저장하고 버전 관리합니다. 팀원 모두가 동일한 스킬을 사용합니다.

Store frequently used custom prompts (code review, PR generation, etc.) in .claude/skills/ with version control. All team members use the same skills.

git에 커밋commit to git
🤖

.claude/agents/ — 팀 공용 에이전트.claude/agents/ — Shared Team Agents

코드 리뷰어, 테스트 생성기 등 서브에이전트 정의를 .claude/agents/에 저장합니다. 팀 전체가 동일한 에이전트 설정을 공유합니다.

Store sub-agent definitions like code reviewers and test generators in .claude/agents/. The whole team shares the same agent configurations.

git에 커밋commit to git
🔒

.claude/settings.json — 프로젝트 권한.claude/settings.json — Project Permissions

allowedTools로 프로젝트에서 허용할 도구를 지정합니다. 개인 설정은 .claude/settings.local.json에 저장하고 gitignore에 추가하세요.

Use allowedTools to specify which tools are allowed in the project. Store personal settings in .claude/settings.local.json and add to gitignore.

settings.json: git 커밋settings.json: git commit settings.local.json: gitignoresettings.local.json: gitignore
.claude/settings.json — 프로젝트 공유 권한
{ "allowedTools": [ "Read", "Write", "Edit", "Bash", "Glob", "Grep" ], // 팀 전체에 적용되는 권한. git에 커밋하세요. "hooks": { "PreToolUse": [...] } }

💰 비용 관리Cost Management

Claude Code는 API 토큰을 소비합니다. 현명하게 사용하면 비용을 크게 줄일 수 있습니다. Claude Code consumes API tokens. Using it wisely can significantly reduce costs.

📊

/cost 명령/cost Command

세션 중 언제든 /cost를 입력하면 현재 세션에서 사용한 토큰과 비용을 확인할 수 있습니다.

Type /cost anytime during a session to see the tokens and cost used so far.

🧠

모델 선택 전략Model Selection Strategy

간단한 작업은 Haiku, 일반 개발은 Sonnet, 복잡한 설계나 분석은 Opus를 사용합니다. 작업 난이도에 맞는 모델을 고르면 비용이 크게 줄어듭니다.

Use Haiku for simple tasks, Sonnet for general development, and Opus for complex design or analysis. Matching the model to the task difficulty greatly reduces costs.

🤖

서브에이전트 최적화Sub-agent Optimization

대량 반복 작업(파일 분석, 테스트 생성 등)은 작은 모델을 사용하는 서브에이전트에 위임합니다. Opus는 판단이 필요한 핵심 작업에만 사용합니다.

Delegate bulk repetitive tasks (file analysis, test generation, etc.) to sub-agents using smaller models. Reserve Opus for core tasks that require judgment.

💸 비효율적인 사용
💸 Inefficient Usage
모든 작업에 Opus 사용 → 파일 목록 확인에도 Opus → 단순 변수명 변경에도 Opus → 월 비용이 예상보다 10배
Using Opus for everything → Opus just to list files → Opus for a simple variable rename → Monthly cost 10x higher than expected
💹 효율적인 사용
💹 Efficient Usage
Haiku: 단순 검색, 형식 변환simple search, format conversion Sonnet: 일반 코드 작성/수정general code writing/editing Opus: 아키텍처 설계, 복잡한 디버깅architecture design, complex debugging
→ 동일한 작업량, 비용은 1/5
→ Same workload, 1/5 the cost
📊
엔터프라이즈 Analytics: Claude Code for Enterprise를 사용하는 팀은 Analytics 대시보드에서 팀 전체의 사용량을 모니터링하고 비용을 추적할 수 있습니다. 어떤 작업에 토큰이 많이 쓰이는지 파악해 워크플로우를 최적화하세요.
Enterprise Analytics: Teams using Claude Code for Enterprise can monitor team-wide usage and track costs in the Analytics dashboard. Identify which tasks consume the most tokens and optimize your workflow accordingly.
09

회고 & 다음 단계Retrospective & Next Steps

DailyMemo 프로젝트를 통해 배운 것을 정리하고, 다음 프로젝트에 적용할 개선점을 생각해봅니다.
Summarize what you learned from the DailyMemo project and think about improvements to apply to your next project.

📚 이 프로젝트에서 배운 것What We Learned from This Project

📋

CLAUDE.md의 힘The Power of CLAUDE.md

프로젝트 시작 전에 규칙을 정의하면 처음부터 끝까지 일관된 코드가 나옵니다. "나중에 정리하자"는 없습니다.

Define the rules before the project starts and you'll get consistent code from beginning to end. There's no "I'll clean it up later."

🗺️

Plan Mode의 가치The Value of Plan Mode

설계 없이 바로 코딩하면 중간에 구조를 뒤엎어야 합니다. Plan Mode로 미리 검토하면 구현 속도가 2배 빨라집니다.

Jumping straight to code without a design means rebuilding the structure halfway through. Reviewing upfront with Plan Mode doubles implementation speed.

🤖

에이전트 활용Leveraging Agents

코드 리뷰를 사람 대신 에이전트가 해주면, 혼자 개발해도 팀 개발 수준의 품질 관리가 가능합니다.

Having an agent do code reviews instead of a person means you can achieve team-level quality control even when developing solo.

🧪

테스트의 안정감The Safety of Tests

테스트가 있으면 "이거 수정해도 괜찮을까?" 걱정 없이 과감하게 리팩토링할 수 있습니다.

With tests in place, you can refactor boldly without worrying "is it okay to change this?"

🚧

Hook으로 안전장치Safety Guards with Hooks

main 브랜치 보호, 커밋 전 린트 체크 등 자동화된 안전장치가 실수를 예방합니다.

Automated safeguards like main branch protection and pre-commit lint checks prevent mistakes before they happen.

🔀

Git 워크플로우Git Workflow

기능별 브랜치, 의미 있는 커밋, PR 자동 생성까지. 깔끔한 히스토리는 미래의 나를 위한 선물입니다.

Feature branches, meaningful commits, and auto-generated PRs. A clean history is a gift to your future self.

GitHub Actions 자동화GitHub Actions Automation

PR을 올리면 Claude가 자동 리뷰하고, 이슈에 @claude를 멘션하면 직접 PR을 만들어줍니다. CI/CD에 AI가 더해지면 개발 속도가 한 단계 올라갑니다.

Open a PR and Claude auto-reviews. Mention @claude in an issue and it creates a PR directly. Adding AI to CI/CD takes development velocity to another level.

👥

팀 설정 버전 관리Version Control for Team Config

CLAUDE.md, .claude/skills/, .claude/agents/를 저장소에 커밋하면 팀 전체가 동일한 Claude 환경을 공유합니다. 개인 설정은 settings.local.json으로 분리합니다.

Commit CLAUDE.md, .claude/skills/, and .claude/agents/ to the repo so the whole team shares the same Claude environment. Separate personal settings into settings.local.json.

🚀
다음 프로젝트에 적용할 개선점: 이번에 배운 워크플로우를 자신의 실제 프로젝트에 적용해보세요. CLAUDE.md 먼저, Plan Mode로 설계, 단계별 구현, 에이전트 리뷰, 테스트, Hook 설정 — 이 순서를 기억하세요. 프로젝트가 달라져도 이 프레임워크는 동일합니다.
Improvements to apply to your next project: Apply the workflow you learned here to your own real projects. CLAUDE.md first, design with Plan Mode, implement step by step, agent review, tests, Hook setup — remember this order. The framework is the same regardless of the project.

DailyMemo 프로젝트 완성! DailyMemo Project Complete!

Phase 1 CLAUDE.md로 기반 다지기Build the foundation with CLAUDE.md
Phase 2 Plan Mode로 설계하기Design with Plan Mode
Phase 3 단계별로 기능 구현하기Implement features step by step
Phase 4-5 리뷰 + 테스트로 품질 확보Ensure quality with review + tests
Phase 6 Hook + Git으로 자동화Automate with Hook + Git
+ GitHub Actions로 CI/CD 자동화Automate CI/CD with GitHub Actions
+ 팀 워크플로우 & 비용 관리Team Workflows & Cost Management

이 워크플로우를 기억하세요. 어떤 프로젝트든 적용할 수 있습니다. Remember this workflow. It applies to any project.
"Claude, 다음 프로젝트를 시작하자""Claude, let's start the next project"

10

자주 묻는 질문Frequently Asked Questions

실전 프로젝트를 진행하면서 자주 나오는 궁금증들 Common questions that come up during real-world projects

물론입니다! 이 가이드에서는 React + TypeScript를 예시로 사용했지만, 같은 워크플로우를 Vue, Svelte, Next.js, Flutter, SwiftUI 등 어떤 기술 스택에도 적용할 수 있습니다. 핵심은 "CLAUDE.md → Plan → 단계별 구현 → 리뷰 → 테스트 → Git"이라는 프레임워크이지, 특정 기술이 아닙니다. CLAUDE.md에 해당 프레임워크의 컨벤션을 적어주기만 하면 됩니다.
Absolutely! This guide uses React + TypeScript as an example, but the same workflow applies to any tech stack — Vue, Svelte, Next.js, Flutter, SwiftUI, and more. The key is the framework: "CLAUDE.md → Plan → Step-by-step implementation → Review → Tests → Git", not the specific technology. Just write the conventions for your chosen framework in CLAUDE.md.
DailyMemo는 학습용 프로젝트이지만, 이 워크플로우로 만든 코드는 충분히 프로덕션 수준입니다. 실제 배포 전에는 몇 가지를 추가하면 좋습니다: 에러 바운더리(Error Boundary), 성능 최적화(React.memo, useMemo), SEO 설정, 그리고 실제 백엔드 연동(현재는 localStorage). Vercel이나 Netlify에 바로 배포하면 포트폴리오로도 활용할 수 있습니다.
DailyMemo is a learning project, but the code built with this workflow is fully production-quality. Before deploying, consider adding: Error Boundaries, performance optimizations (React.memo, useMemo), SEO settings, and a real backend integration (currently using localStorage). Deploy directly to Vercel or Netlify to use it as a portfolio project.
Claude Code에 익숙한 사람이라면 2~3시간이면 충분합니다. 처음이라면 반나절(4~5시간) 정도 잡으면 됩니다. 중요한 건 시간이 아니라 과정입니다. 각 Phase를 건너뛰지 말고 하나씩 밟아가면, 완성했을 때의 이해도가 완전히 다릅니다. 빠르게 끝내는 것보다 제대로 이해하는 것이 목표입니다.
If you're already familiar with Claude Code, 2–3 hours is enough. For first-timers, set aside half a day (4–5 hours). What matters is the process, not the time. If you don't skip any Phase and work through them one by one, your level of understanding at the end will be completely different. The goal is proper understanding, not finishing fast.
가능합니다. 오히려 프로젝트가 복잡할수록 이 워크플로우의 효과가 커집니다. 예를 들어 실시간 채팅 앱, E-commerce 플랫폼, 대시보드 같은 프로젝트도 같은 패턴으로 진행할 수 있습니다. 차이점은 Phase 2(설계)에서 더 많은 시간을 투자하고, Phase 3(구현)을 더 세분화하는 것뿐입니다. 복잡한 프로젝트일수록 CLAUDE.md와 Plan Mode의 가치가 빛납니다.
Yes. In fact, the more complex the project, the greater the benefit of this workflow. Projects like real-time chat apps, e-commerce platforms, and dashboards all follow the same pattern. The only difference is spending more time in Phase 2 (design) and breaking Phase 3 (implementation) into smaller pieces. The more complex the project, the more CLAUDE.md and Plan Mode shine.
Claude Code 터미널에서 /install-github-app 명령 하나로 대부분을 자동으로 설정할 수 있습니다. GitHub 앱 설치부터 저장소 시크릿(ANTHROPIC_API_KEY) 추가까지 안내해줍니다. 저장소 관리자 권한이 필요하며, 직접 .github/workflows/에 워크플로우 파일을 추가하는 수동 방법도 있습니다. 설정 후에는 이슈나 PR에서 @claude를 멘션하는 것만으로 바로 사용할 수 있습니다.
Most of the setup can be done automatically with a single /install-github-app command in the Claude Code terminal. It guides you from installing the GitHub app to adding the repository secret (ANTHROPIC_API_KEY). Repository admin permissions are required. There's also a manual option of adding the workflow file directly to .github/workflows/. After setup, just mention @claude in an issue or PR to start using it immediately.
세 가지를 저장소에 커밋하면 됩니다: CLAUDE.md(팀 표준), .claude/skills/(공용 스킬), .claude/agents/(공용 에이전트). 개인 설정은 .claude/settings.local.json에 저장하고 .gitignore에 추가합니다. .claude/settings.json에는 팀 전체에 적용할 allowedTools 같은 프로젝트 권한만 커밋합니다. Slack 통합은 Claude Code for Teams 플랜에서 지원됩니다.
Commit three things to the repository: CLAUDE.md (team standard), .claude/skills/ (shared skills), .claude/agents/ (shared agents). Store personal settings in .claude/settings.local.json and add to .gitignore. Only commit project permissions like allowedTools to .claude/settings.json. Slack integration is available on the Claude Code for Teams plan.
이전: 고급 기능Prev: Advanced Features