지식 작업 (Knowledge Operations)
여러 저장소에 걸쳐 지식을 관리합니다.
각 사실에는 하나의 메인 홈(주 저장소)을 지정합니다. 다른 저장소에는 짧은 메모와 해당 홈으로의 링크만 보관할 수 있습니다.
이 스킬을 사용하는 경우
사용자가 다음과 같은 작업을 원할 때 이 스킬을 사용하세요:
- 지식 베이스에 사실이나 메모를 저장합니다.
- 파일, 채팅 또는 데이터 세트를 가져옵니다.
- 저장소 간에 지식을 동기화합니다.
- 중복 메모를 찾거나 병합합니다.
- 특정 주제에 대한 알려진 사실을 검색합니다.
- 공유된 진실 공급원(Source of Truth)을 업데이트합니다.
- 단순한 메모리 조회 이상의 작업을 수행합니다.
주요 규칙
- 코드 작업은 실제 클론된 저장소에서 유지합니다.
- 라이브 계획 및 작업 상태는 GitHub, Linear 또는 저장소에 둡니다.
- 긴 메모는 코드 저장소 외부에 두며, 코드와 함께 속하지 않는 경우에만 둡니다.
- 장기적이고 여러 기기에서 사용할 메모는 지식 베이스에 둡니다.
- 생성하기 전에 검색합니다.
- 동일한 사실에 대해 두 개의 메인 복사본을 만들지 않습니다.
- 사용자가 요청하고 필요한 도구가 이미 설정되지 않는 한 외부 호출을 하지 않습니다.
- 키, 비밀번호, 토큰, 쿠키 또는 개인 로그인 데이터를 절대 저장하지 않습니다.
- 사용자가 요청하거나 이미 해당 단계를 승인하지 않는 한 커밋하거나 푸시하지 않습니다.
- 새로운 사실을 오래된 메모로 대체하지 않습니다.
저장소 계층 (Storage Layers)
1. 라이브 작업 소스 (Live Work Source)
예시:
- GitHub 이슈, 풀 리퀘스트, 토론, 릴리스 노트
- Linear 이슈, 프로젝트, 문서
- 실제 프로젝트 저장소의 파일
다음 용도로 사용:
- 현재 계획
- 로드맵
- 릴리스 상태
- 롤아웃 상태
- 빌드 및 코드 작업
사실이 활성 작업에 영향을 미치는 경우 이 계층을 먼저 업데이트합니다.
2. Claude Code 메모리 (Claude Code Memory)
경로:
~/.claude/projects/*/memory/
YAML frontmatter가 포함된 짧은 Markdown 파일을 사용합니다.
다음 용도로 사용:
- 사용자 선택
- 사용자 피드백
- 작은 프로젝트 사실
- 짧은 참고 메모
- 이후 채팅에서 필요한 사실
이 경로가 존재하거나 변경 가능하다고 가정하지 마세요. 먼저 확인하세요.
3. MCP 메모리 (MCP Memory)
일반적인 도구:
create_entitiescreate_relationsadd_observationssearch_nodes
다음 용도로 사용:
- 명명된 사람, 팀, 도구 및 프로젝트
- 해당 항목 간의 링크
- 나중에 쉽게 검색해야 하는 사실
현재 MCP 서버의 정확한 도구 이름을 사용하세요. 메모리 서버가 설정되지 않은 경우 이 계층을 건너뛰고 그렇게 명시하세요.
4. 지식 베이스 저장소 (Knowledge Base Repo)
다음 용도로 사용:
- 장기 메모
- 세션 내보내기
- 통합 연구
- 실행 가이드 (Run books)
- 긴 문서
프로젝트 코드가 아닌 콘텐츠를 위한 주요 교차 장치 저장소입니다.
5. 데이터 저장소 (Data Store)
예시:
- Supabase
- PostgreSQL
다음 용도로 사용:
- 대량의 행(Rows)
- 대량의 문서 세트
- 전체 텍스트 검색
- SQL이 필요한 데이터
메모리에는 짧은 요약과 레코드 ID만 유지합니다.
6. 로컬 메모 및 아카이브 (Local Notes and Archive)
다음 용도로 사용:
- 사람이 읽을 메모
- 오래된 계획
- 로컬 미디어 목록
- 단기 비코드 파일
이것을 두 번째 코드 저장소나 라이브 계획의 메인 홈으로 사용하지 마세요.
메인 홈 선택하기 (Pick the Main Home)
다음 가이드를 사용하세요:
| 지식 유형 | 메인 홈 | 선택적 복사본 |
|---|---|---|
| 현재 계획, 릴리스 또는 코드 상태 | GitHub, Linear 또는 프로젝트 저장소 | 짧은 메모리 메모 |
| 비즈니스 결정 | 프로젝트 메모리 또는 지식 베이스 | MCP 메모리 |
| 사용자 선택 또는 피드백 | Claude Code 메모리 | MCP 메모리 |
| 작은 참고 사실 | Claude Code 메모리 | MCP 메모리 |
| 대량 문서 세트 | 데이터 저장소 또는 지식 베이스 | 짧은 메모리 요약 |
| 채팅 또는 세션 내보내기 | 지식 베이스 저장소 | 짧은 메모리 요약 |
| 로컬, 단기 메모 | 로컬 아카이브 | 없음 |
두 가지 선택지가 적합한 경우, 작업을 소유한 저장소를 선택하세요. 전체 텍스트를 복사하는 대신 다른 저장소에서 링크를 추가하세요.
가져오기 단계 (Import Steps)
1. 읽고 분류하기 (Read and Sort)
찾을 항목:
- 소스
- 주제
- 날짜
- 소유자
- 사실이 현재 유효한지 여부
- 텍스트에 비밀이 있는지 여부
- 가장 적합한 메인 홈
읽거나 신뢰할 수 없는 텍스트는 가져오지 마세요. 확실하지 않은 사실은 '확실하지 않음'으로 표시하세요.
2. 일치 항목 검색하기 (Search for a Match)
쓰기 전에:
- 메모리 파일 검색
- MCP 메모리가 설정된 경우 검색
- 지식 베이스 검색
- GitHub 또는 Linear가 해당 사실을 소유할 수 있는 경우 확인
- 사용 중인 대상 데이터 저장소 확인
주제, 이름, 날짜, ID 및 소스 링크를 기준으로 일치시킵니다.
3. 복사본 및 충돌 처리하기 (Handle Copies and Conflicts)
동일한 사실이 존재하는 경우:
- 메인 레코드를 업데이트합니다.
- 새 소스 링크 또는 날짜를 추가합니다.
- 유용한 기록을 유지합니다.
- 안전한 경우에만 오래된 복사본을 제거하거나 '오래됨'으로 표시합니다.
두 출처가 일치하지 않는 경우:
- 추측하지 마세요.
- 두 주장을 날짜와 출처와 함께 유지합니다.
- 새 출처가 해당 사실을 명확히 소유하는 경우에만 선호합니다.
- 선택이 작업을 변경하거나 데이터를 제거하는 경우 사용자에게 문의합니다.
4. 저장하기 (Save)
범위 내에 있고 사용할 준비가 된 저장소에만 씁니다.
- 활성 작업이 변경되는 경우 라이브 작업 소스를 먼저 업데이트합니다.
- Claude Code 메모리를 짧게 유지합니다.
- 사실 및 링크에 MCP 메모리를 사용합니다.
- 긴 텍스트는 지식 베이스에 둡니다.
- 대량 세트는 데이터 저장소에 둡니다.
- 알려진 경우 출처, 날짜 및 소유자를 추가합니다.
저장소가 없거나 읽기 전용인 경우 아무 것도 저장하지 않습니다. 수행할 수 없었던 작업을 보고합니다.
5. 인덱스 업데이트하기 (Update Indexes)
새 항목을 찾는 데 사용되는 주제 목록, 세션 목록 또는 요약 파일을 업데이트합니다.
소문자 kebab-case 파일 이름을 사용하세요. 예:
release-plan-2026-05.md
6. 결과 확인하기 (Check the Result)
변경된 각 레코드를 다시 읽습니다. 링크, 날짜 및 이름이 올바른지 확인합니다.
동기화 작업 (Sync Work)
채팅 동기화 (Sync Chats)
Claude, Codex 또는 기타 채팅 내보내기의 경우:
- 비밀 및 개인 로그인 데이터를 제거합니다.
- 소스 이름과 날짜를 유지합니다.
- 전체 내보내기를 지식 베이스에 저장합니다.
- 메모리에 짧은 요약을 추가합니다.
- 세션 인덱스를 업데이트합니다.
- 사용자 승인 시에만 커밋 및 푸시합니다.
작업 공간 상태 동기화 (Sync Workspace State)
핵심 파일 및 설정의 경우:
- 폴더 맵을 만듭니다.
- 유용하고 비밀이 아닌 사실만 복사합니다.
- 키, 토큰, 비밀번호, 쿠키 및 개인 경로를 제거합니다.
- 소스와 날짜를 기록합니다.
- 시간에 따른 변경 사항을 추적합니다.
전체 라이브 코드 폴더를 아카이브에 복사하지 마세요.
GitHub 또는 Linear 동기화 (Sync GitHub or Linear)
사실이 활성 작업에 영향을 미치는 경우:
- 작업을 소유한 항목을 찾습니다.
- 해당 항목을 먼저 업데이트합니다.
- 필요한 경우 지원 문서를 추가합니다.
- 추가 가치를 제공하는 경우에만 로컬 메모를 추가합니다.
- 메모를 기본 항목에 다시 연결합니다.
여러 소스 동기화 (Sync Many Sources)
채팅, 북마크, GitHub 이벤트 또는 기타 소스의 경우:
- 항목을 주제별로 그룹화합니다.
- 정확한 복사본과 유사한 복사본을 제거합니다.
- 소스 링크와 날짜를 유지합니다.
- 하나의 명확한 상태 메모를 작성합니다.
- 메인 홈에 저장합니다.
- 사용자 승인 시에만 커밋 및 푸시합니다.
메모리 패턴
단기:
이 채팅의 작업에는 현재 작업 목록을 사용합니다.
중기:
~/.claude/projects/*/memory/의 짧은 파일을 사용합니다.
장기:
라이브 작업에는 GitHub 또는 Linear를 사용합니다.
긴 메모에는 지식 베이스를 사용합니다.
연결된 사실:
항목, 사실 및 링크에는 MCP 메모리를 사용합니다.
지식 파일 형식
---
title: 릴리스 계획
type: project
topics:
- release
- mobile-app
source: https://example.com/item/123
updated: 2026-05-12
status: current
---
# 릴리스 계획
짧은 사실은 여기에 기록합니다.
## 링크
- 주요 작업 항목: URL 또는 파일 경로
도움이 되는 필드만 사용하세요. YYYY-MM-DD 형식의 ISO 날짜를 사용하세요. status를 current, stale, archived 또는 unclear로 설정하세요.
구체적인 예시
사용자 요청:
저장: 모바일 앱 출시일이 6월 1일에서 6월 15일로 변경되었습니다. GitHub 이슈 42가 출시 계획을 소유합니다.
단계:
- GitHub, 메모리, MCP 메모리 및 지식 베이스에서 출시 계획을 검색합니다.
- 이슈 42를 열고 주요 작업 항목인지 확인합니다.
- 허용되는 경우 이슈 42를 6월 15일로 업데이트합니다.
- 새 메모를 만들지 않고 기존 메모리 메모를 업데이트합니다.
- 출시 날짜가 6월 15일이라는 MCP 사실을 추가하고 이슈 42에 연결합니다.
- 6월 1일 메모를 '오래됨'으로 표시합니다. 이전 날짜가 유용한 기록인 경우에만 유지합니다.
- 저장된 날짜와 링크를 다시 읽습니다.
- 변경된 각 저장소와 건너뛴 저장소를 보고합니다.
사용자가 검토나 검색만 요청한 경우 GitHub를 업데이트하지 마세요.
에지 케이스 (Edge Cases)
- 소스에 날짜가 없는 경우 날짜를 알 수 없다고 말합니다.
- 소유자가 명확하지 않은 경우 라이브 계획을 변경하기 전에 문의합니다.
- 파일이 너무 큰 경우 지식 베이스나 데이터 저장소에 저장하고 짧은 메모리 메모를 유지합니다.
- 두 항목이 이름을 공유하는 경우 ID, 링크, 소유자 및 날짜를 사용하여 구분합니다.
- 콘텐츠가 비공개일 수 있는 경우 필요한 최소한의 정보만 저장합니다.
- 비밀이 발견되면 제외합니다. 복사하거나 인쇄하지 마세요.
- 쓰기가 부분적으로 실패하면 동기화가 완료되었다고 말하지 마세요. 작동한 항목과 실패한 항목을 나열합니다.
- 저장하면 유용한 기록이 삭제될 수 있는 경우 아카이브하거나 먼저 문의합니다.
- 안전한 메인 홈이 없는 경우 사용자에게 어디에 저장할지 문의합니다.
- 동일한 사실이 두 저장소에 나타나야 하는 경우 전체 텍스트를 한 저장소에 보관합니다. 다른 저장소에는 짧은 메모와 링크를 넣습니다.
최종 확인 (Final Check)
완료하기 전에 다음을 확인합니다:
- 새 중복 항목이 생성되지 않았습니다.
- 각 사실에는 하나의 메인 홈이 있습니다.
- 이전 사실이 업데이트되었거나 '오래됨'으로 표시되었습니다.
- 비밀이 저장되거나 인쇄되지 않았습니다.
- 날짜, 이름, ID 및 링크가 정확합니다.
- 인덱스와 요약이 최신입니다.
- 유용한 경우 상호 링크가 추가되었습니다.
- 변경된 모든 레코드를 다시 읽었습니다.
- 승인 없이 커밋, 푸시 또는 외부 쓰기가 발생하지 않았습니다.
- 사용자에게 무엇이 변경되었는지, 무엇을 건너뛰었는지, 그 이유가 전달되었습니다.