Communitygithub.com

walidboulanouar/vault-organizer

마크다운 지식 베이스(Obsidian/PARA)를 정리, 인덱싱하고 Karpathy의 3계층 LLM-wiki 방법으로 정리합니다. AI 에이전트 스킬 또는 독립형 Python으로 작동합니다.

vault-organizer란 무엇인가요?

Vault Organizer는 AI 에이전트나 팀원이 빠르게 검색할 수 있는 깔끔하고 상호 연결된 인덱싱된 지식 베이스로 지저분한 마크다음 보관소를 변환하는 스킬입니다. Karpathy의 '지식을 코드처럼 다루는' 원칙을 기반으로 하며, 원시 소스 파일, 컴파일된 위키 출력, INDEX 스키마, 그리고 컴파일러+린터 역할의 이 스킬로 구성됩니다. 이 스킬은 Obsidian, Claude Code, Cursor, Codex와 같은 AI 에이전트 플랫폼과 호환되며, Python 스크립트로 독립 실행도 가능합니다. 6단계 워크플로우(감사, 분류, 정리, 구성, 등록, 린트)를 통해 항상 읽기 전용 감사부터 시작하여 변경 전 확인을 거쳐 점진적으로 보관소를 개선합니다. 최종 결과물은 모든 폴더의 INDEX와 마스터 INDEX를 갖춘 체계적인 보관소로, README와 함께 동료에게 바로 공유할 수 있습니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add walidboulanouar/vault-organizer

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Vault Organizer

지저분한 마크다운 보관소를 LLM(또는 팀원)이 빠르게 검색할 수 있는 깔끔하고 상호 연결된 인덱싱된 지식 베이스로 전환합니다. Karpathy의 원칙을 기반으로 합니다: 지식을 코드처럼 다루십시오. 원시 소스는 소스 파일이고, 컴파일된 위키는 빌드 출력물이며, INDEX는 스키마이고, 이 스킬은 컴파일러 + 린터입니다.

모델 (3계층)

계층내용위치
RAW처리되지 않은 자료: 트랜스크립트, 클립, 덤프, 스크린샷00_Inbox/raw/, 가장 가까운 주제 폴더
COMPILED[[위키링크]]로 상호 참조된 합성 페이지PARA 폴더 (01_–04_)
SCHEMAINDEX 파일, 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. 분류

결과를 그룹화하고 지금 고칠 것과 나중에 고칠 것을 묻습니다. 기본 우선순위:

  1. INDEX가 없는 폴더 (검색 불가)
  2. 누락된 프론트매터 (검색 + 속성 불가)
  3. 깨진 위키링크 (그래프 불가)
  4. 누락된 Related 섹션 + 고아 문서 (검색 불가)
  5. 오래된 파일 / 중복 (정리)

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 템플릿.

관련 스킬