TRENDSHIFT 딥다이브 · 2026-03-23 분석

Supermemory 딥다이브
— AI에게 진짜 장기 기억을 이식하는 메모리 엔진

대화가 끝나면 모든 것을 잊는 LLM의 고질적 한계를 개인화된 장기 기억 엔진으로 해결한다. LongMemEval 벤치마크 1위(81.6%), supermemoryai/supermemory · ⭐25.4k · TypeScript/Python · MIT
목차
  1. 프로젝트 한줄 요약
  2. 왜 주목받는가
  3. 기술 스택 전체 지도
  4. 아키텍처 심화 분석
  5. 디렉토리 구조 해부
  6. 학습 포인트 (기술별)
  7. 하드웨어 / 시스템 요구사항
  8. 직접 해볼 수 있는 실습 과제
  9. 관련 기술 심화 학습 로드맵
  10. 핵심 키워드 사전
  11. 참고 링크

1프로젝트 한줄 요약

Supermemory가 정확히 무엇을 하는 물건인가

Supermemory는 AI가 대화 사이에서 모든 것을 잊어버리는 문제를 해결하는 메모리 및 컨텍스트 엔진이다. 대화에서 사실(fact)을 자동 추출하고, 사용자 프로필을 유지하며, 지식 업데이트·모순·만료를 처리하여 AI에게 장기 기억을 부여한다.

LongMemEval 81.6%로 벤치마크 1위, Cloudflare Workers 엣지 위에서 동작하며, Claude MCP·LangChain·OpenAI Agents SDK 등 거의 모든 에이전트 프레임워크와 통합된다. GitHub 스타: 25.4k(2026-06-04 기준).

한 컷 비유

"AI에게 일기장 겸 연락처를 달아주는 것"

보통 AI 대화는 "기억상실증 환자"처럼 매번 처음부터 시작합니다. Supermemory는 AI 옆에 두 개의 서랍을 놓아둡니다. 첫 번째 서랍엔 "이 사람은 Python 전문가, 서울 거주"처럼 거의 안 변하는 사실을, 두 번째 서랍엔 "어제 Supabase 연동 중"처럼 최근 활동을 차곡차곡 쌓아둡니다.

대화가 시작될 때마다 AI가 두 서랍을 훑고 ~50ms 안에 관련 내용만 꺼내 시스템 프롬프트에 끼워 넣습니다. 사용자 입장에서는 AI가 "나를 오래 알아온 것처럼" 느껴지는 이유입니다.

2왜 주목받는가

트렌딩 이유와 경쟁 제품 대비 장점
기존 방식의 한계
RAG는 "도서관 검색"이지, "사람의 기억"이 아니다

RAG(Retrieval-Augmented Generation)는 문서를 청킹해 벡터로 저장하고 쿼리가 오면 가장 비슷한 청크를 돌려줍니다. 모든 사용자에게 동일한 문서 풀을 제공하기 때문에 개인화가 없고, "어제 내가 했던 말"이나 "부산으로 이사했다"는 사실 변화를 추적하지 못합니다. 시간이 흐르면서 모순되는 사실이 쌓여도 누가 더 최신인지 알 수 없습니다.

Supermemory의 해법
개인별 사실을 시간 축으로 관리하는 Memory Engine

사용자별로 격리된 메모리 풀을 만들어 사실을 저장합니다. "서울 → 부산 이사" 같은 모순이 생기면 자동 감지 후 최신 사실로 교체하고 오래된 것은 만료 예약합니다. 단일 profile() 호출로 정적 사실 + 최근 활동을 동시에 반환하며, 여기에 RAG(문서 검색)까지 하이브리드로 합쳐 LLM 프롬프트에 주입합니다.

경쟁 제품 비교

기능SupermemoryMem0Zep
LongMemEval 점수81.6%낮음낮음
하이브리드 검색(RAG+Memory)부분적
시간 인식(Temporal)제한적제한적
모순 자동 해결제한적
커넥터(GDrive·Notion 등)8종
MCP 서버
오픈소스 벤치마크✅ (MemoryBench)

3기술 스택 전체 지도

백엔드 / 프론트엔드 / 인프라 / SDK / AI 통합

백엔드

