운영
verified · type: reference · verified: 2026-07 · review: 180d · updated: 2026-08-02 · [meta, conventions]

위키 규칙 & 유지보수 원칙

이 위키가 썩지 않게 하는 규칙서다. LLM 사실(모델명·가격·API 파라미터)은 매달 바뀐다. 규칙 없이 문서가 쌓이면 무엇이 최신이고 무엇이 죽었는지 알 수 없게 된다. 이 문서가 그걸 막는다.

이 위키의 뼈대는 Andrej Karpathy 의 LLM Wiki 패턴 (1차 출처, 2026-04 gist) 에서 왔다. 거기서 온 것은 불변 원본(raw/) 과 가공본의 분리, 출처 추적, append-only log.md, lint 연산, 그리고 concept/entity/comparison 페이지 타입이다.

⚠️ 나머지는 Karpathy 가 아니다. 원문은 디렉터리 구조를 일부러 규정하지 않았다 — "The exact directory structure, the schema conventions, the page formats, the tooling — all of that will depend on your domain." 따라서 번호 폴더 · Diátaxis type · MOC · taxonomy.md · last_verified/review_every/_review.md 는 다른 전통이거나 이 위키의 자체 설계다. 대조 근거 → 2026-08-02-karpathy-llm-wiki-primary


1. 파일 이름 규칙

  • 소문자 kebab-case, 서술형, 한 파일 = 한 아이디어: claude-family.md, prompt-caching.md, model-choice-decision-guide.md
  • 파일명이 곧 <code>[[위키링크]]</code> 대상이다 — 자연스럽게 타이핑할 이름으로 짓는다.
  • 파일명에 휘발성 사실을 넣지 마라gpt-prices-jan2026.md 금지. 날짜·버전은 프론트매터와 본문에. 이름에 넣으면 리네임할 때 링크가 깨진다.
  • _ 접두사 = 인프라/메타 노트(_index.md, _review.md, _concepts-moc.md). 맨 위로 정렬되고 Dataview 쿼리에서 WHERE !startswith(file.name, "_") 로 쉽게 제외된다.
  • raw/ 캡처는 불변이라 날짜를 이름에 넣는다: raw/2026-07-23-anthropic-pricing.md

2. 프론트매터 템플릿 (복붙용)

---
title: Prompt Caching
type: reference          # reference | explanation | how-to | tutorial | concept | entity | comparison
tags: [anthropic, prompting, cost-optimization]
status: verified         # verified | stale | draft | deprecated
created: 2026-07-23
updated: 2026-07-23
last_verified: 2026-07   # 사람이 실제 출처로 재확인한 시점만 갱신
review_every: 30d        # 휘발성 등급 (아래)
provenance: extracted    # extracted | inferred | ambiguous
sources:
  - "<code>[[raw/2026-07-23-anthropic-pricing]]</code>"
---

3. 세 개의 날짜 원칙 ⭐ (이 위키의 존재 이유)

세 날짜는 각각 다르다. 이걸 헷갈리면 유지보수가 무너진다.

필드 언제 갱신 의미
created 절대 안 바뀜 문서를 처음 만든 날
updated 아무 편집이든 할 때마다 오타 고쳐도 갱신
last_verified 사람이 실제 라이브 출처로 사실을 재확인했을 때만 "이 내용 아직 맞다"를 확인한 시점

핵심: 오타를 고치면 updated 는 바뀌지만 last_verified 는 안 바뀐다. last_verified 는 "내용이 진짜인지"의 신선도지, "파일을 언제 건드렸나"가 아니다.

본문의 개별 사실에도 인라인 태그를 단다: 가격·모델 ID·컨텍스트 크기·SDK 버전 같은 휘발성 값 뒤에 (verified 2026-07). 그래야 페이지 전체가 아니라 사실 하나하나의 신선도가 보인다.

4. 휘발성 등급 → review_every

폴더 review_every 이유
02-models/, 04-apis/ 30d 가격·모델 ID·SDK 버전이 매달 바뀜
03-prompting/, 05-agentic/, 06-playbooks/ 90d 패턴은 반년 단위로 천천히 변함
01-concepts/ 180d 토큰·임베딩 같은 이론은 잘 안 변함
10-profile/ ~ 14-beyond/ 180d 내 이력·작업물. 단 career.md 는 재직상태 때문에 90d 로 조임

