Lab 01. Claude 생태계
이 랩에서 다루는 것
- 제품군 지도: Claude 모델부터 claude.ai · Desktop · Cowork · Code · Agent SDK 까지, 각자의 자리
- 전체 구조: 모델(두뇌) → 실행 → 애플리케이션 → 확장 → 외부 세계의 계층
- 플랫폼 매트릭스: 어떤 기능이 어디서 되는지 한 장으로
- 확장 메커니즘: CLAUDE.md · Skills · MCP · Sub-agents · Hooks · Plugins 의 역할(개념만)
- MCP vs Plugin · 시작 권장 순서: 헷갈리는 둘의 차이와, 무엇부터 손대야 하나
- 이 과정의 초점: 여러 확장 중 MCP 에 집중하는 이유
Step 1. 제품군 지도
같은 Claude 모델을 쓰더라도 어떤 껍데기에서 쓰느냐에 따라 할 수 있는 일이 완전히 달라집니다.
| 제품 | 한 줄 | 핵심 |
|---|---|---|
| Claude (모델) | Anthropic의 LLM(Opus · Sonnet · Haiku) | 모든 제품의 두뇌. API · 웹 · 모바일로 접근. 컨텍스트 200K~1M |
| claude.ai | 웹 인터페이스 | Web Search · Artifacts · Skills · 원격 MCP(Connectors). 로컬 파일 접근 불가 |
| Claude Desktop | 데스크톱 네이티브 앱 | claude.ai 전체 + 로컬 MCP + 파일 접근. GUI 라 비개발자도 사용. 파일·Bash·Git 은 MCP 통해서만 |
| Claude Cowork | Desktop 내 자율 실행 모드 | 샌드박스 VM 에서 멀티스텝 워크플로우 자동 실행. 비개발 업무 실행자. Plugins 지원 |
| Claude Code | 터미널 · IDE 에이전트 플랫폼 | 파일 · Bash · Git 을 직접. MCP · Skills · Sub-agents · Plugins · Hooks 모두 지원. Headless 자동화 |
| Claude Agent SDK | 에이전트 빌더 SDK | Claude Code 를 라이브러리로 임베딩(Python · TypeScript). 커스텀 에이전트 · CI/CD 구축 |
오늘의 주인공은 Claude Code 입니다. 터미널에서 파일을 읽고 고치고 명령을 실행하며, MCP 로 외부 세계까지 손을 뻗는 실행자입니다. 나머지는 대체로 ‘조언자’ 에 가깝습니다.