기술용도
Hono경량 웹 프레임워크 — Cloudflare Workers에 최적화된 Express 대체
Cloudflare Workers서버리스 엣지 런타임 (배포/스케일링)
Cloudflare AI벡터 임베딩 생성
Cloudflare KV키-값 스토리지 (캐시·설정)
Cloudflare Workflows비동기 콘텐츠 인제스트 오케스트레이션
HyperdriveCloudflare의 DB 커넥션 풀링 (PostgreSQL 가속)
Drizzle ORM타입 안전 SQL 쿼리 빌더
PostgreSQL메인 데이터베이스
neverthrowResult 타입 기반 함수형 에러 핸들링
Better Auth인증 / 조직(Organization) 멀티테넌트 관리

프론트엔드 & 도구

기술용도
Next.js메인 웹앱 (apps/web)
Bun 1.3.4패키지 매니저 + 런타임
Turborepo모노레포 빌드 오케스트레이션
Biome 2.2ESLint+Prettier 올인원 대체 (Rust 기반, 초고속)
WranglerCloudflare Workers 배포 CLI
Sentry에러 모니터링 + 소스맵

AI SDK 통합

프레임워크지원 방식
Vercel AI SDK@ai-sdk/anthropic, openai, google, cerebras
LangChain / LangGraphPython 래퍼
OpenAI Agents SDK네이티브 통합
Claude MCPMCP 서버 + Claude Code 플러그인
n8n, Zapier노코드 워크플로우 연동

4아키텍처 심화 분석

시스템 구조도 + 핵심 설계 패턴 5가지
┌─────────────────────────────────────────────────────────────────┐ │ 클라이언트 레이어 │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │ │ │ Web App │ │ Browser │ │ MCP │ │ SDK (TS/Python) │ │ │ │ (Next.js)│ │Extension │ │ Server │ │ + Agent 프레임워크│ │ │ └────┬─────┘ └────┬─────┘ └────┬─────┘ └────────┬─────────┘ │ └───────┼────────────┼────────────┼─────────────────┼─────────────┘ ▼ ▼ ▼ ▼ ┌─────────────────────────────────────────────────────────────────┐ │ API 게이트웨이 (Hono on Cloudflare Workers) │ │ /v3/documents /v3/search /v3/memories /v3/connections │ │ /v3/profile /v3/settings /api/auth /v3/graph │ └──────────────────────────┬──────────────────────────────────────┘ ┌────────────┼─────────────┐ ▼ ▼ ▼ ┌──────────────────┐ ┌──────────┐ ┌────────────────┐ │ IngestContent │ │ Search │ │ Auth / Org │ │ Workflow (CF) │ │ Engine │ │ (Better Auth) │ │ ① 타입 감지 │ │ 하이브리드│ │ API Key 인증 │ │ ② AI 요약 │ │ RAG + │ │ 역할 기반 접근 │ │ ③ 자동 태깅 │ │ Memory │ │ 조직 관리 │ │ ④ 벡터 임베딩 │ │ 검색 │ └────────────────┘ │ ⑤ 청킹 최적화 │ └────┬─────┘ │ ⑥ 관계 매핑 │ │ └──────┬───────────┘ │ ▼ ▼ ┌─────────────────────────────────────────┐ │ 데이터 레이어 │ │ PostgreSQL (Hyperdrive) │ CF KV (캐시) │ │ Cloudflare AI (벡터 임베딩) │ └─────────────────────────────────────────┘ ▲ 실시간 동기화 (웹훅) ┌──────┴──────────────────────────────────┐ │ 커넥터 레이어 │ │ Google Drive │ Gmail │ Notion │ │ OneDrive │ GitHub │ Granola │ S3 │ Web Crawler │ └─────────────────────────────────────────┘

핵심 설계 패턴

① Memory vs RAG 이중 구조 (하이브리드 검색)

단일 쿼리로 Memory 검색(개인화 사실)과 RAG 검색(문서 청크)을 동시에 수행한 뒤 결과를 합쳐 LLM 시스템 프롬프트에 주입합니다. containerTag라는 식별자로 사용자·프로젝트 단위 메모리를 격리합니다.

② 시간 인식(Temporal Awareness)

