Karohani Claude Code Plugin
Claude Code 플러그인 개발 실험실. Skills, Hooks, MCP 서버, Agents를 모두 다루는 마켓플레이스.
빠른 시작 (로컬 설치)
# 1. 저장소 클론
git clone https://github.com/karohani/my-karohani-claude-code-plugin.git
cd my-karohani-claude-code-plugin
# 2. 로컬 설치 (개발 모드 - 파일 수정 즉시 반영)
python scripts/dev.py
# 3. Claude Code 재시작 후 사용
/hello # 인사 스킬
/wrap # 세션 마무리
/youtube [URL] # YouTube 영상 요약
/voice # 음성 입출력
/tdd init # TDD 스킬 생성
설치 방법
방법 1: 개발 모드 (권장 - 로컬 수정 가능)
현재 디렉토리를 직접 마켓플레이스로 등록합니다. 파일 수정 시 바로 반영됩니다.
git clone https://github.com/karohani/my-karohani-claude-code-plugin.git
cd my-karohani-claude-code-plugin
python scripts/dev.py # 개발 모드 활성화
python scripts/dev.py --off # 개발 모드 비활성화
방법 2: 설치 스크립트 (복사 설치)
~/.claude/plugins/에 복사하여 설치합니다.
# 원격 설치 (GitHub에서)
curl -fsSL https://raw.githubusercontent.com/jay/my-karohani-claude-code-plugin/main/scripts/install.py | python3
# 로컬 설치 (현재 디렉토리에서)
git clone https://github.com/karohani/my-karohani-claude-code-plugin.git
cd my-karohani-claude-code-plugin
python scripts/install.py --local
방법 3: 마켓플레이스
# 마켓플레이스 추가
/plugin marketplace add jay/my-karohani-claude-code-plugin
# 플러그인 설치
/plugin install hello-skill
/plugin install session-wrap
/plugin install youtube-digest
제거
python scripts/uninstall.py
플러그인 목록
| 플러그인 | 타입 | 설명 |
|---|
| hello-skill | Skills | 간단한 인사 스킬 - /hello 트리거 |
| session-wrap | Skills + Agents | 멀티에이전트 세션 분석 - /wrap 트리거 |
| youtube-digest | Skills + Agents | YouTube 영상 요약 - /youtube 트리거 |
| voice | Skills + Hooks | 음성 입출력 (STT/TTS) - /voice 트리거 |
| tdd | Skills (Meta) | TDD 메타 플러그인 - /tdd 트리거 |
주요 기능
/wrap - 세션 마무리
5개의 전문화된 에이전트가 병렬로 세션을 분석합니다:
- 문서 업데이트 제안
- 자동화 기회 식별
- 학습 내용 추출
- 후속 작업 제안
/wrap # 대화형 세션 마무리
/wrap [message] # 빠른 커밋
/youtube - YouTube 영상 요약
YouTube 영상을 분석하여 마크다운 문서로 정리합니다.
# 전제 조건
brew install yt-dlp
# 사용
/youtube [URL] # 자막 추출 + 요약
/youtube [URL] --quiz # 퀴즈 포함
프로젝트 구조
.
├── .claude-plugin/
│ ├── plugin.json
│ └── marketplace.json
├── plugins/
│ ├── hello-skill/ # Skills 예제
│ ├── session-wrap/ # 멀티에이전트 워크플로우
│ ├── youtube-digest/ # YouTube 영상 요약
│ ├── voice/ # 음성 입출력 (STT/TTS)
│ └── tdd/ # TDD 메타 플러그인
├── scripts/
│ ├── install.py # 설치 스크립트
│ ├── uninstall.py # 제거 스크립트
│ └── dev.py # 개발 모드 설정
├── CLAUDE.md # Claude Code용 상세 문서
└── README.md
개발환경
플러그인을 직접 개발하거나 수정하려면 개발 모드를 사용하세요.
개발 모드 (권장)
git clone https://github.com/karohani/my-karohani-claude-code-plugin.git
cd my-karohani-claude-code-plugin
python scripts/dev.py # 개발 모드 활성화
개발 모드는 현재 디렉토리를 직접 마켓플레이스로 등록합니다:
- 파일 수정 시 Claude Code 재시작하면 바로 반영
- 복사 없이 원본 파일 직접 사용
dev.py 옵션
python scripts/dev.py # alias 방식 (기본) - claude 명령 덮어쓰기
python scripts/dev.py --alias # alias 방식 (명시적)
python scripts/dev.py --wrapper # wrapper 방식 - claude-dev 별도 명령 생성
python scripts/dev.py --off # 개발 모드 비활성화
python scripts/dev.py --status # 현재 상태 확인
python scripts/dev.py --cleanup # 레거시 설정 정리 (이전 버전 사용자용)
Alias 방식: claude 명령이 플러그인과 함께 실행됩니다. 원본 실행: \claude 또는 command claude
Wrapper 방식: claude-dev로 개발 모드 실행, claude는 일반 모드 유지
개발 워크플로우
plugins/ 디렉토리에 새 플러그인 추가 가능
.claude-plugin/marketplace.json에 새 플러그인 등록 필요
- SKILL.md, agents/*.md 수정 후 Claude Code 재시작
플러그인 작성 가이드
Claude Code 플러그인은 5가지 컴포넌트로 구성됩니다. 필요에 따라 조합하여 사용합니다.
플러그인 기본 구조
plugins/my-plugin/
├── .claude-plugin/
│ └── plugin.json # 필수: 플러그인 메타데이터
├── skills/
│ └── my-skill/
│ └── SKILL.md # 슬래시 커맨드 정의
├── commands/
│ └── my-command.md # 커맨드 진입점
├── agents/
│ └── my-agent.md # 전문화된 에이전트
├── hooks/
│ └── hooks.json # 이벤트 기반 자동화
└── src/
└── server.py # MCP 서버 (Python)
1. plugin.json (필수)
모든 플러그인의 시작점입니다.
{
"name": "my-plugin",
"version": "1.0.0",
"description": "플러그인 설명"
}
2. Skills (SKILL.md)
코드 없이 프롬프트만으로 기능을 정의합니다. /skillname으로 호출됩니다.
파일 위치: skills/<skill-name>/SKILL.md
---
name: my-skill
description: This skill should be used when the user asks to "do something", "무언가 해줘", or wants to perform a specific task.
version: 1.0.0
user-invocable: true
---
# My Skill
스킬 설명과 워크플로우를 작성합니다.
## Allowed Tools
Bash, Read, Write, Edit, Glob, Grep, Task, AskUserQuestion
## Workflow
1. **첫 번째 단계**: 설명
2. **두 번째 단계**: 설명
## Examples
- `/my-skill` - 기본 사용
- `/my-skill [args]` - 인자와 함께 사용
팁: description에 "This skill should be used when the user asks to..." 패턴을 사용하면 Claude가 스킬을 더 정확하게 매칭합니다.
3. Hooks (hooks.json)
Claude Code 이벤트에 자동으로 반응합니다.
파일 위치: hooks/hooks.json