03. 첫 세션과 기본 작업 흐름
- 프로젝트 폴더에서
claude를 실행해 첫 세션을 시작할 수 있다 /init으로 프로젝트를 분석하고 첫 작업을 지시하는 흐름을 익힌다- 대화형 모드와 일회성(
-p) 모드를 구분한다 - 자주 쓰는 내장 슬래시 명령의 쓰임새를 안다
첫 실행: 위치가 곧 컨텍스트
Claude Code는 현재 작업 디렉터리를 기준으로 동작합니다. 그래서 첫걸음은 언제나 같습니다 — 작업할 프로젝트 폴더로 이동한 뒤 실행.
cd /path/to/your/project
claude
이제 대화형 세션 안에 들어왔습니다. Claude Code는 폴더 구조를 스캔하고, 무엇을 도와줄지 기다립니다. 평범한 문장으로 작업을 시키면 됩니다.
📌 핵심: 엉뚱한 폴더에서 실행하면 엉뚱한 컨텍스트를 봅니다. "왜 내 프로젝트를 모르지?"의 8할은 잘못된 디렉터리에서 시작한 경우입니다.
가장 가치 있는 첫 명령: /init
세션에 들어와서 할 수 있는 가장 효과 좋은 한 가지는 /init입니다.
> /init
/init은 코드베이스를 분석해 시작용 CLAUDE.md 파일을 만들어 줍니다. 빌드 명령, 코딩 규칙, 아키텍처 메모 등을 담은 이 파일은 이후 매 세션 시작 시 자동으로 로드되어 Claude가 당신의 프로젝트를 "기억"하게 합니다. (CLAUDE.md는 9장에서 깊이 다룹니다.)
sequenceDiagram
participant U as 사용자
participant C as Claude Code
participant F as 파일시스템
U->>C: cd 프로젝트 && claude
C->>F: 폴더 구조 스캔
U->>C: /init
C->>F: README·설정·소스 분석
C->>F: CLAUDE.md 생성
C-->>U: "프로젝트 규칙을 정리했습니다"
Note over U,C: 이후 매 세션에서 CLAUDE.md 자동 로드
첫 작업 지시: 평범한 말로
이제 실제 작업을 시켜봅니다. 예를 들어:
> 이 프로젝트 구조를 요약해줘. 어떤 기술 스택이고 진입점은 어디야?
Claude Code는 파일을 읽고 기술 스택을 식별해 정리해 줍니다. 코드를 고치는 작업은 이렇게:
> 사용자 목록 화면에 이름순 정렬 기능을 추가해줘
Claude는 관련 파일을 찾아 변경을 제안하고, 수정 전에 diff를 보여주며 승인을 요청합니다. 당신은 각 변경을 검토해 승인하거나 거부합니다. 이 "제안 → 검토 → 승인" 흐름이 기본 동작이며, 권한 모델의 핵심입니다(→ 8장).
⚠️ 흔한 실수: 첫날부터 "알아서 다 해줘"라고 던지기. 처음엔 작고 명확한 작업으로 시작해 도구의 동작 방식을 관찰하고, 신뢰가 쌓이면 점점 큰 작업으로 키우는 게 정석입니다.
대화형 vs 일회성(-p)
| 모드 | 실행 | 쓰임새 |
|---|---|---|
| 대화형 | claude | 세션 안에서 주고받으며 작업. 기본 |
| 일회성(헤드리스) | claude -p "작업" | 한 번 실행하고 결과 출력 후 종료. 스크립팅·빠른 질문 |
# 한 번만 실행하고 끝 claude -p "이 디렉터리의 TODO 주석을 전부 찾아 목록으로 만들어줘"
-p 모드는 자동화·CI의 토대입니다(→ 19장).
자주 쓰는 내장 슬래시 명령
세션 안에서 /로 시작하는 명령들은 작업 흐름을 제어합니다. 처음 알아둘 것들:
| 명령 | 용도 |
|---|---|
/help | 사용 가능한 명령·도움말 |
/init | 프로젝트 분석 → CLAUDE.md 생성 |
/context | 현재 컨텍스트 사용량을 색상 그리드로 시각화 |
/compact | 대화 이력을 요약해 컨텍스트 정리 (→ 4장) |
/review | 코드 리뷰 |
/security-review | 보안 관점 리뷰 |
/permissions | 권한 규칙 관리 UI (→ 8장) |
/agents | 서브에이전트 관리 (→ 13장) |
/mcp | MCP 서버 상태 (→ 14장) |
첫 세션 권장 흐름
flowchart TB
A[프로젝트 폴더로 cd]:::user --> B[claude 실행]:::user
B --> C[/init 으로 CLAUDE.md 생성]:::tool
C --> D[작은 질문으로 구조 파악]:::agent
D --> E[작은 수정 작업 지시]:::agent
E --> F{diff 검토}:::danger
F -->|승인| G[변경 적용]:::result
F -->|거부| E
G --> H[git으로 커밋]:::result
classDef user fill:#FFE082,stroke:#F9A825,color:#000
classDef agent fill:#80DEEA,stroke:#00ACC1,color:#000
classDef tool fill:#90CAF9,stroke:#1E88E5,color:#000
classDef result fill:#A5D6A7,stroke:#43A047,color:#000
classDef danger fill:#EF9A9A,stroke:#E53935,color:#000
GUI로 시작하고 싶다면
터미널이 부담스럽다면 데스크톱 앱(macOS·Windows)으로 같은 작업을 시각적 diff·미리보기 패널과 함께 할 수 있습니다. CLI와 설정 파일을 공유하며 같은 프로젝트에서 동시에 돌릴 수도 있습니다. VS Code 확장·JetBrains 플러그인도 에디터 안에서 같은 핵심 기능을 제공합니다. 자세한 채널별 사용법은 17장에서 다룹니다.
이 장에서 배운 것
- Claude Code는 현재 디렉터리를 컨텍스트로 삼는다. 항상 프로젝트 폴더에서 실행한다.
- 첫 세션의 핵심은
/init— 코드베이스를 분석해 CLAUDE.md를 만들고, 이후 매 세션에 자동 로드된다. - 코드 수정은 "제안 → diff 검토 → 승인"의 흐름으로 진행된다.
claude는 대화형,claude -p는 일회성(헤드리스).- 작은 작업으로 시작하고, 변경 후 바로 커밋하는 습관이 안전하다.
✍️ 확인 문제
- 새 프로젝트에서 Claude Code를 처음 쓸 때
/init을 먼저 하는 이유는 무엇인가요? claude와claude -p "..."는 각각 언제 쓰나요?- Claude가 코드를 수정할 때 사용자가 거치는 단계(흐름)를 순서대로 말해 보세요.
다음 장: 04. 세션과 컨텍스트 이해하기 — Claude가 "기억"하는 방식과 그 한계를 들여다봅니다.