SpyBara
Go Premium

plugins/mods/create.md 2026-10-24 22:59 UTC to 2026-10-25 23:58 UTC

This page contains 2 additions and 0 deletions.

2026
Thu 1 23:59 Fri 2 22:59 Sat 3 23:57 Tue 6 23:59 Thu 8 22:58 Fri 9 23:02 Sat 17 23:57 Tue 20 23:00 Thu 22 22:58 Fri 23 22:59 Sun 25 23:58 Fri 30 23:01

mod 만들기

설명을 바탕으로 Claude가 Claude Code mod를 작성하도록 하거나, 도구 호출 수를 세고 명령을 추가하는 mod를 직접 작성합니다. 다시 로드하고 검증하는 과정을 알아봅니다.

mod는 훅 모듈이라고 하는 진입 파일을 갖춘 Claude Code 플러그인입니다. 훅 모듈은 이벤트가 발생할 때 Claude Code가 그 함수들을 호출하는 JavaScript 또는 TypeScript 파일입니다. mod를 만드는 방법은 다음과 같습니다.

  • Claude에게 작성 요청하기: Claude Code 세션에서 원하는 내용을 설명합니다
  • 직접 작성하기: 튜토리얼을 따라 mod의 코드가 어떻게 동작하는지 알아봅니다. Claude Code가 .js 및 .ts 파일을 직접 로드하므로 Node.js, 번들러 또는 빌드 단계가 필요하지 않습니다.

mod가 적합한 도구인지 아직 결정하지 않았다면 먼저 개요의 비교를 읽어 보십시오.

[!NOTE]

Claude Code v2.1.287 이상을 사용하십시오. 셸에서 claude --version을 실행하여 확인합니다. 현재 환경에서 mod를 로드할 수 있는지 확인하려면 mod를 로드할 수 있는지 확인하기를 참조하십시오.

Claude에게 mod 요청하기

대화형 Claude Code 세션에서 원하는 mod를 설명하면 Claude가 작성합니다. Claude는 plugin-authoring이라는 내장 스킬을 기반으로 작업하며, 이 스킬은 mod를 작성할 위치, 현재 버전에서 사용할 수 있는 이벤트와 메서드, mod가 로드되는 방식을 Claude에게 알려 줍니다. mod를 요청하면 Claude가 스킬을 로드할 수 있으며, Claude Code 프롬프트에서 /plugin-authoring을 실행하여 직접 로드할 수도 있습니다.

mod는 승인한 후에 실행됩니다. 단, Claude가 작성한 mod를 로드할 수 없는 세션은 예외입니다.

1. mod 설명하기

원하는 mod를 자유롭게 요청합니다. 예를 들어 make a mod that shows the current git branch above the prompt와 같이 요청할 수 있습니다. Claude는 세션의 mod 폴더 안에 mod 전용 디렉터리를 만들어 mod를 작성합니다. 세션의 mod 폴더는 ~/.claude/dev-mods/ 뒤에 세션 ID가 붙은 경로입니다. mod의 전체 경로는 ~/.claude/dev-mods/3f2a9c1e-5b7d-4e8a-9c21-6d0f4b8a7e13/git-branch/와 같은 형태입니다.

[!NOTE]

default 및 acceptEdits 권한 모드에서는 mod 폴더가 보호된 경로이므로, Claude가 mod의 각 파일을 생성하기 전에 Claude Code가 확인을 요청합니다. 표시되는 각 파일을 승인하십시오.

2. mod 승인하기

Claude가 첫 번째 파일을 저장하면 Claude Code가 해당 세션에서 핫 리로딩을 활성화할지 묻습니다. 핫 리로딩은 이 세션에서 Claude가 작성한 mod를 실행하고 이후의 각 변경 사항을 반영합니다.