- Claude Code 가 claude.ai · Desktop · Cowork 와 무엇이 다른지 한 문장으로 말할 수 있다
Step 2. 전체 구조 한눈에
생태계는 맨 아래 모델(두뇌) 을 토대로 실행 엔진 → 애플리케이션 → 확장이 차곡차곡 쌓이고, 맨 위에서 외부 세계와 만나는 5개 레이어입니다. 위(외부)에서 아래(모델)로 읽어 내려가 보세요.
┌────────────────────────────────────────────────────────────────┐
│ Layer 5: External World │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ External Services & Data Sources │ │
│ │ • Slack, GitHub, Google Drive, AWS │ │
│ │ • Databases, APIs, Cloud Services │ │
│ │ • File Systems, Development Tools │ │
│ └─────────────────────────────────────────────────────────┘ │
└────────────────────────────┬───────────────────────────────────┘
│
│ Connected via MCP Protocol
│
┌────────────────────────────▼───────────────────────────────────┐
│ Layer 4: Extension Layer │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ MCP Servers (Model Context Protocol) │ │
│ │ • Standardized protocol for external connections │ │
│ │ • Available in: Desktop ✓, Code ✓, Web ✓ │ │
│ └────────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ Skills (Domain Knowledge Injection) │ │
│ │ • Auto-loaded based on context │ │
│ │ • Available in: Desktop ✓, Code ✓, Web ✓ │ │
│ └────────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ Sub-agents (Task Delegation & Parallelization) │ │
│ │ • Independent context and execution │ │
│ │ • Available in: Code ✓ only │ │
│ └────────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ Plugins (Packaging & Distribution) │ │
│ │ • Bundle Skills + MCP + Agents + Commands │ │
│ │ • Available in: Code ✓ only │ │
│ └────────────────────────────────────────────────────────┘ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ Hooks (Event-driven Automation) │ │
│ │ • Trigger on lifecycle events │ │
│ │ • Available in: Code ✓ only │ │
│ └────────────────────────────────────────────────────────┘ │
└────────────────────────────┬───────────────────────────────────┘
│
│ Used by Applications
│
┌────────────────────────────▼───────────────────────────────────┐
│ Layer 3: Application Layer │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ claude.ai │ │ Claude │ │ Claude │ │
│ │ (Web) │ │ Desktop │ │ Mobile │ │
│ ├──────────────┤ ├──────────────┤ ├──────────────┤ │
│ │ • Browser │ │ • Native App │ │ • iOS │ │
│ │ • Artifacts │ │ • MCP ✓ │ │ • Android │ │
│ │ • Web Search │ │ • Skills ✓ │ │ • Web Search │ │
│ │ • Docs │ │ • Artifacts │ │ • Docs │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Claude Code │ │
│ ├─────────────────────────────────────────────────────────┤ │
│ │ • CLI / VS Code Extension │ │
│ │ • Direct File System Access │ │
│ │ • Direct Bash Execution │ │
│ │ • Native Git Integration │ │
│ │ • MCP ✓ | Skills ✓ | Sub-agents ✓ | Plugins ✓ | Hooks ✓ │ │
│ │ • Stateful Workspace │ │
│ │ • Headless Mode (Automation) │ │
│ └─────────────────────────────────────────────────────────┘ │
└────────────────────────────┬───────────────────────────────────┘
│
│ All applications wrap
│
┌────────────────────────────▼───────────────────────────────────┐
│ Layer 2: Execution Layer │
│ ┌──────────────────────────────────────────────────────────┐ │
│ │ Tool Use & Execution Engine │ │
│ │ • Multi-turn coordination │ │
│ │ • Function Calling API │ │
│ │ • Tool parameter generation │ │
│ │ • Result interpretation │ │
│ └──────────────────────────────────────────────────────────┘ │
└────────────────────────────┬───────────────────────────────────┘
│
│ Powered by
│
┌────────────────────────────▼───────────────────────────────────┐
│ Layer 1: Model Layer │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ Claude Model │ │
│ │ (Sonnet / Opus / Haiku) │ │
│ │ │ │
│ │ Core Capabilities: │ │
│ │ • Natural Language Understanding │ │
│ │ • Reasoning & Problem Solving │ │
│ │ • Code Generation & Analysis │ │
│ │ • Multi-modal Processing │ │
│ │ • Long Context Window (200K ~ 1M tokens) │ │
│ └─────────────────────────────────────────────────────────┘ │
│ │
│ Provided by: Anthropic API │
└────────────────────────────────────────────────────────────────┘- Layer 1·2 (모델 · 실행 엔진) 모든 제품이 공유하는 토대. 같은 모델, 같은 도구 호출(Tool Use) 엔진.
- Layer 3 (애플리케이션) 그 위에 올라가는 껍데기. claude.ai 는 조언자, Claude Code 는 실행자.
- Layer 4·5 (확장 · 외부 세계) 확장 기능이 에이전트를 외부 세계와 연결합니다. 이 중 MCP 가 오늘의 핵심입니다.
전체 구조 요약: 제품별 역할
같은 모델을 감싸지만 역할이 다릅니다. claude.ai · Desktop 은 조언자, Cowork · Code 는 실행자이고, 모든 확장을 다 쓰는 건 Claude Code 뿐입니다.
Claude Model (두뇌) — Opus / Sonnet / Haiku
│ Context: 200K ~ 1M tokens
↓
애플리케이션 (Wrappers)
│
├─ claude.ai (Web + Mobile)
│ 역할: Advisor (조언자)
│ 기능: Connectors(MCP) + Skills + Projects + Artifacts + Web Search
│
├─ Claude Desktop
│ 역할: Advanced Advisor (고급 조언자)
│ 기능: claude.ai 전체 + 로컬 MCP 서버 + Skills
│
├─ Claude Cowork (Desktop 내 Research Preview)
│ 역할: 비개발 업무 실행자
│ 기능: 로컬 파일 접근(샌드박스) + 멀티스텝 워크플로우 + Plugins
│
└─ Claude Code
역할: 개발 업무 실행자 (에이전트 오케스트레이션 플랫폼)
기능: 모든 확장 기능 지원
├─ MCP (외부 연결)
├─ Skills (지식 주입)
├─ Sub-agents (작업 분산)
├─ Agent Teams (다중 에이전트 협업) ← NEW
├─ Plugins (패키징)
├─ Hooks (자동화 트리거)
└─ Agent SDK (프로그래밍적 접근) Step 3. 지원 플랫폼 매트릭스
같은 기능이라도 제품마다 되고 안 되고가 갈립니다. 확장 기능이 풍부할수록 오른쪽(Code) 입니다.
| 기능 | claude.ai | Mobile | Desktop | Cowork | Code |
|---|---|---|---|---|---|
| 기본 대화 | ✅ | ✅ | ✅ | ✅ | ✅ |
| MCP | ✅ 원격 | ✅ 원격 | ✅ 로컬+원격 | ✅ | ✅ 로컬+원격 |
| Skills | ✅ | ❌ | ✅ | ✅ | ✅ |
| Projects | ✅ | ✅ | ✅ | ❌ | ❌ (CLAUDE.md) |
| Artifacts | ✅ | ✅ | ✅ | ❌ | ❌ |
| 로컬 파일 접근 | ❌ | ❌ | ✅ | ✅ 샌드박스 | ✅ 직접 |
| Sub-agents | ❌ | ❌ | ❌ | ❌ | ✅ |
| Agent Teams | ❌ | ❌ | ❌ | ❌ | ✅ |
| Plugins | ❌ | ❌ | ❌ | ✅ | ✅ |
| Hooks | ❌ | ❌ | ❌ | ❌ | ✅ |
| Headless / SDK | ❌ | ❌ | ❌ | ❌ | ✅ |
결론: 로컬 파일·터미널·MCP 를 직접, 거기에 자동화(Headless)·병렬(Sub-agents)까지 필요하면 Claude Code. 비개발 업무 자동화는 Cowork, 가벼운 대화·문서는 claude.ai 또는 Desktop.
- 내 업무에 Claude Code 가 맞는지 매트릭스로 판단할 수 있다
Step 4. 확장 메커니즘 (개념만)
Claude Code 는 여러 방식으로 확장됩니다. 지금은 큰 그림만 잡고, MCP 는 Lab 04~06 에서 깊이 다룹니다. 나머지(Skills · Sub-agents · Hooks · Plugins)는 ‘이런 게 있다’ 정도로 개념만 잡습니다.
| 메커니즘 | 무엇을 | 활성화 | 컨텍스트 비용 |
|---|---|---|---|
| CLAUDE.md | 항상 알아야 할 규칙·컨벤션 | 매 세션 자동 로드 | 매 세션 전체 로드 |
| Skills | 필요할 때 꺼내는 지식·워크플로우 패키지 | Claude 자동 판단 or /이름 | 설명만 로드 → 쓸 때 전체 |
| MCP | 외부 시스템 표준 연결 | 세션 시작 시 자동 | 도구 정의 로드 |
| Sub-agents · Agent Teams | 격리된 전문 작업 · 병렬 협업 | 명시적 호출 or 스킬에서 생성 | 메인 세션과 격리 |
| Hooks | 이벤트 기반 자동화 스크립트 | 이벤트 발생 시 자동 | 0 (외부 실행) |
| Plugins | 위 기능들을 묶어 배포하는 단위 | /plugin install | 포함 기능에 따라 |
한 줄씩 더 풀면
- Skills: 반복 작업 절차나 도메인 지식을 패키지로 만들어 두면, Claude 가 필요할 때 알아서(또는
/이름으로) 꺼내 씁니다. 자주 쓰는 프롬프트를/명령으로 만들던 Custom Commands 도 여기에 통합됐습니다. - Sub-agents / Agent Teams: 큰 일을 독립 컨텍스트의 보조 에이전트에게 맡기거나(1:N), 여러 에이전트가 역할을 나눠 협업합니다(N:N, 공유 태스크 리스트).
- Hooks: “파일 저장 후 린트”, “작업 끝나면 알림” 처럼 특정 이벤트에 스크립트를 자동 실행합니다. 컨텍스트 비용이 0 입니다.
- Plugins: Skills · MCP · Hooks · 명령을 하나로 묶어
/plugin install한 번으로 팀에 배포합니다.
MCP vs Plugin (자주 나오는 질문): MCP 는 “외부와 연결하는 도구”, Plugin 은 “그 도구를 포함한 더 큰 기능 패키지”. 예컨대 Context7 MCP 는 외부 문서 검색에 연결하는 도구만 제공하고, Context7 Plugin 은 그 MCP 에 Skills·설정을 함께 묶은 것입니다.
MCP vs Plugin 항목별 비교
위 한 줄 요약을 항목별로 풀면:
| 항목 | MCP | Plugin |
|---|---|---|
| 목적 | 외부 도구·서비스에 연결 | Claude Code 기능 자체를 확장 |
| 범위 | 도구 통합에 집중 | Skills · Agents · Hooks · MCP 를 묶음 |
| 설정 | .mcp.json · claude mcp add | .claude-plugin/plugin.json |
| 역할 | GitHub · DB · 외부 API 와 통신 | 재사용 기능을 팀·커뮤니티에 공유 |
| 예시 | Context7 MCP (문서 검색 연결) | Context7 Plugin (그 MCP + 설정까지) |
Sub-agents vs Agent Teams 비교
둘 다 Claude Code 전용입니다. 큰 작업을 나눠 맡기는 방식이 다릅니다.
| 항목 | Sub-agents | Agent Teams |
|---|---|---|
| 구조 | 1:N (메인 → 서브) | N:N (팀원 ↔ 팀원) |
| 컨텍스트 | 서브마다 독립 | 팀원마다 독립 + 공유 태스크 리스트 |
| 규모 | 단일 작업 위임 | 프로젝트 전체 분할 |
| 소통 | 결과만 메인에 반환 | 팀원끼리 직접 소통 |
Sub-agents 는 기본 제공되는 Explore(코드베이스 탐색)·Plan(설계)부터,
.claude/agents/에 직접 정의한 커스텀 에이전트까지 쓸 수 있습니다.
여러 기능을 함께 쓰는 패턴
확장은 하나씩 쓰는 것보다 조합할 때 강력합니다.
| 조합 | 작동 방식 | 예시 |
|---|---|---|
| CLAUDE.md + Skills | 항상 켜진 규칙 + 필요할 때 로드 | 컨벤션은 CLAUDE.md, 스타일 가이드는 Skill |
| Skill + MCP | MCP 가 연결, Skill 이 사용법을 가르침 | MCP 로 DB 연결 + Skill 로 스키마 문서화 |
| Skill + Sub-agent | Skill 이 병렬 Sub-agent 를 생성 | /review → 보안·성능·스타일 동시 검토 |
| Hook + MCP | Hook 이 MCP 로 외부 액션 트리거 | 중요 파일 수정 시 Slack 알림 |
Step 5. CLI 에이전트 패턴
Claude Code 는 채팅이 아니라 작업 루프입니다. 요청을 받으면 스스로 계획하고, 도구(파일 편집 · 터미널 명령 · MCP)를 써서 실행하고, 결과를 검증하고, 필요하면 다시 시도합니다.
graph TD A["사용자 요청"] --> B["계획 수립"] B --> C["도구 실행 (편집 · 명령 · MCP)"] C --> D["결과 검증 (빌드 · 테스트 · 출력)"] D -->|미흡| B D -->|완료| E["응답"]
이 루프 덕분에 한 번의 요청으로 여러 파일을 고치고 명령을 돌리는 일이 가능합니다. 실행 방식은 두 가지입니다.
| 방식 | 명령 | 쓰임 |
|---|---|---|
| Interactive | claude | 대화하며 단계적으로 작업 |
| Headless | claude -p "{프롬프트}" | 스크립트 · 자동화 · 일괄 처리 |
터미널 에이전트의 힘은 ‘직접 실행’에 있습니다. 그래서 무엇을 실행하도록 허용할지(권한)가 중요해집니다. Lab 03 에서 다룹니다.
- ‘계획 → 실행 → 검증 → 반복’ 루프를 설명할 수 있다
- Interactive 와 Headless 의 차이를 안다
Step 6. 무엇부터 손대나
확장을 한꺼번에 다 켤 필요는 없습니다. 효율이 나는 순서가 있습니다.
| 순서 | 기능 | 언제 | 예시 |
|---|---|---|---|
| 1 | CLAUDE.md | 가장 먼저. 프로젝트 컨벤션(500줄 이하) | “npm 말고 pnpm 써라” |
| 2 | Skills | 반복 작업이 생기면 | /review 코드 리뷰 체크리스트 |
| 3 | MCP | 외부 서비스 연결이 필요할 때 | GitHub PR · PostgreSQL 쿼리 |
| 4 | Hooks | 자동화 규칙을 강제할 때 | 파일 수정 후 ESLint |
| 5 | Sub-agents | 컨텍스트가 커지거나 병렬이 필요할 때 | 파일 수십 개 읽고 요약만 |
| 6 | Plugins | 팀·여러 프로젝트에 공유할 때 | 유용한 설정 원클릭 배포 |
| 7 | Agent Teams | 독립 세션 여러 개가 협업할 때 | 보안·성능·테스트 리뷰 동시 |
처음엔 1·2 만으로도 충분합니다. 오늘 과정은 그중 3번 MCP 를 집중적으로 익힙니다. CLAUDE.md(Lab 03) → MCP(Lab 04~06).
다음 단계
지도를 봤으니 이제 손에 쥘 차례입니다. Lab 02. 설치 & Bedrock 인증 에서 Claude Code 를 내 머신에 설치하고 Bedrock 에 연결합니다.
NxtCloud Workshop