Vault Organizer
지저분한 마크다운 보관소를 LLM(또는 팀원)이 빠르게 검색할 수 있는 깔끔하고 상호 연결된 인덱싱된 지식 베이스로 전환합니다. Karpathy의 원칙을 기반으로 합니다: 지식을 코드처럼 다루십시오. 원시 소스는 소스 파일이고, 컴파일된 위키는 빌드 출력물이며, INDEX는 스키마이고, 이 스킬은 컴파일러 + 린터입니다.
모델 (3계층)
| 계층 | 내용 | 위치 |
|---|---|---|
| RAW | 처리되지 않은 자료: 트랜스크립트, 클립, 덤프, 스크린샷 | 00_Inbox/raw/, 가장 가까운 주제 폴더 |
| COMPILED | [[위키링크]]로 상호 참조된 합성 페이지 | PARA 폴더 (01_–04_) |
| SCHEMA | INDEX 파일, CLAUDE.md, 규칙 | 폴더별 INDEX.md + 마스터 인덱스 |
모든 파일은 type: 프론트매터(raw | compiled | reference | framework | client | index)를 전달합니다.
프론트매터 및 INDEX 템플릿은 references/standards.md를 참조하세요.
워크플로우
순서대로 실행하세요. 변경하기 전에 항상 감사하고 제안하십시오. 확인 없이 삭제하거나 이동하지 마십시오. 변경 사항을 되돌릴 수 있도록 git 저장소를 사용하는 것이 좋습니다.
1. 감사 (읽기 전용)
# 전체 보관소:
python3 scripts/audit.py <vault_root> --stale-days 120 --report /tmp/vault-audit.md
# 하나의 하위 폴더이지만 전체 보관소에 대해 [[위키링크]]를 확인합니다 (잘못된 "깨짐" 플래그 방지):
python3 scripts/audit.py <subfolder> --link-root <vault_root> --report /tmp/vault-audit.md
건강 보고서를 반환합니다: 누락된 프론트매터, 깨지거나 누락된 위키링크, 고아 문서, 누락된 Related 섹션, 중복, 오래된 파일, INDEX가 없는 폴더. 이를 읽고 사용자에게 요약 테이블과 주요 문제를 보여주십시오. (기계 출력은 --json).
2. 분류
결과를 그룹화하고 지금 고칠 것과 나중에 고칠 것을 묻습니다. 기본 우선순위:
- INDEX가 없는 폴더 (검색 불가)
- 누락된 프론트매터 (검색 + 속성 불가)
- 깨진 위키링크 (그래프 불가)
- 누락된 Related 섹션 + 고아 문서 (검색 불가)
- 오래된 파일 / 중복 (정리)
3. 정리 (파일별)
각 플래그된 파일에 대해:
- YAML 프론트매터(
title, type, source, author, created, description, tags)를 추가합니다. 내용에서 유추하고created를 모르면 오늘 날짜를 사용합니다. - 보관소의 다른 곳에 존재하는 모든 개념, 도구, 사람 또는 파일의 첫 번째 언급에
[[위키링크]]를 추가합니다. ## Related섹션을 하단에 추가하고 가장 연결된 페이지에 3–8개의[[위키링크]]를 추가합니다. 해당 페이지 중 2–3개의 Related에도 이 파일을 다시 추가합니다(양방향).- 깨진 위키링크를 수정합니다: 올바른 슬러그로 다시 가리키거나, 나중에 작성할 가치가 있는 대상인 경우 의도적인 스텁으로 남겨둡니다.
references/standards.md의 템플릿을 사용하십시오. 기존 프론트매터나 링크를 제거하지 마십시오.
4. 구성 (먼저 제안)
- 잘못 배치된 항목을 올바른 계층/폴더(원시 →
00_Inbox/raw/, 컴파일된 → PARA)로 이동합니다. - 파일 이름을 케밥-케이스로 정규화하고 중복을 병합하거나 이름을 변경합니다.
- 이동은 작고 되돌릴 수 있게 유지하십시오. 모든 이동을 나열하고 실행하기 전에 승인을 받으십시오.
5. 등록 (산출물)
- 각 콘텐츠 폴더에 대해
INDEX.md를 생성하거나 업데이트합니다: 파일당 한 줄 포인터(- [[file-name]] — short hook), 유형별로 그룹화되고 가장 최신 또는 가장 중요한 것부터 정렬합니다. - 모든 폴더 INDEX에 링크하는 마스터 인덱스(예: 루트의
INDEX.md또는meta/스키마 폴더)를 구축/갱신합니다. - 이 레지스트리는 검색을 빠르게 하고 팀원에게 전달하는 항목입니다.
6. 린트 (확인)
audit.py를 다시 실행하십시오. 전후 개수를 표시하십시오. 프론트매터, INDEX 적용 범위 및 깨진 링크 수가 0이면 보관소가 "깨끗"합니다 (고아 문서/오래된 파일은 선택적으로 남을 수 있음).
동료에게 보내기
정리된 보관소를 동료와 공유하는 것이 목표인 경우: 마스터 INDEX가 최신 상태이고 모든 폴더에 자체 INDEX가 있으며 루트에 있는 짧은 README.md가 3계층 모델과 탐색 방법을 설명하는지 확인하십시오. README + 마스터 INDEX가 진입점입니다.
규칙
- 항상 먼저 읽기 전용 감사부터 시작하십시오. 드러내되 놀라지 마십시오.
- 명시적 확인 없이 삭제하거나 대량 이동하지 마십시오. 먼저 커밋하는 것을 권장합니다.
.obsidian/,.git/또는 Claude Code 설정(settings.json, hooks)을 건드리지 마십시오.- 보관소의 기존 규칙을 따르십시오 (이 보관소: PARA +
references/standards.md의 표준). - 배치 단위로 작업하고 각 배치 후 변경된 사항을 보고하십시오.
파일
scripts/audit.py— 읽기 전용 스캐너, 엔진. 처음과 마지막에 실행하십시오.references/standards.md— 프론트매터 사양, 유형 분류, INDEX + README 템플릿.