Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
YourMemory — 에빙하우스 망각 곡선 감쇠를 적용한 에이전틱 AI 기억. LoCoMo에서 Mem0보다 16pp 더 나은 회상 성능. | Kitploit
도구/GitHubGitHub/sachitrafa/yourmemory
Authentication & AuthorizationForensicsPrivacyThreat IntelligenceIdentity & Access Management (IAM)Machine LearningIncident ResponseAI Security
GitHubsachitrafa/yourmemory

YourMemory

에빙하우스 망각 곡선 감쇠를 적용한 에이전틱 AI 기억. LoCoMo에서 Mem0보다 16pp 더 나은 회상 성능.

저장소 보기
262211개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트
YourMemory

YourMemory

당신의 AI는 금붕어의 기억력을 가지고 있습니다. 더 이상은 아닙니다.

지속적이고 스스로 개선되는 AI 에이전트용 메모리 — 인간이 기억하는 방식의 과학을 기반으로 구축되었습니다.

PyPI PyPI Downloads Python License: CC BY-NC 4.0 GitHub Stars

LoCoMo Recall@5 LongMemEval Recall@5 HotpotQA BOTH@5 MCP Native


▶ 라이브 인터랙티브 데모 체험하기 · 웹사이트 · 벤치마크


문제

매일 아침 당신의 AI 에이전트는 당신을 낯선 사람처럼 대합니다. 같은 맥락을 다시 설명해야 하고, 같은 선호도를 잊어버립니다. 모든 세션이 처음부터 다시 시작됩니다.

대부분의 "메모리" 도구는 벡터 데이터베이스를 에이전트에 연결하고 완료했다고 말합니다. 하지만 그것은 단지 저장소일 뿐입니다. 거의 중복되는 내용을 쌓아두기만 하다가 검색이 노이즈에 잠기게 됩니다. 더 큰 그릇을 가진 금붕어일 뿐입니다.

YourMemory는 다릅니다: 데이터베이스가 아니라 뇌처럼 작동하는 메모리입니다.

root@kitploit:~
flowchart LR
    A["🧠 AI에게 무언가를<br/>말합니다"] --> B["지속 가능한<br/>사실 추출"]
    B --> C["중복 제거 + 임베딩<br/>+ 그래프 연결"]
    C --> D[("메모리<br/>저장소")]
    D -->|"관련 사실이 쌓이면"| E["✨ 통합<br/>N → 1 요약"]
    D -->|"오래되고 사용되지 않음"| F["📉 감쇠<br/>+ 가지치기"]
    D -->|"새 세션"| G["♻️ 회상<br/>하이브리드 + 그래프"]
    E --> D
    G --> H["🤖 에이전트가<br/>중단된 지점부터<br/>계속합니다"]
    style D fill:#0a2540,stroke:#19cdff,color:#fff
    style E fill:#0c2b3a,stroke:#5eead4,color:#fff
    style H fill:#0c2b3a,stroke:#19cdff,color:#fff

✨ 차별화 포인트

하나의 명령으로 설치. 기본값은 DuckDB (설정 불필요), 팀용으로 Postgres + pgvector.


목차

  • 🏆 벤치마크
  • 🚀 빠른 시작
  • 🧠 메모리 작동 방식
    • 통합
    • 감쇠
    • 하이브리드 검색
  • 🔒 신뢰 및 감사 추적
  • 👥 팀 메모리 풀
  • 🛡️ 데이터 권리 및 규정 준수
  • 🎛️ 대시보드
  • 🔧 MCP 도구
  • ⚡ LLM 호출 없이 질문하기
  • 🔀 API 프록시 — 보장된 메모리
  • 🏗️ 아키텍처 및 스택
  • 🩺 문제 해결
  • 🤝 기여하기

🏆 벤치마크

세 가지 외부 데이터셋. 모든 수치는 독립적으로 재현 가능 — 벤치마크 코드는 저장소에 있습니다. 전체 방법론은 BENCHMARKS.md에 있습니다.

LoCoMo-10 — 다중 세션 대화 메모리