_review.md 의 Dataview 가 last_verified + review_every < today 인 페이지를 전부 띄운다.

예외: 폴더 기본값보다 더 짧게 잡는 건 허용한다(가격·모델 ID 를 본문에 담은 페이지). 더 길게 늘이는 건 금지. 예: prompt-caching03-prompting/ 에 있지만 프로바이더별 과금이 본문에 있어 30d.

5. status 필드

verified | stale | draft | deprecated

  • 검토 주기를 넘기면 stale 로 (→ _review.md 에 뜸) 재확인 전까지.
  • deprecated 페이지는 지우지 않는다 — 링크 무결성 때문에 남기되, 문서 맨 위에 배너로 표시.

6. 출처(provenance)

  • 모든 페이지는 sources:<code>[[raw/...]]</code> 캡처를 가리킨다.
  • provenance: extracted | inferred | ambiguous
  • 비(非)Anthropic 모델/가격 사실은 aggregator 에서 온 것이므로 inferred — 공식 출처로 확인하기 전까지. 본문에도 [official] vs [aggregator] 신뢰도 표시.

7. raw/ 는 불변

  • 캡처가 한 번 들어오면 절대 편집하지 않는다. 이게 인용/출처의 백본이다.
  • 새 사실을 발견하면 raw/YYYY-MM-DD-*.md 로 원본을 즉시 떨궈두고 log.md 에 한 줄 남긴다.

8. 링크와 MOC

  • <code>[[서술형-제목]]</code>폴더보다 우선하는 1차 구조다. 여러 MOC 에서 도달 가능한 노트가 목표.
  • Obsidian 설정 → Files & Links → "Automatically update internal links" 켜기 (리네임 시 링크 안 깨지게).
  • 모든 위키 페이지는 최소 하나의 _*-moc.md 에서 도달 가능해야 하고, 모든 MOC 는 _index.md 에서 도달 가능해야 한다.

9. 태그

  • 통제된 어휘만. <a href="taxonomy.html">taxonomy</a> 에 정의된 것만 쓴다.
  • aboutness(#model, #prompting, #agentic, #api) + 상태(#needs-review, #deprecated).
  • 즉흥적으로 태그를 만들지 마라 — 먼저 taxonomy.md 에 추가하고 쓴다. 안 그러면 태그가 썩는다.

10. 날짜 형식

  • 프론트매터는 항상 ISO YYYY-MM-DD (Dataview 정렬이 타입 혼용에 조용히 깨진다).
  • last_verifiedYYYY-MM 단위 허용하되 vault 전체에서 일관되게.

11. 연산 (operations) ⭐

이 위키는 손으로만 굴리는 게 아니라 에이전트가 돌리는 연산을 갖는다. 스키마는 루트 CLAUDE.md, 실행은 슬래시 커맨드다.

연산 커맨드 하는 일
ingest /ingest <자료> 자료를 raw/ 에 불변 캡처 → 해당 위키 페이지 생성·갱신 → MOC 연결 → log.md 기입
lint /lint 구조 검사(스크립트) + 의미 검사(에이전트). 아래 참조
review /wiki-review _review.md 의 밀린 페이지를 공식 출처로 재확인 → last_verified 갱신
build /build lint 통과 시 site/ 정적 HTML 재빌드

lint 가 찾는 것

Karpathy 원문의 lint 항목을 그대로 따른다. 기계가 잡는 것에이전트가 잡는 것이 나뉜다.

기계 (~/dev/llmwiki-tools/validate_wiki.py): - 깨진 위키링크 · 프론트매터 누락 · 통제어휘 밖 태그 · review_every 완화 - 고아 페이지 (어떤 MOC 에서도 도달 불가)

에이전트 (스크립트로는 못 잡음): - 페이지 간 모순 — 같은 사실을 두 페이지가 다르게 말하는가 - 낡은 주장 — 새 출처가 뒤집었는데 안 고쳐진 것 - 누락 상호참조 — 관련 있는데 서로 안 거는 페이지 - 페이지 없는 개념 — 여러 곳에서 언급되는데 자기 페이지가 없는 것 - 자료 공백 — 웹 검색으로 메울 수 있는 구멍


관련: taxonomy · _index · _review · 2026-08-02-karpathy-llm-wiki-primary