다음 중 하나를 선택합니다.

  • Enable for this session: 세션의 mod 폴더에 있는 mod가 턴이 끝날 때 로드되고, mod를 변경하는 각 턴이 끝날 때마다 다시 로드됩니다. 이 선택은 세션을 재개한 후를 포함하여 세션 동안 유지됩니다.
  • Not now: 지금은 아무것도 로드되지 않습니다. 파일은 Claude가 작성한 위치에 그대로 남아 있으며, 해당 세션이 다음에 시작될 때 mod가 로드됩니다. mod가 로드되지 않도록 하려면 해당 디렉터리를 삭제하십시오.

3. mod가 로드되었는지 확인하기

Claude Code 프롬프트에서 /plugin을 실행하고 Installed 탭이 선택될 때까지 Tab 키를 누릅니다. 이 탭에 mod가 표시되며, 여기에서 mod를 끌 수 있습니다.

4. mod 사용해 보기

요청한 기능을 사용해 봅니다. 예시 프롬프트의 경우 현재 브랜치 이름이 프롬프트 상자 위에 표시됩니다. mod가 원하는 대로 동작하지 않으면 변경할 내용을 Claude에게 알려 주십시오. mod는 파일을 변경하는 각 턴이 끝날 때마다 다시 로드되므로, Claude가 작업을 마치는 즉시 변경 사항을 확인할 수 있습니다.

mod 이름으로 시작하는 트랜스크립트 줄에 변경 사항이 로드되지 않았다고 표시되면, Claude에게 수정을 요청할 때 다음 메시지에 해당 줄을 붙여 넣으십시오. 붙여 넣지 않으면 Claude는 해당 줄을 볼 수 없습니다.

다른 세션에서 mod 사용하기

Claude가 작성한 mod는 해당 mod를 만든 세션에서만 로드되며, Claude Code는 세션의 mod 폴더가 cleanupPeriodDays보다 오래되면 삭제합니다. mod를 보관하려면 해당 디렉터리를 mod 폴더에서 ~/mods/git-branch와 같은 별도 위치로 복사하십시오. 그런 다음 로드 방법을 선택합니다.

  • 직접 시작하는 세션에서: 셸에서 claude --plugin-dir ~/mods/git-branch를 실행합니다
  • 다른 사람을 위해: 다른 사람이 설치할 수 있도록 마켓플레이스에 추가합니다

Claude가 작성한 mod를 로드할 수 없는 세션

Claude가 작성한 mod는 mod 실행이 허용된 신뢰할 수 있는 워크스페이스에서 사용자가 승인한 후에만 로드됩니다. 다음 세션에서는 로드되지 않습니다.

  • 승인할 사람이 없는 경우: claude -p 실행이나 dontAsk 모드처럼 세션에서 프롬프트를 표시할 수 없는 경우
  • 워크스페이스를 신뢰하지 않는 경우: 해당 디렉터리에 대한 신뢰 프롬프트를 수락하지 않은 경우
  • mod가 비활성화된 경우: --safe-mode 또는 --bare로 시작했거나, disableAllHooks를 설정했거나, 조직의 관리형 설정에서 차단한 경우

직접 mod 작성하기

이 튜토리얼에서는 Claude가 수행하는 도구 호출 횟수를 세고, Claude가 작업하는 동안 스피너 옆에 그 횟수를 표시하며, 횟수를 출력하는 /tally 명령을 추가하는 first-mod라는 mod를 만듭니다. 그런 다음 Claude Code가 mod 옆에 작성하는 타입 선언을 읽고 claude plugin validate를 실행합니다. 이 두 가지를 통해 사용 중인 버전이 제공하는 이벤트와 메서드, 그리고 Claude Code가 코드에서 읽어 들이는 내용을 확인할 수 있습니다.

다음 녹화 영상은 완성된 mod를 보여 줍니다. 스피너가 도구 호출 횟수를 세고, /tally가 횟수를 출력하며, 세션이 실행되는 동안 코드를 수정하면 바로 적용됩니다.