From donggu-obsidian
Use when running periodic health checks on personal knowledge management vaults (Obsidian, PARA, LYT, Zettelkasten, second brain) to surface pipeline blockages, guide violations, broken wikilinks, stale stubs, MOC threshold gaps, and uncited sources before weekly recovery rituals
How this skill is triggered — by the user, by Claude, or both
Slash command
/donggu-obsidian:checking-vault-healthThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
PKM vault의 **콘텐츠 파이프라인 어디가 막혔는지** 식별하는 정기 점검. broken link audit 아님. 입구(캡처) → 정제(추출·승격) → 출구(조립·출고) → 큐레이션(MOC) 4 layer 각각이 다음 단계로 흐르는지가 health metric.
PKM vault의 콘텐츠 파이프라인 어디가 막혔는지 식별하는 정기 점검. broken link audit 아님. 입구(캡처) → 정제(추출·승격) → 출구(조립·출고) → 큐레이션(MOC) 4 layer 각각이 다음 단계로 흐르는지가 health metric.
obsidian_simple_search로 충분4 layer 매핑으로 본다. 단순 발견 list ≠ health check.
입구 (캡처) → 정제 (추출·승격) → 출구 (조립·출고) → 큐레이션 (MOC)
저널·Source → CORE·Pattern → Channel Pack → MOC + cross-link
신규 7일 0건? → extracted_to 0? → 가이드 위반? → 5+ topic MOC 없음?
각 layer가 다음으로 흐르는지가 측정 대상. 단계 별 정체 = 시스템 망함의 가장 큰 signal.
list_files_in_vault + 핵심 폴더 4-5개 list_files_in_dirlist_files_in_dir로 70_Projects/<프로젝트>/journal/ 같은 경로). 폴더가 없으면 즉시 P0 (simple_search "type: journal"만으론 템플릿 hit에 가려져 놓침). 폴더 있으면 7일 이내 신규 노트 countsimple_search "extracted_to: []" 으로 추출 안 된 저널 list. SOURCE 중 1주+ 인용 0건 식별type enum 위반, 안티 패턴 (예: "Channel Pack에 본문 직접 작성")[[CORE - X 판단은 사람]] vs [[CORE - X, 판단은 사람]])status: draft 또는 status: stub + created < (today - 2 weeks)# Vault Health — <vault-name>
점검 일자: YYYY-MM-DD · 범위: 폴더 N개, 노트 M개 표본
## P0 — [Layer]: [구체 문제]
**발견**: ...
**영향**: 시스템 [어떤 흐름]이 막힘
**조치**: [구체 명령 또는 다음 행동]
## P1 — ...
## P2 — ...
...
## 긍정 신호 (보존)
- ...
## 한 줄 요약
[우선순위 1-3개 액션 명령]
P 우선순위:
| vault 크기 | 점검 시간 | tool use | sampling |
|---|---|---|---|
| 100-300 노트 | 10-15분 | 30-50회 | 핵심 폴더 list + 표본 노트 5-10 |
| 300+ 노트 | 20-30분 | 60-80회 | 폴더별 representative sample 강제 |
| 1000+ 노트 | 30-45분 | 80-100회 | layer당 1개 폴더만 deep, 나머지 metadata만 |
Hard limit: tool use 100회 또는 30분 초과 시 중단 + partial report.
| Mistake | Fix |
|---|---|
| 보고서가 발견만 있고 조치 없음 | 매 P마다 "조치: 구체 명령" 필수 |
| 입구 (저널/캡처) 빼고 출구 (broken link)만 봄 | 4 layer 매핑 룰 강제, layer 별 최소 1 항목 |
| 균형 없이 부정 발견만 list | "긍정 신호" 섹션 1-3개 강제 |
| 전체 vault 다 읽음 | sampling 룰 위반. 100+ 면 sampling 강제 |
| 같은 frontmatter 키 50번 읽음 | metadata batch retrieval 또는 search 활용 |
| 흔한 frontmatter 값을 직접 검색 | simple_search "status: draft" 같은 흔한 값은 100k+ 토큰 결과 폭발. enum 값 + 폴더 한정 (예: obsidian_list_files_in_dir "20_Core" 후 batch_get_file_contents로 sampling) |
| 보고서 5000자 넘음 | 한 P당 5줄 이내, 한 줄 요약은 1줄 |
## P0 — 입구 단절: Build Journal 0건
**발견**: `70_Projects/*/journal/` 조회 → 결과 0건. 7일 이내 신규 저널 0.
**영향**: 시스템 입구가 막혀 CORE 승격·LinkedIn 데일리 원료 파이프라인 작동 안 함.
**조치**: 진행 중인 프로젝트 1개 골라 `70_Projects/<프로젝트>/journal/YYYY-MM-DD.md` 생성. TPL - Build Journal 적용. 매일 저녁 5-15분 룰 시작.
## P1 — 정제 정체: 추출 안 된 저널 5건
**발견**: `simple_search "extracted_to: []"` 결과 5건 (모두 1주+ 묵음).
**영향**: 저널의 atomic insight가 CORE로 승격 안 됨 → 강의 자산 누적 0.
**조치**: 주말 추출 의례 진행. 각 저널의 "💎 추출 후보" 섹션만 훑기 → 1-3개 CORE 신규. /extract-core 스킬 활용.
PKM 시스템마다 layer 매핑 다름. skill은 framework, 매핑은 사용자 vault에 따라:
각 vault의 가이드 노트 (예: _GUIDES/CONTENT_PIPELINE.md) 또는 CLAUDE.md 먼저 read해서 layer mapping 확정 후 점검 시작.
vault health 점검 중 다음 신호 발견 시 별도 skill을 즉시 chain 호출 권장 — 동일 task에서 자연스럽게 다음 단계로 흐름:
| 발견 신호 | Chain 대상 | 이유 |
|---|---|---|
| Semantic duplicates, naming twins, absorbed-not-merged callout 발견 | finding-duplicate-notes | atomicity 점검은 별도 영역. 5 중복 패턴 풀 audit. |
extracted_to: [] 저널 5건+, 추출 안 됨 1주+ | extract-core | 주말 추출 의례. 저널 → CORE 승격 의례 트리거. |
| 5+ topic 같은데 MOC 없음 | (사용자 직접) | MOC 생성은 hand-curation 영역, skill 영역 X. |
Chain 룰:
finding-duplicate-notes skill로 확장 audit 권장" 같은 명시 안내Cross-reference 룰 (writing-skills 가이드 따름):
**REQUIRED SUB-SKILL:** X — 둘 다 필수 아님**Chain 권장:** O — 사용자 결정 후 호출npx claudepluginhub donggu1105/donggu-skills --plugin donggu-obsidianCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.