Loading...
Loading...
Karpathy LLM Wiki 패턴 기반 지식 관리 스킬. 코드 프로젝트와 옵시디언 노트 모두 지원. Raw Source(코드·문서)를 읽어 docs/wiki/에 누적형 지식베이스를 구축·유지한다. "wiki", "위키", "ingest", "인제스트", "wiki 점검", "wiki lint", "wiki 업데이트", "문서화해줘", "아키텍처 설명해줘", "어떻게 동작해?" 키워드로 트리거. qmd 검색 도구와 연동하여 토큰 절약 + 높은 검색 정확도 제공.
npx skill4agent add peachsolution/peach-harness peach-wikidocs/wiki/.obsidian 존재 → 옵시디언 모드 (DRIFT 없음)
.git 존재 → code 모드 (DRIFT 활성)
둘 다 존재 → code 모드 우선
둘 다 없음 → 일반 모드 (DRIFT 없음, wiki는 정상 동작)ls -d .obsidian 2>/dev/null && echo "OBSIDIAN=true" || echo "OBSIDIAN=false"
ls -d .git 2>/dev/null && echo "GIT=true" || echo "GIT=false"[프로젝트 루트 또는 옵시디언 보관소]/
└── docs/wiki/
├── WIKI-AGENTS.md ← 운영 규칙 (세션 시작 시 먼저 읽기)
├── wiki-index.md ← 전체 위키 카탈로그
├── wiki-log.md ← 작업 타임라인 (append-only)
├── concepts/ ← 아키텍처 패턴·도메인 개념
├── entities/ ← 모듈·서비스·컴포넌트·인물·프로젝트
├── synthesis/ ← 데이터 흐름·의사결정·트레이드오프
├── sources/ ← 원본 문서 요약 (옵시디언 모드)
└── diagrams/ ← Mermaid 다이어그램docs/wiki/WIKI-AGENTS.md# 모드 감지
ls -d .obsidian 2>/dev/null && echo "MODE=para" || echo "MODE=code"
ls -d .git 2>/dev/null && echo "GIT=true" || echo "GIT=false"
# 프로젝트 인덱스명 확정 (이후 모든 qmd 명령에 사용)
QMD_INDEX=$(basename $(pwd))
echo "QMD_INDEX=$QMD_INDEX"
# qmd 상태 확인 (named index 기준)
qmd --index "$QMD_INDEX" status 2>/dev/nullqmd가 미설치 상태입니다.
wiki는 동작하지만 qmd 설치 시 토큰 절약 + 검색 정확도가 크게 향상됩니다.
설치: npm install -g @tobilu/qmdqmd --index "$QMD_INDEX" collection list--index "$QMD_INDEX"~/.cache/qmd/$QMD_INDEX.sqlite~/.config/qmd/$QMD_INDEX.yml# code 모드
qmd --index "$QMD_INDEX" collection add . --name "$QMD_INDEX" --mask "**/*.{ts,vue,md,sql,py,go,js}"
# 옵시디언 모드
qmd --index "$QMD_INDEX" collection add . --name "$QMD_INDEX" --mask "**/*.md"
# 컨텍스트 설명 추가 (검색 품질 핵심)
qmd --index "$QMD_INDEX" context add "qmd://$QMD_INDEX/" "프로젝트 한 줄 설명"
# 인덱싱 (해당 인덱스의 컬렉션만 처리됨)
qmd --index "$QMD_INDEX" update && qmd --index "$QMD_INDEX" embed격리 원리:지정 시 해당 인덱스에 등록된 컬렉션만 처리된다. 기본--index에 등록된 다른 프로젝트·para 컬렉션은 전혀 영향받지 않는다. (공식 문서: "Use separate index for different knowledge base")index.sqlite
주의:없이 plain--index를 실행하면 기본 인덱스의 전체 컬렉션(CloudStorage 경로 포함)이 처리된다. 반드시qmd update/embed를 붙여라.--index
ls -d .wiki 2>/dev/null && echo "기존 .wiki/ 발견"
ls -d 5-Wiki 2>/dev/null && echo "기존 5-Wiki/ 발견"기존 [.wiki/ 또는 5-Wiki/]가 발견되었습니다.
docs/wiki/로 이동합니까? (기존 폴더는 백업 후 이동)
[Y/n]docs/wiki/.bakreferences/WIKI-AGENTS-템플릿.md자리에프로젝트명실제 값을 삽입한다. (예:$QMD_INDEX,tang)peach-www
프로젝트명## wiki 참조 (필수)
코드 생성·분석 전 아래 순서를 따른다.
1. `qmd --index 프로젝트명 query "키워드" -c 프로젝트명` 으로 wiki + 소스 통합 검색
2. qmd 미설치 시 `docs/wiki/wiki-index.md` → 관련 페이지 직접 Read
3. `docs/wiki/`도 없으면 기존 방식대로 진행
## qmd 인덱스 (필수)
이 프로젝트의 qmd 인덱스명: `프로젝트명`
모든 qmd 명령에 `--index 프로젝트명`을 붙인다.
plain `qmd update/embed`는 다른 프로젝트 인덱스를 오염시킬 수 있으므로 금지.
# 검색
qmd --index 프로젝트명 query "키워드" -c 프로젝트명
# 인덱스 갱신
qmd --index 프로젝트명 update && qmd --index 프로젝트명 embeddocs/wiki/entities/project-overview.md# qmd 사용 가능 시 (1순위) — named index 필수
qmd --index "$QMD_INDEX" query "모듈명 또는 키워드" -c "$QMD_INDEX"
# qmd 미사용 시 (fallback)
# 직접 파일 Readentities/module-이름.mdentities/api-이름.mdentities/schema-이름.mdsources/YYYY-MM-DD-제목.mdentities/이름.mdentities/project-이름.mdlsGlob--index "$QMD_INDEX"qmd --index "$QMD_INDEX" update && qmd --index "$QMD_INDEX" embedqmd --index "$QMD_INDEX" update$QMD_INDEXQMD_INDEX=$(basename $(pwd))---
tags: [wiki, entities|concepts|synthesis|sources|diagrams]
created: YYYY-MM-DD
updated: YYYY-MM-DD
sources: [소스 파일 경로]
related_files: [직접 연관된 파일] # code 모드
---
# 제목
> 한 줄 요약
## 핵심 내용
## 연결된 위키 페이지
- [[관련 페이지]]
## 원본 소스
- `경로/파일명`미선언 시:$QMD_INDEX로 재선언QMD_INDEX=$(basename $(pwd))
qmd --index "$QMD_INDEX" query "질문 내용" -c "$QMD_INDEX"docs/wiki/wiki-index.md이 답변을 docs/wiki/synthesis/YYYY-MM-DD-주제.md로 저장할까요?미선언 시:$QMD_INDEX로 재선언QMD_INDEX=$(basename $(pwd))
git diff --name-only HEAD~1 # 마지막 커밋
git diff --name-only # 미커밋 변경related_filesupdatedqmd --index "$QMD_INDEX" update## [YYYY-MM-DD] lint | [프로젝트명]
- 드리프트 위험: N개 페이지
- 고아 페이지: N개
- 깨진 링크: N개
- 미문서화: [목록]
- 권고: [조치 목록]docs/wiki/[[파일명]]모든 명령에를 붙인다.--index "$QMD_INDEX"로 세션 시작 시 선언.QMD_INDEX=$(basename $(pwd))
# 상태 확인
qmd --index "$QMD_INDEX" status
qmd --index "$QMD_INDEX" collection list
# 하이브리드 검색 (권장)
qmd --index "$QMD_INDEX" query "키워드" -c "$QMD_INDEX"
# 키워드 검색
qmd --index "$QMD_INDEX" search "키워드" -c "$QMD_INDEX"
# 파일 경로만 출력
qmd --index "$QMD_INDEX" query "키워드" -c "$QMD_INDEX" --files
# 특정 파일 읽기
qmd --index "$QMD_INDEX" get "qmd://$QMD_INDEX/경로/파일.md"
# 인덱스 갱신 (대량 변경)
qmd --index "$QMD_INDEX" update && qmd --index "$QMD_INDEX" embed
# 인덱스 갱신 (소규모 수정)
qmd --index "$QMD_INDEX" update