커맨드와 스킬
“두 번 한 일은 자산으로”
02이 차시를 마치면
- 1.자신이 반복해서 요청하고 있는 프롬프트 패턴을 스스로 찾아낼 수 있다.
- 2.반복되는 요청을 커스텀 슬래시 커맨드로 만들어 이름만으로 실행할 수 있다.
- 3.여러 단계로 이어지는 작업 절차를 스킬 하나로 묶어 패키징할 수 있다.
- 4.만든 커맨드와 스킬을 저장소에 커밋하고 문서화해 팀원과 공유할 수 있다.
03왜 필요한가
이번 주에도 PR을 올릴 때마다 '변경사항 요약해줘, 영향받는 파일 나열해줘, 테스트 결과 붙여줘'라는 문장을 매번 새로 타이핑했다고 해보자. 지난주에도 똑같이 썼고, 지지난주에도 똑같이 썼다. 매번 프롬프트를 다시 구성하는 데 드는 시간 자체는 크지 않지만, 미묘하게 다르게 표현할 때마다 결과 형식도 조금씩 달라져서 팀원이 리뷰할 때 일관성이 떨어진다. 팀원에게 '이렇게 물어보면 돼'라고 말로 설명해줘도, 그 사람은 또 자기 방식대로 새로 프롬프트를 짠다.
- 같은 요청을 매번 처음부터 다시 타이핑하느라 시간이 샌다.
- 조금씩 다르게 표현할 때마다 결과 형식이 들쭉날쭉해 팀원이 리뷰하기 어렵다.
- 여러 단계로 이어지는 작업(예: 배포 전 점검)은 순서를 매번 기억해서 불러줘야 한다.
- 나만 아는 노하우로 남아, 내가 자리를 비우면 그 작업 방식 자체가 사라진다.
04개념 설명
반복은 신호다
같은 요청을 세 번째 하고 있다면, 그건 우연이 아니라 신호다. 매번 새로 프롬프트를 구성하는 대신, 그 요청을 재사용 가능한 형태로 굳혀두면 다음번엔 프롬프트를 짜는 대신 이름만 부르면 된다.
무엇을 굳힐지 판단하는 기준은 단순하다. 반복 횟수, 매번 결과 형식이 같아야 하는지, 그리고 팀원도 똑같이 겪는 일인지 세 가지를 본다. 이 세 가지에 해당하면 커맨드나 스킬로 만들 후보다.
| 확인할 것 | 해당하면 |
|---|---|
| 반복 횟수 | 3번 이상이면 자산 후보 |
| 결과 형식 | 매번 같아야 하는가 |
| 범위 | 나만 겪는가, 팀도 겪는가 |
- 세 번 반복했다면 자산으로 만들 신호
- 결과 형식이 매번 같아야 하는 일일수록 효과가 크다
- 나만 겪는 일인지 팀도 겪는 일인지 구분한다
커맨드 — 프롬프트를 파일로 굳히기
커스텀 슬래시 커맨드는 자주 쓰는 프롬프트를 파일 하나로 저장해두고, 매번 다시 타이핑하는 대신 이름을 불러 실행하는 기능이다. 프로젝트 저장소 안에 정해진 위치에 파일로 저장해두면, Claude Code가 그 이름을 명령어처럼 인식한다.
커맨드 안에는 고정된 지시문뿐 아니라, 실행할 때마다 달라지는 값(예: PR 번호, 브랜치 이름)을 넣을 자리를 만들어둘 수 있다. 즉 완전히 똑같은 요청이 아니라 '틀은 같고 값만 바뀌는' 요청을 재사용하는 도구다.
- 자주 쓰는 프롬프트를 파일로 저장해 이름으로 실행
- 값이 바뀌는 자리는 매개변수로 남겨둔다
- 정확한 파일 형식과 위치는 실습 중 최신 기준으로 확인한다
스킬 — 절차를 패키지로 묶기
커맨드가 프롬프트 하나를 굳힌 것이라면, 스킬은 여러 단계로 이어지는 작업 절차 전체를 하나의 묶음으로 패키징한 것이다. '이런 상황이면 이 순서로 진행한다'는 절차와, 그 절차에 필요한 배경 지식·판단 기준을 함께 담는다.
스킬은 이름을 직접 불러 실행할 수도 있고, 어떤 작업을 위한 것인지 설명을 미리 등록해두면 AI가 대화 맥락을 보고 스스로 '이 작업엔 이 스킬을 쓰는 게 맞겠다'고 판단해 꺼내 쓰기도 한다.
프롬프트 하나를 굳힌 것
틀은 같고 값만 바뀌는 요청 재사용
여러 단계 절차 + 판단 기준을 묶은 것
이름으로 부르거나 맥락에 맞춰 자동으로 꺼내 쓴다
- 여러 단계 절차 + 판단 기준을 하나로 묶는다
- 이름으로 직접 부르거나, 맥락에 맞춰 자동으로 꺼내 쓴다
- 커맨드보다 크고, 완결된 워크플로 단위다
팀에 배포하기 — 저장소에 있어야 자산이다
개인 설정 폴더에만 저장한 커맨드와 스킬은 나만 쓸 수 있다. 팀 전체의 자산으로 만들려면 프로젝트 저장소 안에 저장해 커밋하고, 다른 사람이 저장소를 내려받는 순간 똑같이 쓸 수 있게 만들어야 한다.
파일만 커밋한다고 끝이 아니다. 이 커맨드가 뭘 하는지, 언제 쓰는지, 어떤 값을 넣어야 하는지 짧은 설명을 함께 남겨야 팀원이 발견하고 쓸 수 있다. 문서화되지 않은 자산은 존재하지 않는 자산과 같다.
- 프로젝트 저장소에 커밋해야 팀 자산이 된다
- 이름·용도·사용 예시를 짧게 문서화한다
- 새로 합류한 사람도 찾아 쓸 수 있어야 진짜 자산이다
05실습 가이드
1. 내 반복 작업 패턴 찾기
- 최근 1~2주 동안 Claude Code와 나눈 대화 기록이나 터미널 히스토리를 훑어본다.
- 세 번 이상 비슷한 형태로 요청한 프롬프트가 있는지 찾는다. (예: PR 요약 요청, 테스트 실행 후 정리 요청, 배포 전 점검 요청)
- 후보를 최소 3개 이상 목록으로 적어둔다.
예상 결과 — 반복 패턴 후보 3개 이상이 적힌 목록이 생긴다.
안 될 때 — 딱히 반복한 기억이 안 나면 P5-1 프롬프트로 AI에게 최근 대화를 분석해달라고 요청한다.
2. 커맨드 후보 3개 고르기
- 목록 중 결과 형식이 매번 같아야 하는 것, 팀원도 똑같이 쓸 만한 것 위주로 3개를 고른다.
- 이번 실습에서는 PR 요약, 테스트 실행 후 정리, 배포 전 점검 세 가지를 예시로 다룬다. 자신의 업무에 맞는 이름으로 바꿔도 된다.
- 각 커맨드가 실행될 때 매번 달라질 값(예: PR 번호, 배포 대상 환경)이 무엇인지 미리 적어둔다.
예상 결과 — 만들 커맨드 3개의 이름과, 각각 바뀌는 값이 정리된다.
안 될 때 — 3개를 못 채우겠으면 하나는 이번 차시 예시(배포 전 점검)를 그대로 따라 만들어도 된다.
3. 첫 번째 커맨드 만들기 — PR 요약
- P5-2 프롬프트로 AI에게 PR 요약 커맨드를 만들어달라고 요청한다.
- AI가 안내하는 위치에 파일을 만들고 내용을 채운다.
- 실제 브랜치나 최근 커밋을 대상으로 커맨드를 한 번 실행해본다.
예상 결과 — 커맨드를 실행하면 변경사항 요약, 영향받는 파일 목록이 정해진 형식으로 나온다.
안 될 때 — 커맨드가 인식되지 않으면 파일 위치나 이름 규칙이 잘못됐을 수 있다. P5-6(복구 프롬프트)으로 AI에게 위치를 다시 확인받는다.
4. 두 번째 커맨드 만들기 — 테스트 실행 후 정리
- P5-3 프롬프트로 테스트를 실행하고 실패/성공 결과를 보기 좋게 정리해주는 커맨드를 요청한다.
- 일부러 테스트 하나를 실패하게 만들어보고, 실패 원인이 정리된 형태로 나오는지 확인한다.
예상 결과 — 커맨드 실행 시 테스트 결과가 통과/실패로 구분되어 요약된다.
안 될 때 — 프로젝트에 테스트가 아직 없다면, 이전 실습에서 만든 기능 중 하나에 간단한 테스트를 먼저 추가한 뒤 다시 시도한다.
5. 세 번째 커맨드 만들기 — 배포 전 점검
- P5-4 프롬프트로 배포 전 점검(환경변수 확인, 빌드 확인, .gitignore 확인 등)을 자동으로 훑어주는 커맨드를 요청한다.
- 실제로 배포하기 직전 상황을 가정하고 커맨드를 실행해본다.
예상 결과 — 점검 항목별로 통과/미흡이 정리된 체크리스트가 출력된다.
안 될 때 — 점검 항목이 프로젝트와 안 맞으면, 어떤 항목을 빼고 넣을지 AI에게 직접 알려주고 커맨드를 수정한다.
6. 커맨드 3개를 스킬 하나로 묶기
- P5-5 프롬프트로 방금 만든 커맨드 3개를 순서대로 엮은 '릴리스 준비' 스킬을 만들어달라고 요청한다.
- 스킬 안에 각 단계에서 무엇을 확인해야 하는지, 어떤 경우 중단해야 하는지 판단 기준도 같이 넣어달라고 요청한다.
예상 결과 — 스킬 하나를 실행(또는 호출)하면 세 커맨드의 절차가 순서대로 이어져 진행된다.
안 될 때 — 세 단계가 한 번에 안 이어지면, 먼저 두 단계만 묶어보고 성공하면 세 번째를 추가하는 식으로 범위를 줄여 접근한다.
7. 스킬 동작 검증하기
- 스킬을 실제 상황(또는 연습용 가짜 PR)에 적용해 처음부터 끝까지 실행해본다.
- 중간에 문제가 있는 상태(예: 테스트 실패 상태)를 일부러 만들어, 스킬이 그 지점에서 멈추고 알려주는지 확인한다.
예상 결과 — 정상 상황에서는 끝까지 진행되고, 문제 상황에서는 중간에 멈춰 원인을 알려준다.
안 될 때 — 문제 상황에서도 그냥 통과해버리면, 중단 조건을 더 구체적으로 적어달라고 AI에게 요청해 스킬을 보완한다.
8. 문서화하고 저장소에 커밋해 공유하기
- 커맨드 3개와 스킬 1개 각각에 이름, 용도, 사용 예시를 짧게 적은 설명을 추가한다.
- 만든 파일들을 프로젝트 저장소에 커밋한다.
- 팀원(또는 스터디 동료)에게 저장소를 내려받아 실행해보게 하고, 설명만 보고 바로 쓸 수 있는지 피드백을 받는다.
예상 결과 — 다른 사람이 저장소를 내려받아 설명만 보고 커맨드/스킬을 실행할 수 있다.
안 될 때 — 상대가 못 찾겠다고 하면 파일 위치나 이름이 직관적이지 않은 것이다. README나 안내 문서에 목록을 추가한다.
06실전 프롬프트
07이것만은 주의
무슨 일이 생기나 — 내가 편하자고 만든 커맨드/스킬을 팀 전체가 써야 하는 것처럼 공유하면, 다른 사람의 작업 방식과 안 맞아 오히려 반발을 산다.
대처 — 처음엔 '이런 게 있는데 써볼래?' 정도로 제안하고, 실제로 팀원 몇 명이 써보고 나서 저장소의 공식 자산으로 올린다.
무슨 일이 생기나 — 한 번 한 일을 성급하게 커맨드로 만들면, 다음번엔 조건이 조금 달라 오히려 수정하는 데 더 품이 든다.
대처 — 최소 세 번 이상 비슷한 형태로 반복했는지 확인한 뒤에 커맨드나 스킬로 만든다.
무슨 일이 생기나 — 배포 전 점검 커맨드 등에 실제 API 키나 서버 주소를 예시로 적어두면, 저장소에 커밋되는 순간 공개된다.
대처 — 커맨드 파일에는 값을 넣을 자리만 남기고, 실제 값은 환경변수나 실행 시 입력으로 분리한다. 커밋 전 파일 내용을 눈으로 한 번 확인한다.
무슨 일이 생기나 — 프로젝트 구조나 배포 방식이 바뀌었는데 커맨드/스킬 내용은 그대로 남아, 실행하면 옛날 방식대로 동작해 오히려 혼란을 준다.
대처 — 커맨드/스킬 설명에 마지막 확인 날짜를 남기고, 관련 작업 방식이 바뀔 때마다 함께 갱신하는 것을 팀 규칙으로 정한다.
08자가 점검
09과제
이번 실습에서 만든 PR 요약·테스트 정리·배포 전 점검 외에, 자신의 실제 업무나 프로젝트에서 반복되는 작업 패턴을 하나 더 찾아 커맨드 또는 스킬로 만들어본다. 팀에서 함께 쓰는 저장소가 있다면 실제로 커밋해 팀원에게 공유하고 피드백을 받아본다.
제출 형식 — ① 새로 만든 커맨드(또는 스킬) 파일 ② 실행 전/후 화면 스크린샷 ③ 어떤 반복 패턴에서 착안했는지와 팀원 피드백(있다면)을 정리한 문서로 제출한다.
10더 알아보기
- Claude Code 공식 문서 — 커스텀 슬래시 커맨드 — 파일 위치와 이름 규칙, 매개변수 문법의 최신 사양 확인용
- Claude Code 공식 문서 — 스킬 — 스킬 구조와 자동 트리거 조건의 최신 사양 확인용
- 커스텀 슬래시 커맨드
- — 자주 쓰는 프롬프트를 파일로 저장해두고 이름을 불러 실행하는 재사용 단위.
- 스킬(Skill)
- — 여러 단계로 이어지는 작업 절차와 판단 기준을 하나로 묶어 패키징한 재사용 워크플로.
- 매개변수(placeholder)
- — 커맨드나 스킬을 실행할 때마다 달라지는 값을 넣을 자리.
다음 차시 예고 — 다음 차시에서는 '부탁하는 규칙'과 '강제하는 장치'의 차이를 다룹니다. 이번 차시에서 만든 커맨드와 스킬을 실수로 건너뛰어도, 훅을 걸어두면 애초에 건너뛸 수 없게 만드는 방법을 배웁니다.