{"id":47712874,"url":"https://github.com/giwonn/claude-daily-review","last_synced_at":"2026-04-08T02:01:06.633Z","repository":{"id":347621726,"uuid":"1194647280","full_name":"giwonn/claude-daily-review","owner":"giwonn","description":"Claude Code plugin that auto-captures conversations for daily review and career documentation","archived":false,"fork":false,"pushed_at":"2026-04-05T18:04:33.000Z","size":269,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2026-04-05T20:02:41.551Z","etag":null,"topics":["ai-agent","career","claude-code","daily-review","devtools","github","obsidian","productivity"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/giwonn.png","metadata":{"files":{"readme":"README.ko.md","changelog":"CHANGELOG.ko.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-03-28T16:27:30.000Z","updated_at":"2026-04-05T18:04:40.000Z","dependencies_parsed_at":"2026-04-08T02:00:55.976Z","dependency_job_id":null,"html_url":"https://github.com/giwonn/claude-daily-review","commit_stats":null,"previous_names":["giwonn/claude-daily-review"],"tags_count":36,"template":false,"template_full_name":null,"purl":"pkg:github/giwonn/claude-daily-review","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giwonn%2Fclaude-daily-review","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giwonn%2Fclaude-daily-review/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giwonn%2Fclaude-daily-review/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giwonn%2Fclaude-daily-review/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/giwonn","download_url":"https://codeload.github.com/giwonn/claude-daily-review/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giwonn%2Fclaude-daily-review/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31536473,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-07T16:28:08.000Z","status":"online","status_checked_at":"2026-04-08T02:00:06.127Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agent","career","claude-code","daily-review","devtools","github","obsidian","productivity"],"created_at":"2026-04-02T18:41:14.170Z","updated_at":"2026-04-08T02:01:06.474Z","avatar_url":"https://github.com/giwonn.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# claude-daily-review\n\n[![GitHub Release](https://img.shields.io/github/v/release/giwonn/claude-daily-review)](https://github.com/giwonn/claude-daily-review/releases)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Claude Code Plugin](https://img.shields.io/badge/Claude_Code-Plugin-blueviolet)](https://github.com/giwonn/claude-daily-review)\n\nClaude Code 플러그인으로, 대화 내용을 자동으로 캡처하여 Obsidian vault 또는 GitHub 저장소에 구조화된 회고 마크다운 파일을 생성합니다.\n\nAI와 함께하는 일상 개발 업무를 경력 문서로 변환하세요 — 원할 때 바로.\n\n## 주요 기능\n\n- **자동 수집**: 훅 기반 대화 기록으로 수동 작업 제로\n- **온디맨드 회고 생성**: 원할 때 자연어로 회고 생성 (`/generate`)\n- **자연어 타겟팅**: \"어제 회고\", \"1분기 요약\", \"my-app 프로젝트 3월 회고\"\n- **구조화된 회고**: 프로젝트별 작업 요약, 배운 점, 의사결정, Q\u0026A 정리\n- **계단식 요약**: 일간 → 주간 → 월간 → 분기 → 연간\n- **Git 커밋 연동**: 세션 중 생성된 커밋을 자동 캡처하여 회고에 링크 포함\n- **시크릿 자동 마스킹**: API 키, 토큰, 비밀번호 등을 저장 전 자동으로 마스킹\n- **Obsidian 연동**: 태그와 링크가 포함된 마크다운 직접 출력\n- **GitHub 연동**: OAuth 인증으로 GitHub 저장소에 회고 저장\n- **멀티 머신 동기화**: GitHub 저장소를 통해 여러 PC에서 설정 자동 공유\n- **강제종료 복구**: 세션 시작 시 트랜스크립트에서 누락 로그 자동 복구\n\n## 설치\n\n**터미널에서:**\n```bash\nclaude plugin marketplace add giwonn/claude-daily-review\nclaude plugin install claude-daily-review@giwonn-plugins\n```\n\n**Claude Code 내에서:**\n```\n/plugin marketplace add giwonn/claude-daily-review\n/plugin install claude-daily-review@giwonn-plugins\n```\n\n## 설정\n\n처음 실행 시 자동으로 설정 안내가 표시됩니다. 또는 수동으로 실행:\n\n```\n/daily-review-setup\n```\n\n설정 과정:\n1. 저장소 선택: **로컬** (Obsidian vault 등) 또는 **GitHub** (원격 저장소)\n2. 간단한 자기소개 (회사, 직무, 팀)\n3. 요약 주기 선택\n\n## 동작 원리\n\n```\n세션 종료          →  원시 로그 + Git 커밋 자동 저장 (비동기, 논블로킹)\n세션 시작          →  트랜스크립트에서 누락 로그 복구\n/generate          →  원시 로그를 기반으로 회고 생성\n```\n\n### 회고 생성\n\n`/generate`에 자연어로 원하는 범위를 지정할 수 있습니다:\n\n```\n/generate                              → 누락된 회고 전체 생성\n/generate 어제 회고 만들어줘             → 어제 일일 회고\n/generate 지난주 주간 회고               → 지난주 주간 요약\n/generate 1분기 회고                    → 1분기 분기 요약\n/generate my-app 프로젝트 3월 회고       → my-app만 필터한 3월 회고\n/generate 3월 1일~15일                  → 날짜 범위 일일 회고\n```\n\n인자 없이 실행하면 아직 생성되지 않은 회고를 모두 생성합니다 (증분 모드).\n\n### Git 커밋 연동\n\n세션 중 git 커밋을 하면 플러그인이 자동으로:\n1. 트랜스크립트에서 커밋 해시, 브랜치, 메시지를 추출\n2. 리모트 URL과 GitHub 계정 정보를 확인\n3. 일일 회고에 GitHub 링크가 포함된 커밋 내역을 추가\n\n## GitHub 저장소\n\nGitHub를 저장소 백엔드로 선택하면, **OAuth Device Flow**로 인증합니다 — 개인 액세스 토큰이 필요 없습니다.\n\n### 인증\n\n1. 플러그인이 GitHub에 디바이스 코드를 요청합니다\n2. `https://github.com/login/device`에 접속하여 표시된 코드를 입력합니다\n3. 승인하면 플러그인이 OAuth 토큰을 자동으로 수신하여 저장합니다\n\n### 저장소 설정\n\n인증 후 선택할 수 있습니다:\n- **새 저장소 생성** — 계정에 비공개 저장소를 자동 생성\n- **기존 저장소 사용** — owner/repo 형식으로 입력\n\n### 동작 방식\n\n파일은 **GitHub Contents API**를 통해 읽고 쓰여집니다. 각 회고 파일은 마크다운 파일로 저장소에 직접 커밋되며, 로컬 저장소와 동일한 폴더 구조를 사용합니다. 로컬 git 설치가 필요 없습니다.\n\n프로필, 언어, 주기 설정은 저장소의 `.config.json`에 저장되어 다른 PC에서 인증만 하면 자동으로 복원됩니다.\n\n## 폴더 구조\n\n```\ndaily-review/\n├── daily/2026-03-28.md          ← 일일 회고 (모든 프로젝트)\n├── weekly/2026-W13.md           ← 주간 요약\n├── monthly/2026-03.md           ← 월간 요약\n├── quarterly/2026-Q1.md         ← 분기 요약\n├── yearly/2026.md               ← 연간 요약\n├── projects/my-app/\n│   ├── 2026-03-28.md            ← 프로젝트별 일일 상세\n│   └── summary.md               ← 프로젝트 누적 요약\n└── uncategorized/2026-03-28.md  ← 프로젝트와 무관한 질문\n```\n\n## 설정 파일\n\n설정은 `$CLAUDE_PLUGIN_DATA/config.json`에 저장됩니다.\n\n### 로컬 저장소 예시\n\n```json\n{\n  \"storage\": {\n    \"type\": \"local\",\n    \"local\": {\n      \"basePath\": \"/path/to/obsidian/vault/daily-review\"\n    }\n  },\n  \"language\": \"ko\",\n  \"periods\": {\n    \"daily\": true,\n    \"weekly\": true,\n    \"monthly\": true,\n    \"quarterly\": true,\n    \"yearly\": false\n  },\n  \"profile\": {\n    \"company\": \"회사명\",\n    \"role\": \"직무\",\n    \"team\": \"팀명\",\n    \"context\": \"하는 일 한 줄 설명\"\n  }\n}\n```\n\n### GitHub 저장소 예시\n\n```json\n{\n  \"storage\": {\n    \"type\": \"github\",\n    \"github\": {\n      \"owner\": \"github-username\",\n      \"repo\": \"daily-review\",\n      \"token\": \"\u003cOAuth flow가 자동 저장\u003e\",\n      \"basePath\": \"\"\n    }\n  },\n  \"language\": \"ko\",\n  \"periods\": {\n    \"daily\": true,\n    \"weekly\": true,\n    \"monthly\": true,\n    \"quarterly\": true,\n    \"yearly\": false\n  },\n  \"profile\": {\n    \"company\": \"회사명\",\n    \"role\": \"직무\",\n    \"team\": \"팀명\",\n    \"context\": \"하는 일 한 줄 설명\"\n  }\n}\n```\n\n## 보안 및 개인정보\n\n### 자동 수집되는 정보\n\n이 플러그인은 Claude Code와의 **모든 대화 내용**을 자동으로 캡처하여 저장합니다:\n- 사용자 메시지 및 AI 응답 전문\n- 작업 디렉토리 경로 및 프로젝트명\n- Git 커밋 메시지, 브랜치명, 리모트 URL\n\n### 회사/조직 내 사용 시 주의사항\n\n회사 업무에 이 플러그인을 사용하면, 다음 정보가 저장소에 기록될 수 있습니다:\n\n- 소스 코드 및 비즈니스 로직 설명\n- 내부 시스템/서비스 이름 및 아키텍처\n- 동료 이름, 고객 정보, 프로젝트 세부사항\n- 내부 URL, IP 주소, 인프라 구성 정보\n\n**이러한 정보의 관리 책임은 전적으로 사용자에게 있습니다.** 사용 전 소속 조직의 보안 정책을 확인하시기 바랍니다.\n\n### 시크릿 자동 마스킹\n\nAPI 키, 토큰, 비밀번호 등 알려진 시크릿 패턴은 저장 전에 자동으로 `[REDACTED]` 처리됩니다. 단, 이는 best-effort 방식이며 **모든 민감 정보의 완전한 차단을 보장하지 않습니다.**\n\n### GitHub 저장소 사용 시\n\nGitHub에 회고를 저장하는 경우, **반드시 private 저장소를 사용하세요.** public 저장소에 저장할 경우 대화 내용과 회고 파일이 인터넷에 공개됩니다. 시크릿 마스킹이 모든 경우를 커버하지 못하므로, private 저장소 유지는 가장 기본적인 보안 조치입니다.\n\n## 라이선스\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiwonn%2Fclaude-daily-review","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgiwonn%2Fclaude-daily-review","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiwonn%2Fclaude-daily-review/lists"}