
Show GN: Memex - 노트 간 의미 관계를 추론해 Claude 컨텍스트로 자동 주입하는 로컬 RAG MCP 서버
AI 코딩 에이전트가 세션을 종료하면 그동안 쌓아온 지식이 모두 사라지는 경험을 해본 적이 있으신가요? Memex는 바로 이 문제를 해결하는 오픈소스 도구입니다. 노트 사이에 의미적 관계를 자동으로 추론하여, 다음 세션에서 Claude가 이전의 결정과 맥락을 기억한 채 작업할 수 있게 해줍니다. 벡터 데이터베이스도, 클라우드 API도 필요 없습니다.
Memex란 무엇인가
Memex는 AI 코딩 에이전트를 위한 영구 메모리 시스템입니다. Niklas Luhmann의 Zettelkasten 방법을 기반으로, 원자성 노트(Atomic Notes)와 양방향 링크(Bidirectional Links)를 핵심 설계로 채택했습니다. 각 노트는 하나의 아이디어만 담으며, "[[링크]]" 문법으로 다른 노트와 명시적으로 연결할 수 있습니다.
특징적인 점은 벡터 데이터베이스를 사용하지 않는다는 것입니다. 일반 텍스트 마크다운 파일로 노트를 저장하고, 검색 가능한 키워드 인덱스를 함께 관리합니다. 이를 통해 Obsidian, vim, grep 등 어떤 도구로든 메모리에 접근할 수 있습니다.
지원 플랫폼은 매우 넓습니다. Claude Code(최적), Cursor, VS Code Copilot, Codex, Windsurf, 그리고 모든 MCP 호환 클라이언트에서 동작합니다. 모든 플랫폼이동일한 ~/.memex/cards/ 디렉터리를 공유하므로, Claude Code에서 작성한 노트가 Cursor에서도 즉시 사용 가능합니다.
의미 관계 추론: 명시적 연결 없이도 관련 노트를 찾아준다
Memex의 가장 흥미로운 기능은 의미적 관계 추론입니다. Obsidian처럼 [[링크]]로 노트를 명시적으로 연결할 수도 있지만, 연결하지 않아도 의미적으로 관련된 노트를 자동으로 찾아줍니다.
구체적인 예를 들어보겠습니다. "JWT 쓰기로 결정했어"라고 노트를 저장해두면, 나중에 인증 관련 질문을 할 때 그 결정과 관련된 트레이드오프 분석 노트, 아키텍처 결정 노트 등을 명시적으로 연결하지 않았더라도 함께 꺼내옵니다. AI가 스스로 노트 간의 연관성을 추론하여 맥락을 완성하는 것입니다.
이 과정에서 로컬 임베딩(Embedding)을 생성하여 SQLite에 인덱싱합니다. 임베딩 모델은 최초 1회만 다운로드하면 이후에는 완전 오프라인으로 동작합니다. 따라서 API 비용이 전혀 들지 않고, 데이터가 외부로 유출될 가능성도 없습니다.
설치 및 사용법
Memex 설치하는 것은 매우 간단합니다. Node.js 18 이상이 환경에 설치되어 있어야 합니다.
# 설치npm install -g @touchskyer/memex# Claude Code에 설치/plugin marketplace add iamtouchskyer/memex/plugin install memex@memex# Cursor의 경우# Cursor 설정에서 MCP 서버를 추가하고 아래 명령 사용memex mcp
설치 후 주요 CLI 명령어는 다음과 같습니다.
memex search [쿼리] # 노트 검색 또는 전체 목록memex read <슬러그> # 특정 노트 읽기memex write <슬러그> # 노트 작성 (stdin)memex links [슬러그] # 링크 그래프 통계memex serve # 시각적 타임라인 UI 열기 (localhost:3939)memex sync # Git을 통한 동기화
memex serve 명령어로 로컬 웹 UI를 열면 모든 노트의 타임라인과 그래프 뷰를 브라우저에서 확인할 수 있습니다. GitHub CLI가 인증되어 있다면 memex sync --init으로 자동으로 개인 저장소를 생성할 수도 있습니다.
Zettelkasten 방법과 AI 메모리
Memex의 설계 철학은 Niklas Luhmann의 Zettelkasten에서 출발합니다. Luhmann은 이 방법을 통해 70권의 책과 90,000장의 손글씨 카드에서 90,000건 이상의 아이디어를 관리했습니다.
핵심 원칙은 세 가지입니다. 첫째, 원자성 노트 — 한 장의 노트에는 하나의 아이디어만 담아야 합니다. 둘째, 내 말로 쓰기 — Feynman 방법처럼 자신의 언어로 설명해야 이해가 깊어집니다. 셋째, 맥락 속 링크 — "이 노트가 [[X]]와 관련이 있는 이유는..."처럼 링크의 이유를 함께 기록합니다.
AI 에이전트에게 이 방법론을 적용하면, 각 세션에서 얻은 인사이트가 원자성 카드로 저장되고, 다음 세션에서 관련 카드가 자동으로 검색되어 컨텍스트에 주입됩니다. 에이전트가 이전 작업의 결과를 기억하고 그 위에 새로운 작업을 구축할 수 있게 되는 것입니다.
Experimental: Agentic Memory
Memex 설정 파일(~/.memex/.memexrc)에서 실험적 기능을 활성화할 수 있습니다.
{"nestedSlugs": true,"searchDirs": ["shared"],"experimental": {"agenticMemory": true}}
experimental.agenticMemory를 활성화하면, 에이전트가 observe → 원자성 카드 초안 작성 → 메타데이터 enrichment → 검색 후보 검색의 구조화된 메모리 워크플로우에 접근할 수 있습니다. 이 기능은 A-MEM inspired 접근 방식으로, 에이전트가 스스로의 학습 과정을 체계화할 수 있게 해줍니다.
다른 AI 메모리 도구와의 비교
Context Mode, CTX, mcp-optimizer 등 AI 세션 메모리 관련 도구가 여러 가지 있습니다. Memex와의 주요 차이점은 다음과 같습니다.
| 도구 | 데이터 저장소 | 의미 검색 | 외부 API 의존성 |
|---|---|---|---|
| Memex | 로컬 마크다운 + SQLite | 가능 (로컬 임베딩) | 없음 (완전 오프라인) |
| Context Mode | 파일 기반 | 미지원 | 일부 API 필요 |
| CTX | pip/plugin 설치 | 미지원 | Claude Code 플러그인 |
Memex의 가장 큰 강점은 데이터 주권입니다. 모든 노트가 로컬 마크다운 파일로 저장되므로, 특정 벤더나 서비스에 종속되지 않습니다. 또한 로컬 임베딩으로 인해 API 비용이 전혀 없고, 외부 데이터 전송도 발생하지 않습니다.
마치며
AI 코딩 에이전트의 세션 간 기억 문제는 실제로 생산성을 크게 저해하는 요소입니다. Memex는 이 문제를 Zettelkasten 방법론과 로컬 RAG를 결합하여 우아하게 해결합니다. 벡터 데이터베이스의 복잡성 없이, 의미적 관계 추론을 통한 스마트 검색을 경험해보고 싶다면 Memex를 시도해볼 만합니다.
특히 Claude Code 사용자에게 Memex는 가장 완벽한 통합을 제공합니다. 슬래시 명령어, 세션 시작 시 자동 검색, Hook 기반 자동 메모리 저장 등(plugin 설치 필요) 다양한 기능을 활용할 수 있습니다.
tags: AI,Memory,RAG,MCP,Claude,Cursor,Zettelkasten,LocalAI,DeveloperTools,Productivity
📚 출처
'AI 뉴스' 카테고리의 다른 글
| oh-my-free-models - 무료 LLM 중 지금 가장 빠른 모델로 코딩 에이전트를 라우팅하는 로컬 프록시 (0) | 2026.05.06 |
|---|---|
| Bun(JS 런타임)이 Zig에서 Rust로 바이브 포팅되고 있음 — 개발자가 알아야 할 핵심 정리 (0) | 2026.05.06 |
| AI로 인한 고용 종말이 (아마도) 일어나지 않을 이유 (3) | 2026.05.06 |
| Codex 앱을 Windows ARM64에서 돌리기 — 리패키징 스크립트 완전 가이드 (0) | 2026.05.06 |
| 나는 Bun이 걱정된다 — Anthropic 인수 이후 개발자 생태계의 불안 (0) | 2026.05.06 |