From b67ad59468360a40fee1d7ea682e6f378a9249ef Mon Sep 17 00:00:00 2001 From: kappa Date: Sat, 14 Mar 2026 14:17:52 +0900 Subject: [PATCH] =?UTF-8?q?=EC=9E=A5=EA=B8=B0=EA=B8=B0=EC=96=B5=202?= =?UTF-8?q?=EA=B3=84=EC=B8=B5=20=EC=8B=9C=EC=8A=A4=ED=85=9C=20=EB=AC=B8?= =?UTF-8?q?=EC=84=9C=ED=99=94=20(Obsidian=20+=20OpenMemory)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - claude-code-setup.md: 2계층 메모리 아키텍처 문서 추가 - Obsidian(구조화 지식) + OpenMemory(시맨틱 메모리) 역할 분리 정의 - 저장/읽기 규칙, 세션 시작 절차 업데이트 --- dev/claude-code-setup.md | 69 +++++++++++++++++++++++++++++----------- 1 file changed, 51 insertions(+), 18 deletions(-) diff --git a/dev/claude-code-setup.md b/dev/claude-code-setup.md index 84fabf9..104054d 100644 --- a/dev/claude-code-setup.md +++ b/dev/claude-code-setup.md @@ -1,7 +1,7 @@ --- title: Claude Code 설정 및 인스트럭션 updated: 2026-03-14 -tags: [claude-code, setup] +tags: [claude-code, setup, memory, openmemory] --- ## 기본 설정 @@ -46,37 +46,69 @@ tags: [claude-code, setup] - 마운트된 엔진: `secret/` (KV), `ssh-client-signer/` (SSH) - 주요 용도: 시크릿 관리, PKI 인증서 발급, SSH 서명 -## 장기기억 (Obsidian Vault) +## 장기기억 (2계층 시스템) -Obsidian Vault가 장기기억 저장소 역할. Gitea 저장소: `gitea.anvil.it.com/kaffa/obsidian` +Obsidian + [[openmemory|OpenMemory]]를 조합한 2계층 장기기억 시스템. -### 세션 시작 시 +### 계층 구조 -1. `~/obsidian`이 있으면 `git -C ~/obsidian pull --rebase`로 최신화 -2. 없으면 [[vault]](`secret/gitea`)에서 토큰을 읽어 clone +``` +┌─────────────────────────────────────────────┐ +│ 장기기억 시스템 │ +├──────────────────┬──────────────────────────┤ +│ Obsidian │ OpenMemory (Mem0) │ +│ ~/obsidian │ MCP @ :8765 │ +├──────────────────┼──────────────────────────┤ +│ 구조화된 지식 정본 │ 대화형 시맨틱 메모리 │ +│ 마크다운 + git │ 벡터 DB (Qdrant) │ +│ 사람 + AI 소비 │ AI 전용 소비 │ +│ 키워드/경로 검색 │ 시맨틱 유사도 검색 │ +│ Gitea 동기화 │ 로컬 전용 │ +└──────────────────┴──────────────────────────┘ +``` -### Vault 구조 +### Obsidian (1계층: 구조화된 지식) +Gitea 저장소: `gitea.anvil.it.com/kaffa/obsidian` + +**Vault 구조**: - `infra/` — 인프라 설정, 네트워크, 서비스 운영 정보 - `products/` — 제품 기획, 요금, 법률/세무 - `services/` — 외부 서비스 연동 ([[gitea]], [[telegram-bot]], [[twilio]], [[aws-ses]]) - `openclaw/` — OpenClaw 에이전트 시스템 - `dev/` — 개발 환경, 도구 설정 -### 읽기 규칙 +**저장 대상**: 인프라 변경, 서비스 설정, 운영 절차, 제품 기획, 트러블슈팅 솔루션 -- 인프라/서비스/제품 관련 질문 → **Vault에서 관련 파일을 먼저 읽을 것** -- Vault에 있는 정보를 추측하지 말고 실제 파일 확인 -- CLAUDE.md의 인프라 토폴로지는 요약본, Vault가 정본 +**작성 규칙**: +- frontmatter: `title`, `updated` (YYYY-MM-DD), `tags` +- 위키링크 `[[파일명]]`, `##` 섹션 헤더 +- git workflow: `pull --rebase` → `add` → `commit` → `push` +- conflict 시 자동 해결 금지 -### 쓰기 규칙 (Obsidian 컨벤션) +### OpenMemory (2계층: 시맨틱 메모리) -- **frontmatter**: `title`, `updated` (YYYY-MM-DD), `tags` (선택) -- **위키링크**: 관련 문서 참조 시 `[[파일명]]` 사용 -- **섹션**: `##` 헤딩으로 주제별 구분 -- 새 정보 학습 시 해당 Vault 파일에 추가/수정, `updated` 갱신 -- 변경 후: `git pull --rebase` → `git add` → `git commit` → `git push` -- conflict 발생 시 자동 해결 금지, 사용자에게 알릴 것 +엔드포인트: `100.115.154.78:8765` (MCP SSE) + +**저장 대상**: 결정사항과 이유, 사용자 선호도, 시스템 quirks, 프로젝트 맥락, 패턴 + +**작성 규칙**: +- 한 메모리 = 하나의 핵심 정보 (검색 정확도 향상) +- 컨텍스트 포함: "X를 했다" → "Y 때문에 X를 했다" +- 날짜 중요 시 절대 날짜 포함 (예: "2026-03-14 기준") +- 저장 전 `search_memory`로 중복 확인 + +### 읽기 우선순위 + +1. **Obsidian** — 인프라/서비스/제품 정보 (구조화된 정본) +2. **OpenMemory** — 결정 맥락, 선호도, 과거 인사이트 (시맨틱 검색) +3. **HashiCorp Vault** — 시크릿, 인증 정보 + +### 세션 시작 시 + +1. `~/obsidian` git pull --rebase로 최신화 +2. 없으면 [[vault]](`secret/gitea`)에서 토큰 읽어 clone +3. 현재 작업 관련 OpenMemory `search_memory` 조회 ### 기억 저장 시점 @@ -84,6 +116,7 @@ Obsidian Vault가 장기기억 저장소 역할. Gitea 저장소: `gitea.anvil.i - 새로운 인프라/서비스 정보를 알게 되었을 때 - 사용자가 "기억해" 요청 시 - 기존 정보 변경 시 (IP, 포트, 설정값 등) +- 아키텍처 결정 시 → Obsidian에 상세 + OpenMemory에 요약 ## 주의사항