레슨 1과 레슨 2의 연습에서 정한 작업을 가져와, 그에 맞는 완전한 SKILL.md를 만들어 보세요.
레벨 1: 나만의 첫 스킬 만들기요구 사항:
- 디렉터리 구조를 만든다
- 완전한 프론트매터를 작성한다(name + description)
- 최소한 입력 형식, 처리 단계, 출력 형식을 담은 지시문을 작성한다
- 파일을 저장한다
- Claude Code에서 한 번 호출해 본다
학습 목표:
- 스킬의 디렉터리 구조 만들기
- 완전한 SKILL.md를 처음부터 작성하기
- 점진적 공개 원칙 이해하기
- 만든 스킬을 처음으로 호출해 보기
이번 레슨에서는 아무것도 없는 상태에서 실제로 쓸 수 있는 스킬 하나를 만듭니다. 바로 태스크 정리 도구입니다.
하는 일:
왜 이것을 고르는가:
터미널을 열고 다음을 실행합니다.
이제 디렉터리 구조는 다음과 같습니다.
평소 쓰는 텍스트 편집기(VS Code, Cursor 등 무엇이든)로 SKILL.md를 엽니다.
파일 맨 위의 메타데이터부터 시작합니다. 1
체크리스트:
name이 소문자와 하이픈으로 되어 있다description이 무엇을 하는지(할 일을 정리한다), 무엇을 입력으로 받는지(어수선한 목록), 언제 꺼내 쓰는지(회의 액션 아이템, 프로젝트 백로그)를 담고 있다프론트매터 뒤에 제목을 추가합니다.
제목과 소개를 굳이 쓰는 이유:
description에 담을 자리가 없었던 세부 내용을 채워 줍니다어떤 종류의 입력을 받을지 Claude에게 알려 줍니다. 2
이 섹션이 해내는 일:
여기가 지시문의 심장부이며, 구체적으로 써야 합니다. 2
이렇게까지 자세히 쓰는 이유:
Claude는 사람이 아니어서 "알아서 헤아려" 주지 않습니다. "우선순위를 부여한다"라고만 쓰면 어떤 기준을 적용해야 할지 알 수 없습니다. "'긴급'을 포함 → 긴급"이라고 쓰면 추측할 여지가 남지 않습니다. 3
결과가 어떤 모습이어야 하는지 Claude에게 알려 줍니다.
예시가 가져다주는 것:
예시를 한 번 본 뒤로는 배치, 기호, 서식이 확정됩니다. 이모지가 어디에 붙는지, 시간이 작업 앞에 오는지 뒤에 오는지 추측할 필요가 없습니다.
이례적인 경우를 어떻게 다룰지 명시합니다.
이제 SKILL.md는 다음과 같은 모습이어야 합니다.
파일을 저장합니다.
Claude Code를 열고 다음과 같이 입력합니다.
Claude는 다음과 같이 응답해야 합니다.
출력이 기대와 다르더라도 당황하지 마세요. 다음 레슨 전체가 디버깅에 관한 내용입니다.
이 스킬에는 다른 작업에 의존하는 작업이나, 서로 다른 사람에게 배정된 작업에 관한 이야기가 전혀 없다는 것을 눈치챘을지도 모릅니다. 3 2
의도한 것입니다.
점진적 공개란, 한꺼번에 모든 것을 쏟아붓는 대신 지금 당장 필요한 것만 Claude에게 주는 것입니다. 3
첫 버전은 핵심 작업만 합니다 — 추출하고, 분류하고, 정렬하는 것. 며칠 써 보고 담당자 배정이 정말로 필요하다고 느껴지면 그때 추가하면 됩니다.
이렇게 해서 얻는 것:
먼저 1번 버전을 굴러가게 만들고, 그다음 반복하세요. 좋은 스킬은 모두 그렇게 만들어집니다. 3
/skill-name 뒤에 입력을 붙인다다음 레슨에서는 스킬의 테스트와 디버깅을 다룹니다. "돌아간다"에서 "제대로 돌아간다"로 넘어가는 단계입니다.
Claude Code 공식 문서: Extend Claude Code with skills — https://code.claude.com/docs/en/skills ↩
Claude Skills 심층 분석(제1원리 관점) — https://leehanchung.github.io/blogs/2025/10/26/claude-skills-deep-dive/ ↩ ↩2 ↩3
Anthropic 플랫폼 문서: Agent Skills overview — https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview ↩ ↩2 ↩3 ↩4
요구 사항:
무엇이 나오는지 보고 기록해 두세요. 다음 레슨에서 그 결과를 디버깅 연습에 사용합니다.
# 개인 스킬 디렉터리 생성(아직 없다면)
mkdir -p ~/.claude/skills
# 스킬 디렉터리 생성
mkdir ~/.claude/skills/task-organizer
# SKILL.md 파일 생성
touch ~/.claude/skills/task-organizer/SKILL.md
~/.claude/skills/└── task-organizer/ └── SKILL.md---
name: task-organizer
description: 할 일 항목을 정리해 우선순위와 마감일로 묶는다. 어수선한 작업 목록, 회의 액션 아이템, 프로젝트 백로그에 사용한다
---
# 태스크 정리 도구
구조화되지 않은 텍스트에서 작업을 뽑아내, 우선순위와 마감일에 따라 구조화된 목록으로 정리한다.
## 입력 형식
다음 형태 중 무엇이든 작업 목록으로 받는다:
- 일반 텍스트 목록(한 줄에 작업 하나)
- Markdown 체크리스트(`- [ ] 작업 내용`)
- 시간 표시가 있는 메시지("내일까지 X 끝내야 함")
- 회의록에 묻혀 있는 액션 아이템
**입력 예시:**
```
분기 보고서 마무리하기
- [ ] PR #234 리뷰
내일까지 로그인 버그 고쳐야 함
금요일 전까지 데모 준비
문서 업데이트
```
## 처리 단계
다음을 순서대로 수행한다:
1. **작업 추출**
- 각 줄 또는 각 목록 항목이 작업 하나
- 체크박스 마커(`- [ ]` 또는 `- [x]`)를 제거
- 작업의 핵심 설명을 유지
2. **시간 정보 식별**
- 날짜를 나타내는 말을 찾는다: 오늘, 내일, 이번 주, 요일 이름(월요일, 금요일), 명시적 날짜(2024-01-15)
- 마감을 나타내는 표현을 찾는다: "X까지", "마감 X", "X 전에"
- 명시적인 시간이 없으면 "마감 없음"으로 표시
3. **우선순위 부여**
- "긴급", "ASAP", "바로", "즉시"를 포함 → 긴급
- "중요", "우선", "치명적"을 포함 → 중요
- 오늘 또는 내일 마감 → 긴급
- 이번 주 안에 마감 → 중요
- 그 밖의 모든 것 → 보통
4. **정렬**
- 같은 우선순위 안에서는 마감일이 가까운 순으로 정렬
- 마감이 없는 작업은 해당 등급의 맨 뒤에 배치
## 출력 형식
이 구조를 사용하고, 우선순위 표시는 이모지로 한다:
### 🔴 긴급(오늘 또는 내일)
- [작업] - 마감
### 🟡 중요(이번 주)
- [작업] - 마감
### ⚪ 보통
- [작업] - 마감(있는 경우)
**출력 예시:**
### 🔴 긴급
- 로그인 버그 수정 - 내일
- 분기 보고서 마무리 - 오늘
### 🟡 중요
- PR #234 리뷰 - 금요일
- 데모 준비 - 금요일
### ⚪ 보통
- 문서 업데이트 - 마감 없음
## 참고 사항
- 입력이 비어 있거나 작업을 하나도 식별할 수 없으면 "유효한 작업을 찾지 못했습니다"를 출력한다
- 어떤 작업에도 시간 정보가 없으면 모두 보통에 넣는다
- 작업 설명이 길면(100자 초과) 앞의 80자만 남기고 "..."를 붙인다
- 이미 완료로 표시된 작업(`[x]`)은 건너뛴다
---
name: task-organizer
description: 할 일 항목을 정리해 우선순위와 마감일로 묶는다. 어수선한 작업 목록, 회의 액션 아이템, 프로젝트 백로그에 사용한다
---
# 태스크 정리 도구
구조화되지 않은 텍스트에서 작업을 뽑아내, 우선순위와 마감일에 따라 구조화된 목록으로 정리한다.
## 입력 형식
다음 형태 중 무엇이든 작업 목록으로 받는다:
- 일반 텍스트 목록(한 줄에 작업 하나)
- Markdown 체크리스트(`- [ ] 작업 내용`)
- 시간 표시가 있는 메시지("내일까지 X 끝내야 함")
- 회의록에 묻혀 있는 액션 아이템
## 처리 단계
다음을 순서대로 수행한다:
1. **작업 추출**
- 각 줄 또는 각 목록 항목이 작업 하나
- 체크박스 마커를 제거
- 작업의 핵심 설명을 유지
2. **시간 정보 식별**
- 날짜를 나타내는 말을 찾는다: 오늘, 내일, 이번 주, 요일 이름, 명시적 날짜
- 마감을 나타내는 표현을 찾는다: "X까지", "마감 X"
- 명시적인 시간이 없으면 "마감 없음"으로 표시
3. **우선순위 부여**
- "긴급", "ASAP", "바로"를 포함하거나 오늘/내일 마감 → 긴급
- "중요", "우선"을 포함하거나 이번 주 안에 마감 → 중요
- 그 밖의 모든 것 → 보통
4. **정렬**
- 같은 우선순위 안에서는 마감일이 가까운 순으로 정렬
## 출력 형식
### 🔴 긴급(오늘 또는 내일)
- [작업] - 마감
### 🟡 중요(이번 주)
- [작업] - 마감
### ⚪ 보통
- [작업] - 마감(있는 경우)
## 참고 사항
- 입력이 비어 있으면 "유효한 작업을 찾지 못했습니다"를 출력한다
- 어떤 작업에도 시간 정보가 없으면 모두 보통에 넣는다
- 작업 설명이 길면(100자 초과) 앞의 80자만 남기고 "..."를 붙인다
- 이미 완료로 표시된 작업(`[x]`)은 건너뛴다
/task-organizer
분기 보고서 마무리PR #234 리뷰, 금요일까지내일 로그인 버그 수정문서 업데이트긴급: 고객이 결제 문제 제보### 🔴 긴급- 로그인 버그 수정 - 내일- 고객이 제보한 결제 문제 - 마감 없음
### 🟡 중요- PR #234 리뷰 - 금요일
### ⚪ 보통- 분기 보고서 마무리 - 마감 없음- 문서 업데이트 - 마감 없음