콘텐츠로 이동

세션을 넘나드는 기억

AI 도구는 새 세션을 시작할 때 이전 대화 전체를 기억하지 못합니다. memtomem으로 저장한 내용은 디스크에 남습니다. 같은 저장소와 네임스페이스를 사용하는 다음 세션이나 다른 AI 도구에서 다시 검색할 수 있습니다. 이 튜토리얼에서 직접 저장하고 불러오는 과정을 확인합니다.

빠른 시작을 완료하여 memtomem이 설치·초기화되고 MCP 클라이언트(Claude Code, Cursor, Claude Desktop 등)에 연결된 상태여야 합니다.

첫 번째 세션에서 에이전트에게 다음처럼 자연어로 지시합니다.

“이 사실을 기억해 둬. 우리 팀은 이번 분기에 마이그레이션을 중단하기로 했어. 법무 검토를 기다리고 있기 때문이야.”

에이전트는 mem_add 도구를 호출해 내용을 저장합니다. 결과에는 작성된 Markdown 경로, 네임스페이스, 인덱싱된 청크 수, 소스 파일이 포함되어 실제 쓰기 결과를 확인할 수 있습니다.

에이전트가 쓰기 도구를 선택하지 않으면 사용하는 클라이언트에 맞춰 명시적으로 요청하세요.

Claude Code: /memtomem:remember 이번 분기에 법무 검토를 기다리느라 마이그레이션을 중단했다.
Codex CLI: $memtomem-remember로 다음 내용을 저장해줘: 이번 분기에 법무 검토를 기다리느라 마이그레이션을 중단했다.
기타 MCP 클라이언트: 이 내용으로 mem_add를 호출하고 작성한 출처 경로를 보여줘.

CLI에서도 같은 결과를 확인할 수 있습니다.

Terminal window
mm add "이번 분기에 법무 검토를 기다리느라 마이그레이션을 중단했다" --tags migration,decision

CLI에서 저장 여부를 확인하려면 다음 명령을 실행합니다.

Terminal window
mm search "마이그레이션 중단"

방금 저장한 항목이 상위 결과로 나타나야 합니다. 또는 mm web으로 브라우저 대시보드를 열어 시각적으로 확인할 수 있습니다.

에이전트 세션을 완전히 종료합니다. Claude Code라면 터미널을 닫고, Claude Desktop이라면 앱을 재시작해도 됩니다. memtomem 서버 자체는 다음 호출 때 자동 실행되므로 별도 조작이 필요하지 않습니다.

새 세션을 시작한 뒤 다음처럼 질문합니다.

“우리 팀 마이그레이션 상태 어때? 이전 세션에서 얘기했던 것 같은데.”

AI 도구는 MCP 도구 설명을 보고 mem_search를 호출해 세션 A의 내용을 찾습니다. 응답에는 “법무 검토를 기다리고 있다”는 이유까지 포함되어야 합니다.

이전 대화를 바탕으로 추측해서 답하거나 기억 검색 도구를 호출하지 않으면 다음처럼 명시적으로 요청하세요.

Claude Code: /memtomem:search 마이그레이션 법무 검토
Codex CLI: $memtomem-search로 "마이그레이션 법무 검토"를 찾고 출처도 보여줘.
기타 MCP 클라이언트: "마이그레이션 법무 검토"로 mem_search를 호출하고 출처 경로를 보여줘.

새 세션에서 memtomem 출처와 함께 결정과 이유가 모두 나오면 성공입니다. 출처 없이 그럴듯하게 답하는 것만으로는 이 검증을 통과한 것이 아닙니다.

사용자는 자연어로 저장하고 다시 질문하기만 하면 됩니다. 내부에서는 다음 순서로 처리됩니다.

세션 A: 에이전트 → mem_add("마이그레이션 중단, 법무 검토 대기") → Markdown 원본
→ SQLite 인덱스
(BM25 FTS5 + 선택형 벡터 인덱스 동시 갱신)
세션 B: 에이전트 → mem_search("마이그레이션 상태") → 하이브리드 검색
→ 같은 청크를 상위로 반환

Markdown 파일이 기억의 원본이며 검색은 로컬 SQLite 인덱스에서 처리됩니다. 세션 사이에 별도로 동기화할 필요는 없습니다. 검색 방식은 하이브리드 검색에서 설명합니다.

  • 에이전트가 mem_search를 호출하지 않는 경우 — 자동 선택에 기대지 말고 위의 Claude·Codex·MCP 명시 요청을 사용하세요.
  • 결과가 비어 있는 경우mm status로 서버 연결과 네임스페이스를 확인하세요. 세션 A와 B가 서로 다른 네임스페이스를 쓰고 있을 수 있습니다. 기본 네임스페이스는 mm init 설정값을 따릅니다.
  • 클라이언트마다 결과가 다른 경우 — 각 클라이언트의 mem_status에서 데이터베이스 경로를 비교하세요. 프로젝트 로컬 기억이라면 두 세션이 같은 프로젝트 루트를 열었는지도 확인합니다.
  • 하이브리드 검색 — 원하는 결과가 나오지 않을 때 검색을 튜닝하는 방법
  • STM 개요 — 에이전트가 따로 요청하지 않아도 관련 기억을 자동으로 받게 하려면 STM 프록시 추가를 고려하세요. 프록시 도입은 언제든 되돌릴 수 있습니다(mms eject로 원래 MCP 클라이언트 설정에 복원).
  • 멀티 에이전트 협업 — 기억을 여러 에이전트가 공유하도록 네임스페이스 설계