Contributing Guide¶
이 가이드를 읽고 나면 Bonie 플러그인에 기여하기 위한 개발 환경 설정, 브랜치 전략, PR 프로세스를 수행할 수 있다.
What you'll learn¶
- Bonie 로컬 개발 환경 구성
- 브랜치 네이밍과 커밋 컨벤션
- PR 생성 및 리뷰 프로세스
- skill/agent/hook 리뷰 기준
Prerequisites¶
- Claude Code 최신 버전 설치
- Git 및
ghCLI 설치
Steps¶
Step 1. 저장소 클론¶
저장소 클론¶
로컬 테스트¶
플러그인을 로컬에서 테스트:
# 전체 marketplace 로드
claude --plugin-dir .
# 특정 플러그인만 로드
claude --plugin-dir ./plugins/primitives/bonie
변경 사항 반영:
개발 환경¶
필수 도구¶
- Claude Code (최신 버전)
- Git
- 텍스트 에디터 (SKILL.md, agent 파일 작성)
디렉토리 구조 이해¶
bonie/
├── .claude/ # Bonie 개발용 Claude Code 설정
├── .claude-plugin/ # marketplace 메타데이터
├── docs/ # 아키텍처 문서
├── plugins/ # 플러그인 소스
│ ├── primitives/ # 핵심 플러그인 (bonie, todo)
│ ├── lang/ # 언어별 플러그인
│ ├── devops/ # DevOps 플러그인
│ ├── git/ # Git 도구 플러그인
│ ├── design/ # 디자인 플러그인
│ └── security/ # 보안 플러그인
└── ARCH.md # 아키텍처 개요
브랜치 전략¶
main ─────────────────────────────
│
├── feat/<plugin>/<feature> # 새 기능
├── fix/<plugin>/<description> # 버그 수정
└── docs/<topic> # 문서 수정
네이밍 규칙¶
feat/typescript/add-patterns— TypeScript 플러그인에 패턴 추가fix/todo/progress-calc— todo 진행률 계산 수정docs/architecture— 아키텍처 문서 업데이트
커밋 컨벤션¶
Type¶
| Type | 설명 |
|---|---|
feat |
새 기능 |
fix |
버그 수정 |
docs |
문서 수정 |
refactor |
리팩토링 |
chore |
기타 작업 |
Scope¶
플러그인 이름 또는 docs:
- bonie, todo, typescript, docker, ...
- docs, arch, ci
예시¶
feat(typescript): add error handling patterns skill
TypeScript 에러 핸들링 패턴 skill 추가.
- try-catch 패턴
- Result type 패턴
- Error boundary 패턴
PR 프로세스¶
PR 생성¶
- 기능 브랜치에서 작업 완료
gh pr create또는 Claude Code에서 PR 생성- PR template 작성
PR Template¶
## Summary
- 변경 사항 요약 (1-3 bullet points)
## Test Plan
- [ ] `claude --plugin-dir .` 로 로컬 테스트
- [ ] `/reload-plugins`로 변경 반영 확인
- [ ] skill/agent 정상 동작 확인
리뷰 프로세스¶
- PR 생성 → 자동 리뷰어 배정
- 코드 리뷰 → 피드백 반영
- Approve → main merge
코드 리뷰 기준¶
SKILL.md 리뷰¶
- description이 명확하고 키워드가 front-loaded
- paths glob이 정확하고 너무 넓지 않음
- 500줄 이하 (초과시 supporting file 분리)
- 코드 예시가 실제 동작하는 수준
Agent 리뷰¶
- description이 자동 위임에 적합
- system prompt가 구체적이고 일관됨
- model 선택이 적절 (비용/성능 고려)
- tool 제한이 적절 (최소 권한 원칙)
Hook 리뷰¶
- matcher가 정확
- exit code 처리가 올바름
- timeout이 적절
- 스크립트에 실행 권한 (
chmod +x)
관련 문서¶
- Plugin Authoring — 플러그인 작성 상세 가이드
- Architecture Overview — 전체 구조 이해