root@kitploit:~
xychart-beta
    title "Recall@5 · LoCoMo-10 (높을수록 좋음)"
    x-axis ["Mem0", "Zep Cloud", "Supermemory", "YourMemory"]
    y-axis "Recall@5 백분율" 0 --> 70
    bar [18, 28, 31, 59]

Zep Cloud보다 2배 높은 재현율 (전체 10개 샘플 기준). *Supermemory와 Mem0는 벤치마크 도중 무료 티어 할당량이 소진되었습니다; 점수는 전체 1,534쌍에 대해 계산되었습니다.

LongMemEval-S — 500개 질문, 각각 약 53개의 방해 세션

장기 메모리용 가장 까다로운 표준 벤치마크. 각 질문은 약 53개의 세션에 묻혀 있습니다.

지표점수
Recall@5 (상위 5개 내 gold 세션)89.4%
Recall-all@5 (상위 5개 내 모든 gold 세션)84.8%
nDCG@5 (순위 품질)87.4%

HotpotQA — 200개의 다중 홉 질문

시스템BOTH_FOUND@5
YourMemory (벡터 + BM25 + 엔터티 그래프)71.5%
YourMemory (엔터티 에지 없음)59.5%

엔터티 그래프 에지는 +12% 포인트를 추가합니다 — 사실 2가 질의와 임베딩 유사도가 낮더라도 사실 1에서 사실 2로 이동합니다.

관련 글: AI 에이전트를 위해 에빙하우스 망각 곡선을 사용한 메모리 감쇠를 구축했습니다


🚀 빠른 시작

Python 3.11–3.14. Docker 불필요, 데이터베이스 설정 불필요. 모든 메모리는 로컬 ~/.yourmemory/에 저장됩니다.

root@kitploit:~
pip install yourmemory
yourmemory-register <your-token>
yourmemory-setup

토큰 받기: yourmemoryai.xyz 방문 → 이메일 입력 → 6자리 코드로 확인 → 토큰 복사.

yourmemory-setup은 Claude Code, Claude Desktop, Cursor, Windsurf, Cline을 자동으로 감지하고 연결한 후 사용할 백엔드를 묻습니다:

  • DuckDB — 설정 불필요, 단일 로컬 파일 (기본값)
  • Postgres — 공유/프로덕션용; DATABASE_URL 제공 필요 (pgvector 확장 필요)

선택 사항 — 더 똑똑한 로컬 추출: YourMemory는 내장 휴리스틱으로 즉시 작동합니다. 더 높은 품질의 완전 로컬 사실 추출을 위해 Ollama를 설치하면 yourmemory-setup이 모델(qwen2.5:7b, 약 4.7 GB)을 자동으로 다운로드합니다. 클라우드를 선호하시나요? YOURMEMORY_EXTRACT_BACKEND=anthropic을 설정하세요.

또는 Python 없이 바이너리로 설치

pip를 사용하고 싶지 않으신가요? 최신 릴리스에서 플랫폼에 맞는 독립 실행형 바이너리를 받으세요:

플랫폼에셋
macOS (Apple Silicon)yourmemory-macos-arm64.tar.gz
macOS (Intel)yourmemory-macos-x86_64.tar.gz
root@kitploit:~
# macOS / Linux — 다운로드, 압축 해제, 실행
tar -xzf yourmemory-macos-arm64.tar.gz
./yourmemory-macos-arm64 register <your-token>
./yourmemory-macos-arm64 setup
./yourmemory-macos-arm64            # 서버 시작

하나의 실행 파일로 모든 명령어 처리: register, setup, ask "<question>", path, (인수 없이) 서버 시작.

완전히 자체 포함 & 오프라인 — 바이너리에는 Python, 모든 종속성, 그리고 두 ML 모델(임베딩 모델 + spaCy)이 포함되어 있습니다. 첫 실행 시 다운로드되는 것은 없습니다. 단점은 크기(약 2 GB)입니다. 단일 명령어(./build-binary.sh)로 직접 구축할 수 있으며, 다중 플랫폼 릴리스 바이너리는 빌드 워크플로에 의해 자동 생성됩니다.


🧠 메모리 작동 방식

