Analyzes the git commit history of notes written with note-writer to generate a learning log.
Key Features
| Feature | Description |
|---|---|
| Daily Learning Log | Organizes learning content by date based on commits |
| Summary and Questions | Key content summary + essential review questions |
| Obsidian Links | Link learning documents ([[노트명]] format) |
| Recap Schedule | Suggests review dates based on the forgetting curve |
Workflow
Step 1: Analyze Commit History
# notes/ 디렉토리 관련 커밋 조회
git log --oneline --since="2024-01-01" --until="2024-01-31" -- notes/
# 상세 커밋 정보 (날짜, 메시지, 변경 파일)
git log --pretty=format:"%h|%ad|%s" --date=short -- notes/
# 특정 기간 커밋된 파일 목록
git log --name-only --pretty=format:"%ad" --date=short -- notes/
Step 2: Extract Learning Content
Extract information from committed note files:
| Extraction Item | Source |
|---|---|
| Topic/Title | frontmatter name, # 제목 |
| Key Summary | ## 요약 section |
| Keywords | frontmatter keywords |
| Related Concepts | frontmatter related, [[링크]] |
Step 3: Generate Learning Log
Write the log grouped by date:
## 2024-01-15 (월)
### 학습 내용
- [[React Hooks]] - useState, useEffect 기본 개념
- [[Promise]] - 비동기 처리 패턴
### 핵심 요약
1. useState는 컴포넌트의 상태를 관리하는 React Hook
2. Promise는 비동기 작업의 완료/실패를 나타내는 객체
### 복습 질문
1. useState의 초기값 설정 방식 두 가지는?
2. Promise의 세 가지 상태는 무엇인가?
### Recap 일정
- [ ] 2024-01-16 (1일 후) - 첫 복습
- [ ] 2024-01-18 (3일 후) - 간격 복습
- [ ] 2024-01-22 (7일 후) - 주간 복습
- [ ] 2024-02-14 (1개월 후) - 월간 복습
Step 4: Generate Review Questions
Question types based on note content:
| Question Type | Purpose | Example |
|---|---|---|
| Definition Question | Check understanding of concepts | "What is X?" |
| Comparison Question | Identify differences | "What is the difference between A and B?" |
| Application Question | Practical use | "When do you use X?" |
| Relationship Question | Understand connections | "What is the impact of X on Y?" |
Recap Schedule (Based on the Forgetting Curve)
Suggests optimal review times based on the Ebbinghaus forgetting curve:
| Review Round | Interval | Memory Retention Rate |
|---|---|---|
| 1차 | 1일 후 | ~75% |
| 2차 | 3일 후 | ~85% |
| 3차 | 7일 후 | ~90% |
| 4차 | 14일 후 | ~92% |
| 5차 | 30일 후 | ~95% |
Output Format
Single Date Log
# 학습 로그: 2024-01-15
## 오늘 학습
| 주제 | 카테고리 | 난이도 |
|------|----------|--------|
| [[React Hooks]] | React | 중 |
| [[Promise]] | JavaScript | 중 |
## 핵심 내용
> [!summary]
> React Hooks 중 useState와 useEffect의 기본 사용법 학습.
> JavaScript Promise 패턴과 async/await 비교.
## 복습 질문
1. useState에서 이전 상태 기반 업데이트 방법은?
2. useEffect의 의존성 배열이 비어있으면 어떻게 동작하는가?
3. Promise.all과 Promise.race의 차이는?
## Recap 체크리스트
- [ ] 2024-01-16 첫 복습
- [ ] 2024-01-18 3일 복습
- [ ] 2024-01-22 주간 복습
- [ ] 2024-02-14 월간 복습
## 관련 학습
- 이전: [[2024-01-14 학습 로그]]
- 다음: [[2024-01-16 학습 로그]]
Usage Example
/learning-log-generator 오늘
/learning-log-generator 이번 주
/learning-log-generator 2024-01-01 ~ 2024-01-31
/learning-log-generator 최근 7일