설치
요구 사항
섹션 제목: “요구 사항”- Python 3.12+
- pip, uv, 또는 pipx
- 의미 기반 검색에 사용할 임베딩 제공자 —
mm init에서 선택합니다. 처음에는 고르지 않아도 되며, 이 경우 키워드 검색만 사용합니다. 자세한 내용은 임베딩 제공자를 참고하세요.
어떤 설치 방식을 고를까?
섹션 제목: “어떤 설치 방식을 고를까?”| 상황 | 권장 방식 | 이유 |
|---|---|---|
| 처음 설치 | uv tool install 'memtomem[all]' | 격리된 영구 CLI와 사이트에서 안내하는 전체 기능 설치 |
| 이미 pipx로 CLI를 관리 | pipx install 'memtomem[all]' | 기존 도구 관리 방식 유지 |
| 프로젝트 의존성 또는 별도 가상 환경 | pip install 'memtomem[all]' | 해당 환경에서 패키지 버전 관리 |
설치 전에 python --version과 uv --version을 확인하세요. Windows에서 python을 찾지 못하면 py --version을 사용합니다. 모델 다운로드 없이 가장 짧게 확인하려면 먼저 빠른 시작에서 Minimal 프리셋을 사용하세요.
LTM 서버 (memtomem)
섹션 제목: “LTM 서버 (memtomem)”uv tool install 'memtomem[all]'pipx install 'memtomem[all]'pip install 'memtomem[all]'[all]은 이 문서에서 권장하는 설치 방식입니다. 로컬 임베딩(ONNX), 한국어 토크나이저, Ollama / OpenAI 연동, 코드 분할기, 웹 UI, Langfuse 추적, LangGraph Store 어댑터를 포함합니다. 설치 용량을 줄이려면 선택 기능(extras)을 빼고 BM25 전용으로 설치할 수 있습니다.
uv tool install memtomem # extras 미포함 — 벡터 검색·Web UI·한국어 토크나이저는 별도 설치 필요이후 필요한 기능만 골라 추가하려면 uv tool install --reinstall 'memtomem[onnx,web]' 형식으로 재설치합니다.
설치 후 바이너리를 확인하고, 버전이 오래되어 보이면 패키지 메타데이터를 새로고침하면서 업그레이드하세요:
mm --versionuv tool install 'memtomem[all]' --refresh선택적 확장
섹션 제목: “선택적 확장”다음 선택 기능은 [all]에 모두 포함됩니다. 필요한 기능만 따로 설치해 용량을 줄일 수도 있습니다.
| Extra | 설명 | 명령 |
|---|---|---|
onnx | fastembed 로컬 임베딩 (권장 기본값) | pip install memtomem[onnx] |
ollama | Ollama 제공자 클라이언트 | pip install memtomem[ollama] |
openai | OpenAI 제공자 클라이언트 | pip install memtomem[openai] |
korean | kiwipiepy 한국어 형태소 분석 | pip install memtomem[korean] |
code | tree-sitter AST 청킹 (Python / JS / TS) | pip install memtomem[code] |
web | FastAPI + uvicorn 기반 Web UI | pip install memtomem[web] |
langfuse | Langfuse 관측성 트레이싱 | pip install memtomem[langfuse] |
langgraph | MemtomemStore 및 MemtomemBaseStore 어댑터 | pip install memtomem[langgraph] |
all | 전체 | pip install memtomem[all] |
mm CLI
섹션 제목: “mm CLI”설치 후 가장 자주 쓰는 명령은 다음과 같습니다.
| 명령 | 용도 |
|---|---|
mm init | 대화형 설정 마법사 |
mm status | DB·설정·임베딩 상태 확인 |
mm search <query> | 지식 베이스 검색 |
mm add <content> | 기억 항목 추가 |
mm web | Web UI 대시보드 (http://localhost:8080) |
mm --version · mm version | 설치된 버전 출력 |
전체 명령(ingest, session, context, wiki, watchdog, schedule, tags, upgrade, uninstall 등)은 CLI 레퍼런스를 참고하세요.
MCP 서버 실행 파일은 memtomem-server입니다. 사용자가 직접 실행할 필요는 없습니다. 클라이언트에 등록하면 필요할 때 자동으로 실행합니다. 현재 지원 클라이언트의 플러그인, 등록 범위, 설정 파일, 재시작, 검증 절차는 AI 클라이언트 연결을 참고하세요.
프리셋 선택
섹션 제목: “프리셋 선택”| 마법사 표시 이름 | 제공자 경로 | 다운로드·네트워크 경계 | 권장 대상 |
|---|---|---|---|
| Minimal | BM25 키워드 검색만 사용 | 모델 다운로드 없음 | 첫 점검과 정확한 식별자 검색 |
| English (Recommended) | 로컬 ONNX 임베딩 + 영어 리랭커 | 로컬 모델 최초 1회 다운로드 | 영어 프로젝트 대부분 |
| Korean-optimized | 다국어 임베딩 + 리랭커 + 한국어 토크나이저 | 로컬 모델 최초 1회 다운로드 | 한국어·다국어 노트 |
CLI 토큰은 각각 --preset minimal, --preset english, --preset korean입니다. 원격 Ollama 또는 OpenAI 호환 제공자는 이후에 명시적으로 선택하며, 설정한 서비스로 요청 데이터가 전송될 수 있습니다.
파일 위치
섹션 제목: “파일 위치”memtomem은 로컬 DB와 설정을 홈 디렉터리 아래에 보관합니다. 기본 ONNX 임베딩은 내 컴퓨터에서 처리합니다. 원격 임베딩·LLM·리랭커·추적 서비스를 선택하면 요청 데이터가 설정한 주소로 전송될 수 있습니다.
| 경로 | 내용 |
|---|---|
~/.memtomem/memtomem.db | SQLite 저장소(청크 + 벡터) |
~/.memtomem/config.json | mm init이 작성하는 LTM 설정 |
~/.memtomem/logs/web.log | Web UI 로그(mm web -b) |
설정 디렉터리는 MEMTOMEM_* 환경 변수로 재정의할 수 있습니다(설정 참고).
STM 프록시 (memtomem-stm)
섹션 제목: “STM 프록시 (memtomem-stm)”STM은 선택 사항입니다. 관련 기억을 자동으로 찾아 붙여 주는 서피싱이나 도구 응답 압축이 필요할 때, LTM 빠른 시작 흐름이 동작한 뒤 설치하세요.
uv tool install memtomem-stmpipx install memtomem-stmpip install memtomem-stmuvx memtomem-stm --help임시 실행 전용 — 영구 설치와 등록은 uv tool install 또는 다른 탭 방식을 사용하세요.
선택적 확장
섹션 제목: “선택적 확장”| Extra | 설명 | 명령 |
|---|---|---|
langfuse | Langfuse 관측성 트레이싱 | pip install memtomem-stm[langfuse] |
langchain | LangChain 에이전트 통합 | pip install memtomem-stm[langchain] |
mms CLI
섹션 제목: “mms CLI”설치 후 사용 가능한 주요 명령:
| 명령 | 용도 |
|---|---|
mms init --demo --client auto | 네트워크 없는 데모 실행과 감지된 클라이언트 등록 |
mms doctor | 설정·클라이언트 등록·연결 서버·선택형 LTM 확인 |
mms register --client claude|codex|auto | 지원 클라이언트에 STM 등록 또는 갱신 |
mms add <name> --command <cmd> | 연결할 MCP 서버 등록 |
mms add --from-clients | 기존 MCP 클라이언트 설정에서 일괄 가져오기 |
mms eject <name> | 가져온 서버를 원래 클라이언트로 복원하고 STM 등록을 해제 |
mms list | 등록된 서버 목록(SURFACING 열 포함) |
mms status | 설정 요약 — 활성화 플래그와 서버 수 |
mms health | MCP 서버 연결과 LTM 서피싱 준비 상태 확인 |
mms project route | 선택한 프로젝트 MCP의 STM 라우팅 미리보기(--apply로 쓰기) |
mms --version | 설치된 버전 출력 |
STM 프록시 실행 파일은 memtomem-stm입니다. mms init --client ..., mms register --client ..., 또는 일반 JSON 설정으로 STM을 MCP 클라이언트에 연결하면 클라이언트가 자동으로 실행합니다. 프록시 설정은 ~/.memtomem/stm_proxy.json에 저장됩니다. mms add와 mms init이 이 파일을 관리하므로 직접 편집할 일은 드뭅니다.
임베딩 제공자
섹션 제목: “임베딩 제공자”| 제공자 | 설치 | GPU | 비용 |
|---|---|---|---|
| ONNX (fastembed) | 기본 내장 | 불필요 | 무료 |
| Ollama | ollama pull nomic-embed-text | 불필요 | 무료 |
| OpenAI | API 키 필요 | — | 유료 |
어떤 제공자를 선택할지 모르겠다면 ONNX를 권장합니다. 무료로 로컬에서 실행되며 별도 데몬이나 API 키가 필요하지 않습니다. 나중에 mm init을 다시 실행하거나 MEMTOMEM_EMBEDDING__PROVIDER 환경 변수를 설정해 바꿀 수 있습니다. 중첩된 환경 변수 키는 이중 언더스코어(__)로 구분합니다.
기술 스택
섹션 제목: “기술 스택”| 범주 | 기술 |
|---|---|
| MCP | FastMCP (stdio, SSE, Streamable HTTP) |
| 프레임워크 | Pydantic v2, Click (CLI), FastAPI (Web UI) |
| 데이터베이스 | SQLite (FTS5 전문 검색), sqlite-vec (벡터 검색) |
| 코드 파싱 | tree-sitter (Python, JS, TS AST) |
| 한국어 | kiwipiepy 형태소 분석기 (선택) |
| 관측성 | Langfuse (선택) |