YourMemory는 메모리를 살아있는 시스템으로 취급합니다 — 뇌가 하는 것처럼 성장하고, 통합하고, 망각하고, 연결합니다.

통합 — N → 1

대부분의 메모리 도구는 계속 성장만 합니다. YourMemory는 관련 사실들의 클러스터를 감시하고, 충분히 모이면 단일 깔끔한 요약으로 압축합니다 — 원본은 보관(절대 삭제하지 않음)하므로 아무것도 손실되지 않습니다.

root@kitploit:~
flowchart LR
    subgraph before [관련 사실들이 쌓임]
        A1["Railway uses Nixpacks"]
        A2["Railway on Pro plan"]
        A3["Railway env vars hold<br/>the Postgres URL"]
        A4["Deploys on Railway<br/>with Postgres"]
    end
    before --> C{"클러스터 +<br/>LLM 요약"}
    C --> S["✨ 요약<br/>Deploys on Railway (Pro,<br/>Nixpacks) with Postgres<br/>via env vars"]
    C -.->|"보관됨, 복구 가능"| ARC[("아카이브")]
    style S fill:#0a2540,stroke:#5eead4,color:#fff
    style C fill:#0c2b3a,stroke:#19cdff,color:#fff

실제 프로덕션 저장소 예시: 444개 메모리 → 16개 요약 — 동일한 지식, 훨씬 적은 노이즈. 통합은 이벤트 기반으로 (관련 메모리가 쌓일 때 트리거됨) 실행되며, 맹목적인 야간 작업이 아닙니다.

감쇠 — 망각 곡선

메모리 강도는 지수적으로 감소합니다. 중요도와 회상 빈도가 감쇠를 늦춥니다:

root@kitploit:~
effective_λ  = base_λ × (1 - importance × 0.8)
strength     = clamp(importance × e^(-effective_λ × active_days) × (1 + recall_count × 0.2), 0, 1)

active_days는 활동한 날만 계산합니다 — 휴가로 인한 기억 손실은 없습니다. 강도가 0.05 미만인 메모리는 자동으로 가지치기됩니다. 각 카테고리는 고유한 속도로 노화됩니다:

체인 인식 가지치기: 감쇠된 메모리는 그래프 이웃 중 강한 것이 있으면 유지됩니다 — 드물게 직접 조회되더라도 부하가 걸린 컨텍스트는 생존합니다.

하이브리드 검색 — Vector + BM25 + Graph

회상은 두 라운드로 진행되어, 당신이 요청한 것 그리고 요청하는 것을 잊은 것 모두를 표면화합니다:

root@kitploit:~
flowchart LR
    Q["질의"] --> R1["Vector + BM25<br/>하이브리드 검색"]
    R1 --> R2["그래프 확장<br/>(당신이 묻는 것을 잊은 것)"]
    R2 --> S["유사도 × 강도<br/>순위화"]
    S --> OUT["🎯 순위화된 메모리"]
    style OUT fill:#0a2540,stroke:#19cdff,color:#fff

주제 인식 중복 제거는 저장 전에 실행됩니다 — 각 문장의 주제를 임베딩하여 "Sachit uses DuckDB"와 "YourMemory uses DuckDB"가 분리되고(다른 엔터티), "YourMemory uses DuckDB"와 "YourMemory stores data in DuckDB"는 병합됩니다(동일 엔터티). 하드코딩된 단어 목록이 없으며, 모든 언어에 일반화됩니다.


🔒 신뢰 및 감사 추적

기업은 불투명한 블랙박스가 데이터를 저장하도록 허용하지 않습니다. 따라서 모든 작업 — 읽기, 쓰기, 업데이트, 삭제, 통합 — 은 해시 체인, 변조 방지 감사 로그에 추가됩니다.

