Skip to main content
MMMIIIN

pr-logger

by MMMIIINv1.0.2

PR 개발 로그 자동 기록 플러그인 - 질문과 답변을 session-log.md에 자동 기록하여 PR 작성 시 활용

Installation guide →

Commands

pr-log-all

PR 개발 로그 전체 기록 확인

pr-log-clear

PR 작성 완료 마커 추가 (로그 삭제 안함)

pr-log

PR 개발 로그 확인 및 출력 (마지막 PR 이후만)

uninstall

pr-logger 플러그인을 완전히 삭제합니다. 다음 파일들을 모두 삭제하세요:

Documentation

# Claude PR Logger

Claude Code에서 개발 과정을 자동으로 기록하여 PR 작성 시 활용할 수 있는 플러그인입니다.

## 왜 만들었나요?

### AI 시대의 코드 리뷰 패러다임 변화

AI를 활용한 개발이 보편화되면서 개발 속도와 생성되는 코드의 양이 급격히 증가했습니다.
하지만 기존의 코드 리뷰 방식은 이러한 변화를 따라가지 못하고 있습니다.

**기존 방식의 한계:**
- 한 PR에 수백, 수천 줄의 변경사항
- 모든 코드를 라인 바이 라인으로 검토하기 어려움
- AI가 생성한 코드의 의도를 파악하기 힘듦

### 새로운 코드 리뷰: 컨텍스트 리뷰

이제는 `"어떤 코드가 생성되었는가"`보다 `"어떤 맥락에서, 어떤 명령으로 코드가 생성되었는가"`를 리뷰해야 합니다.

**컨텍스트 리뷰의 장점:**
- 개발자가 AI에게 내린 명령과 의도를 확인
- 문제 해결 과정과 의사결정 흐름을 추적
- 코드 변경의 "왜"를 이해하고 리뷰

### PR Logger의 역할

이 플러그인은 개발자와 AI 간의 대화를 자동으로 기록하여:

1. **개발 컨텍스트 보존** - 어떤 요청으로 코드가 생성되었는지 기록
2. **의사결정 추적** - 왜 이런 방식으로 구현했는지 확인 가능
3. **효율적인 리뷰** - 코드보다 맥락을 중심으로 빠른 리뷰
4. **지식 공유** - 팀원들이 개발 과정을 이해하고 학습

## 기능

- **브랜치별 로그 분리**: Git 브랜치마다 별도의 로그 파일 자동 생성
- **자동 질문 기록**: 사용자의 모든 질문을 타임스탬프와 함께 기록
- **답변 요약 트리거**: 이전 답변을 요약하도록 Claude에게 자동 알림
- **에러 메시지 요약**: 긴 에러 메시지를 자동으로 요약 (30줄 이상)
- **PR용 로그**: 개발 과정을 PR에 그대로 활용 가능

### 브랜치별 로그 파일

```
.claude/pr-logger/
├── session-log-feature-10-geofence-management.md
├── session-log-feature-11-worker-api.md
├── session-log-develop.md
└── session-log-main.md
```

브랜치를 전환하면 자동으로 해당 브랜치의 로그 파일을 사용합니다.

## 설치 방법

### 방법 1: GitHub에서 설치 (권장)

```bash
# Claude Code에서 실행
/plugin install pr-logger@MMMIIIN/claude-pr-logger
```

설치 후 Claude Code를 재시작하세요.

### 방법 2: 마켓플레이스 등록 후 설치

```bash
# 1. 마켓플레이스 추가
/plugin marketplace add MMMIIIN/claude-pr-logger

# 2. 플러그인 설치
/plugin install pr-logger
```

## 삭제 방법

### 방법 1: 명령어로 삭제 (권장)

```bash
# Claude Code에서 실행
/pr-logger:uninstall
```

Claude가 캐시, 마켓플레이스, 설정 파일을 모두 정리합니다.

### 방법 2: 기본 삭제

```bash
/plugin uninstall pr-logger
```

> **주의**: 기본 삭제 후 Hook 에러가 발생하면 `/pr-logger:uninstall` 명령어를 사용하세요.

삭제 후 Claude Code를 재시작하세요.

## 동작 원리

플러그인은 다음과 같은 흐름으로 동작합니다:

```
┌─────────────────────────────────────────────────────────────────┐
│                        첫 번째 질문                              │
├─────────────────────────────────────────────────────────────────┤
│  1. 사용자가 질문 입력                                           │
│  2. Hook이 질문을 session-log.md에 기록                          │
│  3. Claude가 답변                                                │
└─────────────────────────────────────────────────────────────────┘
                              ↓
┌─────────────────────────────────────────────────────────────────┐
│                        두 번째 질문                              │
├─────────────────────────────────────────────────────────────────┤
│  1. 사용자가 다음 질문 입력                                       │
│  2. Hook이 질문을 session-log.md에 기록                          │
│  3. Hook이 <pr-log-reminder> 메시지를 Claude에게 전달            │
│  4. Claude가 이전 답변을 요약하여 session-log.md에 추가           │
│  5. Claude가 현재 질문에 답변                                    │
└─────────────────────────────────────────────────────────────────┘
                              ↓
                        (반복...)
```

**핵심 포인트:**
- 질문은 **입력 즉시** 자동 기록됩니다
- 답변 요약은 **다음 질문 시** Claude가 작성합니다
- 이를 통해 질문-답변 쌍이 순차적으로 기록됩니다

## 사용법

### 자동 기록

플러그인 설치 후 자동으로 동작합니다:

1. 질문을 입력하면 `.claude/pr-logger/session-log.md`에 기록됨
2. 다음 질문 시 이전 답변 요약을 자동으로 추가

### 슬래시 명령어

| 명령어 | 설명 |
|--------|------|
| `/pr-logger:pr-log` | 현재 PR용 개발 로그 확인 |
| `/pr-logger:pr-log-clear` | PR 작성 완료 마커 추가 |
| `/pr-logger:pr-log-all` | 전체 개발 로그 확인 |
| `/pr-logger:uninstall` | 플러그인 완전 삭제 (캐시, 설정 파일 모두 정리) |

## 로그 형식

```markdown
# PR 개발 로그

브랜치: `feature-10-geofence-management`
세션 ID: `abc123`
시작 시간: 2025-12-22 10:00:00

---

## [2025-12-22 10:00:00] 질문

사용자 질문 내용

### 답변 요약
- 수행한 작업 1
- 수행한 작업 2
- 커밋: `abc1234`
```

## CLAUDE.md 설정 (권장)

프로젝트의 `CLAUDE.md`에 다음 내용을 추가하면 더 정확하게 동작합니다:

```markdown
## PR 개발 로그 자동화

`<pr-log-reminder>` 메시지가 표시되면:

1. `.claude/pr-logger/session-log.md`를 읽어서 마지막 질문 확인
2. 해당 질문에 대한 이전 답변을 간결하게 요약 (2-5줄)
3. 요약 내용을 `### 답변 요약` 형식으로 추가
4. 그 후 현재 질문에 대한 답변 진행
```

## 파일 구조

```
claude-pr-logger/
├── .claude-plugin/
│   ├── plugin.json          # 플러그인 매니페스트
│   └── marketplace.json     # 마켓플레이스 등록 정보
├── hooks/
│   └── hooks.json           # Hook 설정
├── scripts/
│   └── log-prompt.py        # 로깅 스크립트
├── commands/
│   ├── pr-log.md            # 로그 확인 명령어
│   ├── pr-log-clear.md      # 완료 마커 명령어
│   └── pr-log-all.md        # 전체 로그 명령어
└── README.md
```

## 라이선스

MIT License