studiosoluta

먼저 볼 카드 — 에이전트·스킬·커맨드, 뭐가 다른가

실습 에이전트 정의

내 에이전트 만들기

  • 대상: 같은 종류의 일에 매번 붙이는 같은 설명
  • 설명을 파일로 한 번 적어 두면, 다음부터 Claude가 상황을 보고 그 워커에게 넘깁니다

어디에 만드나

  • 형식: 마크다운 파일 하나
  • 위치: 아래 두 곳 중 하나
    • .claude/agents/ — 지금 프로젝트에서만 씁니다
    • ~/.claude/agents/ — 내 모든 프로젝트에서 씁니다
  • 만드는 방법: Claude에게 요청하기, 파일 직접 쓰기
  • /agents로 생성 화면을 띄우고 이름·색깔을 고르는 대화형 화면은 지금 없어졌습니다
  • 파일 위치와 적는 항목은 그대로입니다

무엇을 적나

  • 설정: 파일 맨 위 --- 사이

  • 역할 설명: 그 아래 본문. 본문이 그 에이전트의 시스템 프롬프트가 됩니다

  • 꼭 있어야 하는 항목 (2개)

    • name — 소문자와 붙임표로 짓는 고유한 이름입니다
    • description — 언제 이 에이전트에게 넘겨야 하는지를 적습니다
  • 필요할 때만 적는 항목 중 자주 쓰는 것

    • tools — 쓸 수 있는 도구를 좁힙니다. 안 적으면 쓸 수 있는 도구를 다 물려받습니다
    • model — 어떤 모델로 돌릴지 정합니다. 안 적으면 본 대화와 같은 모델을 씁니다
    • skills — 시작할 때 스킬 내용을 미리 들고 시작하게 합니다

만들자마자는 안 보입니다

  • 만든 직후 같은 대화에서 부르면 “그런 에이전트가 없다”고 나오며, 정의 오류가 아닙니다
  • 쓸 수 있는 에이전트 목록은 대화를 시작할 때 정해집니다
  • 도중에 만든 정의는 다음 대화부터 보입니다
  • 확인은 대화를 새로 시작한 뒤에 합니다

설명이 호출을 결정합니다

  • Claude는 각 에이전트의 설명을 읽고 요청을 넘길지 판단합니다

  • 설명이 그 에이전트가 실제로 일을 하는지를 가릅니다

  • 역할만 적으면 잘 안 불려 나옵니다

  • 잘 안 되는 쪽: description: 코드 리뷰 담당

  • 잘 되는 쪽: description: 파일을 고친 뒤 읽기 쉬움과 성능 관점에서 개선점을 찾을 때 사용

  • 차이: 뒤쪽에만 언제가 들어 있습니다

skills는 권한이 아니라 미리 들고 시작하기입니다

  • skills에 적은 스킬은 내용 전체(설명과 본문)가 시작할 때 주입됩니다
  • 적지 않은 스킬도 서브에이전트가 필요하면 불러 쓸 수 있습니다
  • 처음부터 들고 시작해야 하는 스킬만 적습니다
예시 화면 터미널에서 에이전트를 같은 대화와 새 대화에서 각각 호출한 결과를 나란히 보여 주는 화면
만든 정의를 같은 대화에서 부르면 없다고 나오고, 대화를 새로 시작하면 이름을 대지 않아도 불려 나옵니다

실행 순서

  1. 반복해서 같은 설명을 붙여 시키는 일 하나를 고르고, 그 일을 언제 시키는지 한 줄로 적습니다.

  2. Claude에게 정의 파일을 만들어 달라고 요청합니다.

    내가 반복해서 시키는 일이 있어. [여기에 그 일을 한 줄로]. 이걸 맡을 서브에이전트 정의를 만들어 줘. 공식 서브에이전트 제작 가이드를 따라 줘. 설명(description)은 언제 이 에이전트에 넘겨야 하는지가 드러나게 써 주고, 파일을 만들기 전에 어떤 도구까지 허용할지 나한테 먼저 물어봐 줘.

    확인허용할 도구를 먼저 확인하는 질문이 오고, 답한 뒤 `.claude/agents/` 아래에 정의 파일이 생깁니다.

  3. 만들어진 파일을 열어 이름과 설명이 의도대로 적혔는지 봅니다. 설명이 호출 여부를 결정하니 여기가 제일 중요합니다.

  4. 방금 만든 정의는 지금 세션에서는 아직 안 보이므로, 대화를 끝내고 새로 시작합니다.

  5. 새 세션에서, 설명에 적은 상황을 실제로 만들어 에이전트가 불려 나오는지 확인합니다.

    방금 만든 에이전트가 맡기로 한 그 일을, 에이전트 이름은 대지 않고 평소 말하듯 요청할게. [여기에 평소 하던 요청].

    확인이름을 대지 않았는데도 그 에이전트에게 작업이 넘어갑니다. 안 넘어가면 설명 문장이 상황과 안 맞는 것입니다.

직접 해보기

내 상황에 맞춰
내가 만든 에이전트의 설명(description)을 보고, 어떤 요청일 때 불려 나오고 어떤 요청일 때 안 불려 나올지 예시를 세 개씩 만들어 줘. 안 불려 나오는 쪽이 내 의도와 다르면 설명을 고쳐 줘.
한 단계 더
이 에이전트가 쓸 수 있는 도구를 지금 필요한 것만 남기고 좁혀 줘. 좁히면 못 하게 되는 일이 무엇인지도 함께 알려 줘.

만든 에이전트에게 평소 말투로 일을 시켜 보고, 이름을 대지 않아도 불려 나오는지 확인해 보세요. 안 불려 나오면 설명 문장부터 고칩니다.

헷갈리기 쉬운 것

만든 직후 같은 대화에서 불러 보면 "그런 에이전트가 없다"고 나오지만, 고장이 아닙니다. 쓸 수 있는 에이전트 목록은 대화를 시작할 때 정해져서, 새로 만든 정의는 다음 대화부터 보입니다. 슬래시 명령 `/agents`로 만드는 화면을 본 적 있다면, 그건 지금은 없어진 방식입니다. 파일 위치와 적는 항목은 그대로지만 대화형 생성 화면만 빠졌습니다. 그리고 설명을 "코드 리뷰 담당"처럼 역할만 적으면 언제 불러야 할지가 없어서 잘 안 불려 나옵니다. 언제 넘겨야 하는지를 적어야 합니다.

용어 풀이

전체 용어집 →
프론트매터
문서 맨 위에 `---` 사이로 적어 두는 설정 칸입니다. 이름·설명 같은 것을 여기 적습니다.
시스템 프롬프트
그 에이전트가 일을 시작하기 전에 미리 읽는 역할 설명입니다. 정의 파일의 본문이 여기에 해당합니다.
`.claude/agents/`
지금 프로젝트에서만 쓰는 에이전트 정의를 두는 폴더입니다. 모든 프로젝트에서 쓰려면 개인 계정 폴더 쪽에 둡니다.

2026-07-28 기준 · 출처 · Create custom subagents, Skills