root@kitploit:~
flowchart LR
    E0["GENESIS"] --> E1
    subgraph E1 [이벤트 1]
        H1["row_hash =<br/>sha256(prev + data)"]
    end
    E1 --> E2
    subgraph E2 [이벤트 2]
        H2["row_hash =<br/>sha256(#1.hash + data)"]
    end
    E2 --> E3
    subgraph E3 [이벤트 3]
        H3["row_hash =<br/>sha256(#2.hash + data)"]
    end
    E3 --> V{"GET /audit/verify"}
    V -->|체인 손상 없음| OK["✅ 확인됨"]
    V -->|행 변경됨| BAD["❌ 해당 행에서<br/>체인 끊어짐"]
    style OK fill:#0a2540,stroke:#5eead4,color:#fff
    style BAD fill:#3a0c14,stroke:#fb7185,color:#fff

각 행은 타임스탬프, 액터 사용자 + 에이전트, 액션, 작업, 대상 메모리, 소스(http vs mcp), 이전 행의 해시를 기록합니다. 과거 기록을 변경하면 verify_chain()이 체인이 정확히 어디서 끊어졌는지 찾아냅니다.

root@kitploit:~
GET  /audit            # 추적 탐색 (사용자 / 액션 / 작업으로 필터)
GET  /audit/verify     # 체인이 변조되지 않았는지 암호학적으로 확인
POST /audit/prune      # 보존 기반 정리 (최소 90일, 절대 낮추지 않음)

감사 로깅은 fail-open 방식입니다 — 메모리 작업을 차단하지 않으며, 대시보드 자체 렌더 루프의 읽기/목록 이벤트는 제외되어 추적이 신호로 유지됩니다.


👥 팀 메모리 풀

전체 팀의 에이전트에게 하나의 공유 두뇌를 제공하되, 개인 컨텍스트가 유출되지 않도록 합니다. 메모리는 공유(풀에 표시) 또는 비공개(소유자만 볼 수 있음)입니다.

root@kitploit:~
flowchart TB
    P(("🧠 팀 풀<br/>공유 메모리"))
    A["Alice의 에이전트"] <-->|공유| P
    B["Bob의 에이전트"] <-->|공유| P
    C["Carol의 에이전트"] <-->|공유| P
    A -. 비공개 .-> AP["🔒 Alice 전용"]
    B -. 비공개 .-> BP["🔒 Bob 전용"]
    style P fill:#0a2540,stroke:#19cdff,color:#fff
    style AP fill:#0c1424,stroke:#5a6b80,color:#8294a8
    style BP fill:#0c1424,stroke:#5a6b80,color:#8294a8

역할 기반 접근은 에이전트별로 적용됩니다 — 한 엔지니어의 에이전트가 배운 것을 전체 팀이 즉시 활용할 수 있으며, 민감한 컨텍스트는 소유자에게만 범위가 지정됩니다.

root@kitploit:~
POST   /pools                          # 풀 생성
POST   /pools/{id}/members             # 멤버 추가 (역할 포함)
POST   /pools/{id}/memories            # 공유 메모리 기여
POST   /pools/{id}/retrieve            # 풀 전체에서 회상

🛡️ 데이터 권리 및 규정 준수

실제 데이터를 저장하는 메모리는 신뢰받기 위한 제어 기능이 필요하기 때문입니다:

해시 체인 감사 추적 및 90일 최소 보존 기간과 결합되어, 이는 SECURITY.md(SOC 2 준수)에 문서화된 제어 권한에 직접 매핑됩니다.


🎛️ 대시보드

두 개의 내장 브라우저 UI — 추가 설정 불필요, 서버와 함께 자동 시작됩니다.

메모리 대시보드 — http://localhost:3033/ui

메모리 · 감사 · 풀 탭이 포함된 전체 읽기/쓰기 보기: 강함 / 약해짐 / 거의 가지치기 직전 상태 표시줄, 에이전트별 탭, 실시간 강도 막대가 있는 메모리 카드, 카테고리 필터, 감사 추적 및 풀 관리.

그래프 시각화 — http://localhost:3033/graph

메모리가 어떻게 연결되어 있는지 보여주는 대화형 힘 기반 지도 — 루트 메모리는 밝은 노드, 이웃은 카테고리별로 색상 코딩, 가장자리 두께는 연결 강도. 끌기, 확대/축소, 노드 클릭 시 전체 내용 표시.

root@kitploit:~
http://localhost:3033/graph?memoryId=42&userId=alex&depth=2

🔧 MCP 도구