t=1: "나는 서울에 살아"     → 사실 저장: {location: "서울"}
t=2: "부산으로 이사했어"    → 모순 감지 → 자동 업데이트: {location: "부산"}
t=3: "3개월 후 돌아올 거야" → 시간 인식 → 만료 예약: 3개월 후 재검토

③ neverthrow 패턴 (함수형 에러 처리)

import { ok, err, Result } from 'neverthrow';

// 예외를 던지지 않고 Result<T, E> 타입으로 에러를 표현
function processMemory(input: string): Result<Memory, ProcessError> {
  if (!input) return err(new ProcessError('empty input'));
  return ok(extractFacts(input));
}

// 체이닝으로 안전한 데이터 흐름
processMemory(text)
  .map(memory => enrichWithProfile(memory))
  .mapErr(error => logAndRecover(error));
용어 설명
neverthrow
TypeScript에서 Rust의 Result<T, E> 패턴을 구현하는 라이브러리. try-catch 대신 ok(값)err(에러)를 반환하여 에러 흐름을 타입 시스템이 강제합니다. "예외를 던지지 않는" 함수형 코딩 스타일.

④ User Profile = 정적 사실 + 동적 컨텍스트

단일 profile() 호출로 "Python 전문가"(거의 안 변함)와 "최근 3일 React 학습"(빈번 업데이트)을 함께 반환합니다. 응답 시간 ~50ms, threshold 파라미터로 관련성 점수 필터링.

⑤ IngestContentWorkflow (Cloudflare Workflows 기반)

비동기 6단계 파이프라인: 타입 감지 → AI 요약 → 자동 태깅 → 벡터 임베딩 → 청킹 최적화 → 관계 매핑. 4시간 간격 크론 + 콘텐츠 해시 기반 중복 방지.

5디렉토리 구조 해부

모노레포 구조와 각 패키지의 역할
supermemory/ ├── apps/ │ ├── web/ # 메인 웹앱 (Next.js App Router) │ ├── mcp/ # MCP 서버 (Claude/Cursor/VS Code 연결) │ ├── browser-extension/ # 크롬 확장 — 웹 페이지를 메모리에 저장 │ ├── docs/ # 공식 문서 사이트 │ ├── memory-graph-playground/ # 메모리 관계 그래프 시각화 │ └── raycast-extension/ # Raycast 런처 통합 │ ├── packages/ │ ├── lib/ # 코어 공유 라이브러리 (DB 스키마, 타입) │ ├── ai-sdk/ # Vercel AI SDK 래퍼 │ ├── memory-graph/ # 그래프 기반 메모리 관리 로직 │ ├── hooks/ # React 커스텀 훅 │ ├── ui/ # 공유 UI 컴포넌트 │ ├── validation/ # Zod 스키마 검증 모듈 │ ├── agent-framework-python/ # Python 에이전트 프레임워크 │ └── openai-sdk-python/ # OpenAI SDK Python 래퍼 │ ├── skills/supermemory/ # Claude Code 전용 스킬 ├── turbo.json # Turborepo 파이프라인 (build→lint→check-types) ├── biome.json # Biome 린트/포맷 설정 ├── CLAUDE.md # Claude Code용 프로젝트 컨텍스트 └── bun.lock # Bun 락파일
파일역할
turbo.jsonbuild → lint → check-types 의존 순서 정의. dev는 캐시 비활성화
biome.jsonESLint + Prettier를 대체하는 올인원 포매터/린터 설정
wrangler.jsoncCloudflare Workers 배포: Hyperdrive·AI·KV·Workflows 바인딩
CLAUDE.mdClaude Code에게 프로젝트 구조·컨벤션·API 경로를 알려주는 컨텍스트 파일

6학습 포인트 (기술별)

이 레포에서 무엇을 배울 수 있는가

Cloudflare Workers + Hono

서버리스 엣지 런타임에서 풀스택 앱을 구축하는 방법을 배웁니다. Hono의 미들웨어 체인과 Zod 검증 통합, Hyperdrive로 PostgreSQL 커넥션 풀링 최적화, Cloudflare KV·AI·Workflows 바인딩 활용이 핵심입니다.

실습 아이디어

