self-distiller —— 개인 정체성 증류 매뉴얼
흩어진 자료에서 "그 사람 자체에 관한" 정보를 구조화되고 재사용 가능하며 추적 가능한 마크다운 정체성 레이어로 증류합니다.
오직 한 가지 작업만 수행합니다: 증류(쓰기). 입력 =
raw/에 있는 자료; 출력 =self/의 다섯 파일. 조회/질의응답은 담당하지 않습니다 — "이 프로필을 사용하여 질문에 답변하는 것"은 별개의 작업(다른 스킬이나 프로젝트의 CLAUDE.md 규칙)이며, 이 매뉴얼의 범위를 벗어납니다. 자체적으로 정기 실행되지 않습니다. 정리/병합은 호출 시 실행되는 작업입니다(§3 참조). 정기 실행 여부는 일정 또는 프로젝트 정책에 따라 결정되며, 이 스킬의 책임이 아닙니다. 언어: 사용자가 선호하는 언어로 작성합니다. 개인정보: 정체성 정보는 민감하므로 저장소는 비공개여야 합니다. 독립성: "사용자 본인"에 관한 사실만 다룹니다; 다른 스킬을 알지 못하며 의존하지 않습니다.
0. 첫 실행: 사전 점검 + 디렉토리 생성 (멱등)
없는 것은 채우고, 이미 존재하는 것은 건너뜁니다. templates/에서 템플릿을 복사합니다:
<프로젝트 루트>/
├── self/ # 정체성 레이어 (이 스킬이 작성)
│ ├── observations.md # 진실의 근원: 추가 전용 원자 사실 흐름
│ ├── identity.md # 안정적인 정체성과 성격
│ ├── preferences.md # 선호사항 (각 항목에 적용 범위 표시)
│ ├── now.md # 현재 관심사 (새 값으로 대체됨)
│ └── profile.md # 압축 명함 (≈150 토큰, 출력)
└── raw/ # 자료 출처 (읽기 전용, 전체 트리, 없으면 생성)
├── inbox/ # 새 자료는 여기에 먼저; 증류 후 비움
├── chats/ articles/ research/ videos/ papers/ work/ ideas/ design/ # research/=검색/심층 조사 보고서
└── attachment/ # 이미지/미디어 (md에서 참조)
자아에 관한 사실은 어떤 출처(대화, 동영상, 과거 프로젝트, 디자인 컬렉션 등)에서든 올 수 있으며, chats에만 국한되지 않습니다.
1. 작업 흐름: DISTILL (증류)
각 증류는 다음 순서로 수행합니다:
raw/스캔 (특히inbox/), 각 출처를 개별 처리.- 관련성 판단: 이 자료에 "그 사람 자체에 관한" 정보가 있는가? 없으면 건너뜀(순수 객관적 지식은 이 스킬의 대상이 아님).
- 원자 사실 추출(핵심, §2 참조): 내용에서 명시적 사실 + 추론 가능한 성격/선호를 분리.
observations.md에 기록: 각 원자 사실은 추가 전용이며, 출처 + 날짜 + explicit/inferred 태그를 포함. 이전 항목을 절대 수정하지 않음.- 인간 검토 게이트(§4 참조): "identity/preferences/now에 넣을 것을 권장하는 항목"을 사용자本人에게 확인한 후에만 확정.
- 라우팅(§3 참조): 확인된 사실을 해당 페이지(identity / preferences / now)에 통합.
profile.md업데이트: 압축 명함을 다시 생성(≈150 토큰).- 기록:
observations.md상단 또는 프로젝트log.md에 이번에 추가/업데이트된 내용을 명시. inbox/비움 = 이번 배치 증류 완료 (참고: 증류 완료 ≠ 검증 완료,verified는 사용자가 직접 표시).
정리(병합)는 동일 작업 흐름의 "배치 버전"입니다: "내 프로필 정리해줘"라고 호출되면, 1–2단계를 건너뛰고
observations.md전체에 대해 §3의 병합, 중복 제거, 새 값으로 이전 값 대체(now), 만료 항목 표시(삭제하지 않음)를 수행합니다.
2. 증류 방법: 자료에서 사람 분석하기 (핵심)
이것이 이 스킬의 핵심입니다. 내용을 읽을 때, 아래 방법으로 "이 사람이 누구인지"를 분리합니다.
2.1 두 가지 사실 유형
- explicit(명시적): 사용자가 직접 말한 것. 예: "저는 의상 디자인 전공입니다" →
[explicit] 의상 디자인 전공. - inferred(추론): 행동 패턴에서 유추한 성격/가치관/미적 감각, 반드시 근거 + confidence 포함. 예: 저채도 색상 조합을 반복적으로 수집 →
[inferred, conf=medium] 저채도/모란디 계열 색상 선호, 근거: 해당 색상 조합을 반복 수집.
2.2 추출 작성 규칙
- 원자적이고 자체 완결적: 한 항목은 한 가지만 말하며, 단독으로 읽어도 이해 가능("이 사람은 이번 인터뷰에 긴장했다", "긴장했다"가 아님).
- 절대 날짜(2026년 6월 16일, "어제"가 아님).
- 올바른 귀속: 사용자 본인에 대한 것이면 본인으로 표시; 타인 인용은 그 사람의 것으로 기록하지 않음.
- 출처 포함:
출처: [[raw/chats/...]]. - 출처별 중복 제거: 쓰기 전에 grep으로 출처 확인, 동일 출처 동일 사실은 한 번만 기록.
2.3 분석 차원 (자료에서 이러한 신호를 찾으세요)
내용을 읽을 때, 다음 차원에서 적극적으로 단서를 찾습니다(상세 표는 reference.md 참조):
- 정체성 배경: 직업, 교육, 경력, 거주지.
- 가치관/원칙: 그가 중요하게 여기는 것, 싫어하는 것, 결정의 근거.
- 성격 특성: 반응 방식, 표현 스타일, 감정 패턴(예: 사고가 확산적, 통제를 추구, 신중/단호).
- 사고 방식: 어떻게 추론하고, 결정을 내리며, 어디서 막히는 경향이 있는지.
- 선호사항(적용 범위 표시): 커뮤니케이션 / 업무 / 학습 / 디자인 미적 감각.
- 현재 관심사: 무엇에 집중하고 있는지, 단기 목표(→
now, 변동성 높음). - 미적 경향: 반복적으로 끌리는 것(색상/레이아웃/스타일).
2.4 안전장치
- 과도한 추론 금지: 증거가 부족한 성격 판단은
conf=low로 표시하거나 일단 작성하지 않음. 부족한 것은 만들지 않음. - 절대 지어내지 않음: 없으면
___로 남겨두고, 상상하지 않음. - 민감 내용은 §4 인간 검토를 거치며, 자동으로 기록되지 않음.
3. 라우팅: 어떤 사실이 어떤 페이지로 가는가
observations.md—— 모든 원자 사실이 먼저 여기에 기록됨(진실의 근원, 추가 전용).identity.md—— 안정적인 정체성과 성격(evergreen).preferences.md—— 선호사항, 각 항목에 적용 범위 표시(일반/코드/글쓰기/디자인 미적 감각/커뮤니케이션/학습).now.md—— 현재 관심사(휘발성, 새 값이 이전 값 대체, 이전 값은 "과거 관심사"로 이동, 삭제하지 않음).profile.md—— 위 세 페이지에서 증류된 압축 명함, 안정적이고 답변에 유용한 항목만 선택, ≈150 토큰.
4. 인간 검토 게이트 (지식 베이스보다 더 엄격)
정체성 정보는 민감하고 가장 왜곡되기 쉽습니다: 추출된 사실(특히 inferred 성격 판단)은 먼저 사용자本人에게 확인을 받은 후에야 네 페이지에 확정됩니다; 모든 페이지는 verified: false로 시작하며, 사용자만이 true로 변경할 수 있습니다.
5. 에이전트 간 사용 (증류에 속하지 않으며, 출력 설명만)
profile.md가 출력입니다: 이를 복사하여 모든 AI 에이전트의 커스텀 지시사항에 붙여넣으면 됩니다. 용량 제한 원칙: 항상 profile(L0)만 포함; 시나리오에 따라 관련 선호사항(L1) 추가; 전체 observations는 필요할 때만 검색하고, 전체 주입하지 않음(L2). "이 프로필을 사용한 실제 질의응답 방식"은 다른 스킬의 작업이며, 이 매뉴얼의 범위를 벗어납니다.
- 상세 분석 차원, 사실 분류, frontmatter 규칙 →
reference.md참조 - 다섯 파일의 빈 템플릿 →
templates/참조 - 완전한 증류 예제(대화 → 추출 → 정리) →
examples/참조