세 가지 도구, AI가 자동으로 호출합니다.

도구AI가 호출하는 시점기능
root@kitploit:~
# 공간 컨텍스트와 함께 저장
store_memory(
    "Alex는 Python에서 탭보다 공백을 선호합니다",
    importance=0.9, category="fact",
    context_paths=["/projects/backend"],
)

# 다음 세션 — 해당 디렉토리에서 작업할 때 공간 부스트 작동
recall_memory("Python 서식", current_path="/projects/backend")
# → {"content": "Alex는 Python에서 탭보다 공백을 선호합니다", "strength": 0.87}

⚡ LLM 호출 없이 질문하기

LLM API 호출 없이 질문에 답변할 수 있는 유일한 메모리 시스템:

root@kitploit:~
yourmemory ask "이 프로젝트는 어떤 데이터베이스를 사용하나요"
# → YourMemory는 로컬에서 DuckDB를, 프로덕션에서 Postgres를 사용합니다.

yourmemory ask "kubernetes 배포를 어떻게 수정하나요"
# → LLM 없이 답변하기에 충분한 메모리 컨텍스트가 없습니다.

메모리가 충분히 강력하면 즉시 답변합니다 — 토큰 0개, 클라우드 비용 0, 지연 시간 0. 충분하지 않으면 할루시네이션 대신 정중히 거절합니다. 질의가 머신을 떠나지 않습니다.


🔀 API 프록시 — 보장된 메모리

MCP 도구는 AI의 재량에 따라 호출됩니다. API 프록시는 이러한 불확실성을 제거합니다 — 모든 LLM 호출을 가로채고 관련 메모리를 자동으로 주입하며, 모델 구성 없이 store_memory / update_memory를 처리합니다.

서버를 시작(yourmemory)한 후, 클라이언트를 localhost:3033으로 지정하십시오:

root@kitploit:~
from anthropic import Anthropic

client = Anthropic(
    api_key="sk-ant-...",
    base_url="http://localhost:3033/proxy/anthropic",
    default_headers={"X-YourMemory-User": "alex"},  # 사용자별 메모리
)

# 메모리가 자동으로 주입됩니다 — 다른 변경 사항 없음
response = client.messages.create(
    model="claude-opus-4-8",
    max_tokens=1024,
    messages=[{"role": "user", "content": "내가 사용하는 데이터베이스는 무엇인가요?"}],
)

OpenAI는 base_url="http://localhost:3033/proxy/openai"로 동일하게 작동합니다.


🏗️ 아키텍처 및 스택

root@kitploit:~
flowchart LR
    C["AI 클라이언트<br/>Claude · Cursor · 모든 MCP"] <--> Y["🧠 YourMemory"]
    Y --> M[("메모리<br/>저장소")]
    Y --> A[("감사<br/>원장")]
    style Y fill:#0a2540,stroke:#19cdff,color:#fff
    style M fill:#0c1a2c,stroke:#5eead4,color:#fff
    style A fill:#0c1a2c,stroke:#5eead4,color:#fff

🩺 문제 해결

쓰기 작업이 중단/시간 초과됨 (DuckDB 단일 작성자 잠금). MCP 서버와 HTTP 서버가 동시에 실행되면 DuckDB 쓰기 잠금을 두고 경쟁합니다. 해결 방법:

root@kitploit:~
pkill -f yourmemory 2>/dev/null || true
rm -f ~/.yourmemory/memories.duckdb.wal ~/.yourmemory/memories.duckdb.lock 2>/dev/null || true
# 클라이언트 재시작

Claude Desktop (MCP)과 Claude Code (훅)을 동시에 실행 중이신가요? 대신 SQLite를 사용하세요 — 동시 읽기/쓰기를 깔끔하게 처리합니다: DATABASE_URL=sqlite:///~/.yourmemory/memories.db


🤝 기여하기

PR 환영합니다 — CONTRIBUTORS.md를 참조하세요.

📚 데이터셋 참조

  • LoCoMo — Maharana et al. (2024)
  • LongMemEval — Wu et al. (2024)
  • HotpotQA — Yang et al. (2018)

📄 라이선스