Hono + CF Workers로 간단한 API 서버 만들기 → Hyperdrive로 DB 연결 → KV로 캐시 레이어 추가

메모리 시스템 설계 (핵심!)

대화에서 사실(fact) 자동 추출 파이프라인, 시간 인식(모순 감지 → 자동 업데이트/만료), containerTag 기반 메모리 격리, Memory vs RAG의 개념적 차이와 하이브리드 결합을 배웁니다.

Drizzle ORM + neverthrow

타입 안전한 SQL 쿼리 작성(TypeScript와의 완벽한 통합), Drizzle Kit으로 마이그레이션 관리, drizzle-zod로 DB 스키마 → Zod 스키마 자동 생성. neverthrow로 Rust 스타일 에러 핸들링을 TypeScript에서 구현하는 법.

Turborepo + Bun 모노레포

Bun 워크스페이스 설정과 패키지 간 의존성 관리, turbo.json의 태스크 파이프라인과 토폴로지 의존(^build), 모노레포에서 TypeScript 공유 타입 패턴을 실전으로 익힙니다.

MCP 서버 구축

Model Context Protocol 서버 구축 방법(Claude·Cursor·VS Code 연동), OAuth 기반 MCP 인증, npx install-mcp 원클릭 설치 패턴을 배웁니다.

7하드웨어 / 시스템 요구사항

개발 환경과 프로덕션 환경

개발 환경 (로컬)

항목최소
Node.js20 이상
Bun1.3.4
메모리4GB+ (권장 8GB)
OSmacOS / Linux / Windows (WSL)

프로덕션 환경

Supermemory는 Cloudflare Workers 위에서 동작하므로 자체 서버가 필요 없습니다. Cloudflare Workers·Hyperdrive·KV·AI + 외부 PostgreSQL만 있으면 됩니다. SDK 사용 시(SaaS 모드)는 npm install supermemory 또는 pip install supermemory로 즉시 사용 가능.

8직접 해볼 수 있는 실습 과제

난이도별 3~5개 실습
과제 1 · 초급

Supermemory SDK로 대화 기억 봇 만들기 ★☆☆☆☆

Python/TypeScript SDK를 사용하여 이전 대화 내용을 기억하는 챗봇을 구현합니다. profile()로 사용자 컨텍스트를 가져오고 LLM 응답 후 add()로 저장하는 루프를 직접 짜봅니다.

목표: 사용자가 "내 이름은 인범이야"라고 하면 다음 대화에서 이름을 기억하는 봇 구현
과제 2 · 중급

MCP 서버로 Claude에 메모리 연결 ★★★☆☆

Supermemory MCP 서버를 Claude Desktop에 연결하여 대화 기억을 지속합니다. OAuth 인증 플로우와 MCP 프로토콜을 실제로 체험합니다.

npx -y install-mcp@latest https://mcp.supermemory.ai/mcp --client claude --oauth=yes
과제 3 · 중급

LangChain + Supermemory 하이브리드 에이전트 ★★★☆☆

LangChain으로 RAG + Memory 하이브리드 검색을 활용하는 AI 에이전트를 구축합니다. profile()search.memories()를 결합해 정확도 향상을 체감합니다.

과제 4 · 고급

MemoryBench로 자체 메모리 시스템 벤치마킹 ★★★★☆

MemoryBench를 사용하여 Supermemory vs Mem0 vs Zep의 LongMemEval 점수를 직접 재현합니다. 벤치마크 방법론을 이해하고 프로바이더 교체 시 성능 변화를 측정합니다.

bun run src/index.ts run -p supermemory -b longmemeval -j gpt-4o -r my-benchmark
bun run src/index.ts compare -r my-benchmark -p supermemory,mem0,zep
과제 5 · 고급

커스텀 커넥터 + 인제스트 워크플로우 ★★★★★

Supermemory에 새로운 데이터 소스 커넥터(예: Slack)를 추가하고 웹훅 기반 실시간 동기화를 구현합니다. apps/web의 커넥터 아키텍처를 분석하고 멀티모달 추출기를 커스터마이징합니다.

9관련 기술 심화 학습 로드맵

5주 커리큘럼

1주차: 기초 — 벡터 검색과 RAG 이해