Copyright 2026 Sachit Misra — CC-BY-NC-4.0에 따라 라이선스가 부여됩니다.

무료 사용: 개인 사용, 교육, 학술 연구, 오픈소스 프로젝트. 상업적 사용: 별도의 서면 계약 필요 → [email protected]


당신의 AI에게 기억할 가치가 있는 메모리를 주세요.
pip install yourmemory
도구 다운로드
기능설명
🧠통합충분한 관련 사실이 모이면 하나의 깔끔한 요약으로 압축되고 원본은 보관됩니다. 시간이 지날수록 메모리가 더 선명해지고, 부풀어 오르지 않습니다.
📉생물학적 감쇠모든 메모리는 에빙하우스 망각 곡선에 따라 노화됩니다. 오래되고 사용되지 않는 사실은 희미해지고, 중요하고 자주 회상되는 것은 유지됩니다.
🔗엔터티 그래프메모리는 공유된 사람, 장소, 개념으로 연결되어 — 회상 시 당신이 묻는 것을 잊은 것까지 표면화합니다.
♻️컨텍스트 재설정에도 생존컨텍스트 창이 압축될 때, YourMemory는 작업 컨텍스트를 다시 전달합니다 — 어디까지 왔는지 알기 위해 파일을 다시 읽을 필요가 없습니다.
🔒변조 방지 감사 추적모든 읽기/쓰기/삭제는 해시 체인 원장에 기록됩니다. 하나의 기록을 변경하면 체인이 끊어집니다.
👥팀 메모리 풀역할 기반 공유 메모리로 전체 팀의 에이전트가 동일한 조직 지식을 활용하며, 개인 메모리는 비공개로 유지됩니다.
🛡️데이터 권리 내장단일 명령으로 내보내기 (접근권) 및 잊힐 권리 (삭제)를 지원하며, SOC 2 준수 제어 기능을 제공합니다.
🔌MCP 네이티브 및 로컬 우선Claude, Cursor, Cline, Windsurf 또는 모든 MCP 클라이언트와 함께 작동합니다. 전적으로 사용자 머신에서 실행 — API 키가 필요 없으며, 데이터가 시스템을 떠나지 않습니다.
Linux (x86-64)yourmemory-linux-x86_64.tar.gz
Windows (x86-64)yourmemory-windows-x86_64.exe.zip
카테고리반감기적합한 용도
strategy~38일효과적이었던 패턴, 아키텍처 결정
fact~24일선호도, 신원, 안정적인 지식
assumption~19일추론된 컨텍스트, 불확실한 신념
failure~11일오류, 잘못된 접근 방식, 환경 특정 문제
권리엔드포인트설명
접근 (DSAR 내보내기)GET /users/{id}/export사용자에 대해 저장된 모든 항목의 전체 내보내기
삭제 (잊힐 권리)DELETE /users/{id}/memories사용자 메모리를 한 번에 삭제
이식성POST /users/{id}/import이전 내보내기 재가져오기
복구 가능성GET /users/{id}/archive통합된 원본 검색
recall_memory(query, current_path?)모든 작업 시작 시유사도 × 감쇠 강도로 순위가 매겨진 메모리 표면화; 경로 일치 메모리에 공간적 부스트 제공
store_memory(content, importance, category?, context_paths?)새로운 것을 학습한 후임베딩, 중복 제거, 감쇠와 함께 저장; 선택적 파일/디렉토리 경로 태그
update_memory(id, new_content, importance)저장된 사실이 오래된 경우다시 임베딩 및 교체; 감사 추적에 변경 기록
구성 요소역할
DuckDB기본 벡터 저장소 — 설정 불필요, 네이티브 코사인 유사도
PostgreSQL + pgvector선택 사항 — 팀 또는 대규모 데이터셋용
NetworkX기본 그래프 백엔드 (~/.yourmemory/graph.pkl)
Neo4j선택 사항 그래프 백엔드
sentence-transformers로컬 임베딩 (multi-qa-mpnet-base-dot-v1, 768 차원)
spaCy중복 제거 및 엔터티 추출용 로컬 NLP
APScheduler자동 감쇠 + 가지치기