학습 내용
Day 1벡터 임베딩 개념: 텍스트 → 숫자 벡터 변환 원리
Day 2코사인 유사도로 시맨틱 검색 구현 (NumPy)
Day 3RAG 패턴: 문서 청킹 → 임베딩 → 검색 → LLM 증강
Day 4~5LangChain으로 간단한 RAG 파이프라인 구축

2주차: 메모리 시스템 핵심 개념

학습 내용
Day 1Memory vs RAG 차이 깊이 이해 (Supermemory 블로그/문서)
Day 2Supermemory SDK로 기본 CRUD (add, search, profile)
Day 3containerTag 기반 멀티유저 메모리 격리
Day 4~5시간 인식, 모순 해결 메커니즘 실험

3주차: Cloudflare Workers 생태계

학습 내용
Day 1Hono로 Hello World API → CF Workers 배포
Day 2KV 스토리지: 세션·설정·캐시 관리
Day 3Hyperdrive: PostgreSQL 연결 가속 실습
Day 4~5Workflows: 비동기 작업 오케스트레이션

4주차: 모노레포 + 도구 체인

학습 내용
Day 1~2Turborepo + Bun 모노레포 세팅 from scratch
Day 3Biome으로 린트/포맷 통합 (ESLint/Prettier 마이그레이션)
Day 4Drizzle ORM: 타입 안전 DB 레이어 구축
Day 5neverthrow: 함수형 에러 핸들링 적용

5주차: 통합과 프로덕션

학습 내용
Day 1~2MCP 서버 직접 구축하여 Claude/Cursor 연동
Day 3Better Auth로 인증 + 조직 관리 시스템 구현
Day 4Sentry 연동 + 소스맵 업로드
Day 5MemoryBench로 벤치마킹 실행 및 분석

10핵심 키워드 사전

이 레포를 이해하는 데 필수적인 용어 19개
키워드설명
Memory Engine대화에서 사실을 자동 추출·시간 축 관리하는 시스템. RAG와 달리 개인화 컨텍스트 유지
RAGRetrieval-Augmented Generation. 문서 검색으로 LLM 응답을 증강하는 패턴
Hybrid SearchRAG(문서)와 Memory(개인 기억)를 단일 쿼리로 동시 수행하는 검색 모드
containerTag사용자·프로젝트 단위 메모리 격리 식별자. 같은 태그 내 Memory+RAG+Profile이 컨텍스트 공유
User Profile정적 사실(Static Facts)과 동적 컨텍스트(Dynamic Context)의 조합
Temporal Awareness시간에 따른 사실 변화를 인식하는 능력. 모순 자동 감지·업데이트·만료 예약
Fact Extraction자연어 대화에서 구조화된 사실(key-value)을 자동 추출하는 과정
MCPModel Context Protocol. LLM이 외부 도구에 접근하는 표준 프로토콜
HonoCloudflare Workers에 최적화된 초경량 웹 프레임워크
HyperdriveCloudflare의 DB 커넥션 풀링. Workers → PostgreSQL 연결 시 레이턴시 대폭 감소
Drizzle ORMTypeScript 네이티브 SQL 쿼리 빌더. Prisma 대비 가볍고 SQL에 가까운 철학
neverthrowTypeScript용 Result 타입 라이브러리. Rust의 Result<T,E> 패턴 구현
Better Auth조직(Organization) 멀티테넌트를 지원하는 인증 라이브러리
BiomeESLint+Prettier를 하나로 대체하는 올인원 린터/포매터. Rust로 작성되어 초고속
TurborepoVercel의 모노레포 빌드 시스템. 태스크 의존 그래프 + 원격 캐싱
MemoryBenchSupermemory가 만든 오픈소스 AI 메모리 벤치마킹 프레임워크
IngestContentWorkflow콘텐츠 인제스트 6단계 파이프라인 (타입 감지→요약→태깅→임베딩→청킹→관계 매핑)
Connector외부 서비스(GDrive·Notion 등)와 실시간 웹훅으로 동기화하는 데이터 소스 어댑터
LongMemEval장기 기억 능력을 측정하는 대화 벤치마크. Supermemory 81.6%로 1위

11참고 링크

공식 문서 및 학습 자료