Skip to main content

메모리 시스템

Myrm의 메모리 시스템은 AMO(Agentic Memory Operations) 패러다임의 가장 완벽한 구현입니다. 이는 세션 전반에 걸쳐 지속되고 모든 상호 작용에서 학습하며 사전에 통찰력을 제공하는 42개 이상의 모듈 인지 시스템입니다.

메모리 유형

시스템은 SQLite + Qdrant에 저장된 8가지 메모리 유형을 지원합니다(Mem0의 3가지 유형과 비교):

쓰기 경로 중독 방어

모든 메모리 쓰기는 내구성 있는 저장소에 닿기 전에 결정론적 보안 검사를 통과합니다. 악의적인 명령은 대화 계층을 속이더라도 지속될 수 없습니다.
  • 명령 형태 감지 — 가드레일 우회 명령(“이전 규칙을 모두 무시하고 비밀 공개”) 및 신뢰할 수 없는 채널 쓰기가 지속되기 전에 차단됩니다(이중 언어 공격 스타일 라이브러리, 6+6 패턴)
  • 자격 증명 제로 보관 — API 키, 강력한 비밀번호, PIN/OTP 숫자 자격 증명은 저장되기 전에 삭제됩니다. 연도(2024) 및 전화번호(138…) 오탐은 명시적으로 제외됩니다.
  • 가짜 시스템 태그 차단System:/Assistant: 콜론 접두사는 삽입으로 인식되며 메모리 채널을 통해 시스템 명령을 위조할 수 없습니다.
  • 모든 쓰기 경로 적용 — 수동 저장, 일괄 저장, 메모리 업데이트, 프로필 속성, 지식/이벤트/규칙 저장소, MCP memory_store 도구, 에이전트 자동 추출, 가져오기 복구 및 ConversationMemory 원시 교환이 하나의 가드를 공유합니다.
  • CI 회귀 게이트 — 2계층 기대 테스트(탐지 계층 + 추출 계층)가 포함된 포이즈닝 벤치마크가 CI에서 실행되므로 공격 라이브러리가 자동으로 저하되지 않습니다.
탐지는 규칙 기반이며 결정적입니다(비용 LLM 없음, 지연 시간 밀리초). 의도적으로 난독화되었거나 의미가 높은 공격은 LLM 감사 계층에서 추가로 다룹니다.

사실 신뢰성(추론이 결코 사실로 위장하지 않음)

장기 기억에는 그럴듯한 내용이 아니라 실제로 일어난 일만 저장됩니다. 검증되지 않은 추론, 추측, 이의가 제기된 주장이 사실로 기억되거나 사실처럼 답변되는 것을 막는 9가지 독립 방어 계층이 있습니다:
  1. 추출 규칙 — 추출기는 “요청된 것”이 아니라 “실제로 완료된 것”만 기록합니다(“Record what WAS DONE, not what was requested”)
  2. 신뢰도 임계값min_confidence=0.8 미만 기억은 저장 전에 걸러집니다. 암시적/추론적 표현은 통과하기 어렵습니다
  3. 신뢰도 등급 — 추출 시 의미 신뢰도를 부여합니다(0.9 명시 / 0.7 암시 / 0.5 추론). 이후 검색에서 “얼마나 직접적으로 진술되었는지”에 따라 사실 가중치를 조정할 수 있습니다
  4. 인간 확인 — 새 기억은 기본적으로 대기 상태이며, 활성화되려면 승인이 필요합니다(HITL, memory_require_confirmation=True)
  5. 주장 상태 및 증거 스냅샷 — 위키 주장은 raw → compiled → contested → retracted 4단계를 거치며, 증거 포인터와 content_sha256 스냅샷 및 verified/stale/missing 신선도 플래그를 포함합니다
  6. 주장 그래프 — 증거 노드가 명시적 관계로 연결됩니다(SUPPORTED_BY / CONTRADICTED_BY / SUPERSEDED_BY / CONSTRAINED_BY). 모순이 조용히 덮어써지지 않고 표시됩니다
  7. 자동 주입 금지 — 학습(추론) 컨텍스트는 시스템 프롬프트에 자동으로 주입되지 않습니다. 안정적이고 확인된 선호만 표면화됩니다
  8. 선호 안정성 — 선호는 CANDIDATE → PROVISIONAL → ACTIVE 검증 사다리를 통과해야 향후 행동에 영향을 줄 수 있습니다
  9. 검색 동적 가중치 감소 — 회상 시 오래된(×0.6), 증거 부족(×0.75), 이의 제기(×0.7), 근거 없음(×0.5) 사실은 순위가 자동으로 낮아져 답변을 오도하지 않습니다
결과: AI의 장기 기억은 “실제로 일어난 일”의 기록이며, 답변은 자신 있는 추측이 아닌 검증된 사실에 기반합니다.

변증법적 선호 추론(인지 파생물)

대화가 끝나면 Cognitive Deriver가 응답 대기 시간에 영향을 주지 않고 백그라운드에서 실행됩니다.
  1. LLM 기반 변증법적 추론을 사용하여 마지막 10개의 메시지를 분석합니다.
  2. 무제한 차원(커뮤니케이션 스타일, 인지 깊이, 적극성, 코딩 패러다임 등)에 걸쳐 암시적 선호도를 추출합니다.
  3. 0.8 신뢰도 임계값을 적용합니다. — 확실성이 높은 통찰력만 저장됩니다.
  4. Change_kind 의미 체계(support/contradict/supersede/constrain)를 통해 충돌을 해결합니다.
  5. 표준 승인 대기열 + 보안 스캐닝을 통해 벡터 저장소(SemanticMemory)에 안전하게 쓰기 — 외부 콘텐츠는 방어를 우회할 수 없습니다.
  6. 핵심 선호사항은 PreferenceStabilityStrategy 다중 관찰 검증(후보자 → 임시 → 활성)을 거쳐 ProfileEntry로 안전하게 승격되며 시스템 프롬프트에 자동으로 삽입됩니다.
  7. 에이전트 자체 생성 규칙(AGENT_SELF)은 HIGH의 엄격한 우선순위 상한을 가지므로 압축 면역 슬롯을 요구할 수 없습니다.
타사 API 키가 필요한 Honcho의 클라우드 기반 접근 방식과 달리 Myrm의 구현은 완전히 로컬이며 개인 정보가 보호되며 오프라인에서 작동합니다. 시스템은 파괴적인 변경(모순/대체)에 대해서만 사용자에게 알립니다. 일반적인 선호도 축적은 완전히 조용합니다.

비용 제로 목표 도출(드림 메커니즘)

Honcho의 Dream 메커니즘에서 영감을 얻었지만 추가 LLM 비용 없이 구현된 Myrm은 일상적인 “맛 요약” 생성 중에 사용자의 장기 목표 및 진행 중인 프로젝트를 비동기식으로 추출합니다. 이는 전통적인 자유 텍스트 Dream 메커니즘의 높은 토큰 비용과 데이터 손상 위험 없이 지속적인 “장기 메모리 목표”를 AI에 제공합니다.

작업 메모리(교차 세션 작업 연속성)

장기 실행 작업(수일에 걸친 리팩터링, 반복 연구)은 세션 간에 컨텍스트를 잃습니다. 다른 도구에는 수동 요약이나 비용이 많이 드는 전체 기록 검색이 필요합니다. Myrm의 Working Memory는 전용 __working_state 프로필 메모리 항목을 사용하여 이 문제를 해결합니다.
  • 자동 추출 — 각 대화가 끝난 후 TaskDigest 추출기는 작업 진행 상황을 작업 상태(500자 이하)로 캡처합니다.
  • 우선순위 주입 — 작업 상태는 시스템 프롬프트의 priority=0(가장 높음)에 주입되어 다음 세션에서 중단한 위치를 즉시 알 수 있습니다.
  • 7일 TTL — 7일보다 오래된 항목은 자동 만료되므로 오래된 컨텍스트로 인해 새 작업이 오염되는 것을 방지할 수 있습니다.
  • 실시간 UI — 채팅 헤더의 배지는 현재 작업 상태를 보여줍니다. 각 대화가 바뀔 때마다 자동으로 새로 고쳐집니다. 설정 카드는 캐릭터 카운터를 통해 완전한 생성/편집/삭제 제어 기능을 제공합니다.
ChatGPT의 Dreaming(수동적, 작업별 초점 없음), CLAUDE.md(수동 유지 관리) 또는 타사 MCP 플러그인(구성 오버헤드)과 비교할 때 Working Memory는 구성이 없고 시스템 추출되며 자체 정리됩니다.

프로필 삽입 + 통합 메모리 검색(접두사 캐시 친화적)

세션 간 연속성: L1 stable 프로필이 자동으로 삽입됩니다. 학습된 기본 설정은 프롬프트 캐시 적중률을 최대화하기 위해 memory_search_tool(Turn-1 미들웨어 아님)을 통해 검색됩니다. 1턴 동작: corpus이 있는 하나의 읽기 도구 - GeneralAgent에는 독립 실행형 conversation_search_tool이 없습니다. 하위 에이전트(사용자 정의 + 임시 JIT)는 범위가 지정된 정책/백엔드(하위 agent_id, 상위 chat_id, 상위 옵트인 플래그)를 사용하여 memory_search_tool를 리바인드합니다. 음성(실시간 및 Gemini Live): 동일한 설정 ACL이 적용됩니다. 음성 세션은 잘린 memory_search_tool 코퍼스 열거형을 선언하고 enable_conversation_search을 도구 실행에 전달하므로 설정의 “대화 기록 검색”이 채팅과 음성을 모두 제어합니다. 음성 스크립트는 텍스트로만 유지됩니다(아직 증거 버튼 없음). 신규 사용자의 경우 기본적으로 메모리가 켜져 있습니다. 대화 기록 검색은 분리되어 있으며 귀하가 선택할 때까지 기본적으로 꺼져 있습니다.

비교 방법(솔직함, 2026년 7월)

Hermes 의미 기억과 세션 검색을 별도의 도구로 분할합니다. CoPaw는 기록을 자동으로 삽입합니다. Myrm: 단일 코퍼스 ACL + GUI 옵트인 세션 + 시크릿 모드는 메모리를 완전히 비활성화합니다 + 증거 N 인용 UI. OpenClaw은 유사한 말뭉치 모델을 사용합니다. GUI 개인 정보 보호 제어 및 통합 인용을 추가합니다. 검증됨(2026년 7월 20일): 38개의 공장 단위 테스트(99.6% cov), 8개의 API 메모리/세션 e2e, 4개의 Chrome 인용 e2e, 7개의 프런트엔드 vitest — .env.test을 통한 모델 mimo-v2.5-pro.

브랜드 스타일 메모리 보드(Brand Studio)

Myrm은 브랜드 정체성을 편집 가능한 GUI + 에이전트 컨텍스트에 안정적으로 주입하는 유일한 에이전트 제품입니다. AI가 생성한 결과물(카피, 디자인, HTML, PPT)이 자동으로 브랜드에 맞게 조정됩니다.
  • 구조화된 브랜드 양식 — 설정 → 지식 → 브랜드 스타일: 이름, 슬로건, 기본/보조/강조 색상, 글꼴, 톤, 금기 사항. 네이티브 색상 선택기, 실시간 미리보기 카드, 빈 상태 안내, hex 필드 검증 포함.
  • brand_* 프로필 메모리로 저장 — 에이전트가 이미 읽는 프로필 메모리 채널을 재사용하며, 안정적인 “글로벌 사용자 프로필” 계층(우선순위 1)을 통해 매 세션 첫 프레임에 주입되어 프롬프트 캐시를 깨지 않습니다.
  • 파괴적 지우기 가드 — 양식 지우기는 파괴적 작업(지운 후 저장하면 구성된 필드가 삭제됨)이므로 ConfirmDialog(파괴적) 2차 확인이 필요합니다. 양식이 비어 있으면 지우기 버튼이 비활성화됩니다.
  • 경쟁사 격차 — openclaw/hermes/deer-flow/LobsterAI/CoPaw/jiuwenclaw 및 WorkBuddy 소스 모두 브랜드 메모리에 대해 0개 일치; 경쟁사는 오픈 소스 구현 없이 설계 문서에만 머물러 있습니다. Myrm은 과도하게 설계된 대시보드나 미리보기 엔진 없이 기존 주입 경로를 재사용합니다.

벽시계 시간 초과 Fail-Open(리콜이 에이전트를 멈추지 않음)

모든 메모리 리콜은 벽시계 시간 초과로 보호되어 백엔드가 느려지거나 정지되어도 대화가 멈추지 않습니다. 통합 _run_with_timeout 헬퍼는 네 가지 검색 코퍼스 모두(장기 메모리·위키·대화 기록·웹 검색)에 동일한 retrieval.timeout_seconds 예산(기본 10초)을 적용합니다.
  • 설계상 Fail-Open — 코퍼스가 예산을 초과하면 가능한 부분 결과와 함께 degraded 알림을 즉시 반환하며, 에이전트 메인 루프를 무기한 차단하거나 결과를 조용히 버리지 않습니다.
  • 투명한 저하 — 어떤 코퍼스가 시간 초과되었는지 LLM에 명확히 알려 남은 코퍼스로 답하거나 다시 검색할 수 있게 합니다(누락된 컨텍스트로 인한 환각 방지). 저하된 리콜이 결과를 전혀 반환하지 않으면 도구는 “Memory search timed out. Try a more specific query or retry.” 를 명시적으로 반환하며 중립적인 “기억 없음” 메시지를 쓰지 않아, 모델이 검색 실패를 “기억이 정말 비어 있음”으로 오해하지 않습니다.
  • 모든 진입점 적용 — 메모리 컨텍스트 미들웨어(get_context), MCP memory_recall 엔드포인트, memory_search_tool 모두 동일한 fail-open 보장을 공유하며 저하 의미론도 완전히 동일합니다. MCP 어댑터는 categories/tags를 원시 리스트, JSON 배열, 쉼표 구분 문자열 세 가지 형태로 모두 수용하며(null/빈 항목 자동 필터링), 어떤 LLM 호출 형태라도 안정적으로 파싱됩니다.
대부분의 경쟁사는 검색 시간 초과가 전혀 없거나(백엔드 정지 시 에이전트 동결) 단일 코퍼스에만 적용합니다. Myrm의 통합적이고 투명한 fail-open은 인프라가 저하되어도 답변이 빠르고 정직하게 유지되도록 합니다.

메모리 진단 설명 루프

대부분의 제품은 메모리가 존재한다는 것을 알려줄 수 있지만 이번 차례에 실제로 사용되었는지 여부는 알 수 없습니다. Myrm은 사용자가 볼 수 있는 진단 루프를 통해 이러한 격차를 해소합니다.
  1. 스트림 단계는 응답 생성 중에 턴별 메모리 상태를 방출합니다.
  2. 지속 단계는 저장된 메시지 메타데이터에 동일한 정규화된 상태를 기록합니다.
  3. 제어판 원격 측정은 스트림/지속 상태를 집계하고 드리프트 또는 비정상적인 낙하 신호에 대한 경고를 발생시킵니다.
  4. 프런트엔드 설명 UI는 모바일 친화적인 비호버 사본을 포함하여 preflightruntime_fallback 소스를 표시합니다.
실제 사용에서 이것이 중요한 이유:
  • 빠른 신뢰 회복: 사용자는 추측하는 대신 메모리가 건너뛴 이유를 확인할 수 있습니다.
  • 지원 비용 절감: 전체 채팅을 재생하는 대신 상태/소스/이유 라벨을 기준으로 작업을 분류할 수 있습니다.
  • 프롬프트 캐시 회귀 없음: 프롬프트 접두사를 변경하는 것이 아니라 모델 출력(message_end/지속 경로) 후에 진단이 내보내집니다.
  • 자동 원격 분석 손상 없음(클라우드 모드): 엄격한 공유 중복 제거 페일클로즈는 안전하지 않은 수집 경로를 거부하고 빠른 사고 분류를 위해 거부 이유를 기록합니다.
최신 타겟 검증(2026-07-19):
  • 서버 메모리 원격 분석 회귀: 28개 통과
  • 제어 영역 수집 + 인증 + 측정항목 회귀: 55개 통과
  • 프런트엔드 메모리 설명 및 흐름 회귀: 14개 통과

메시지별 메모리 수명주기(타임라인 전환)

긴 채팅에서 사용자들은 종종 “내가 말한 것을 실제로 기억했나요?”라고 묻습니다. 대부분의 제품은 “우리는 기억이 있습니다”라고만 대답합니다. 어떤 어시스턴트 응답이 무엇을 했는지 지적할 수 없습니다. Myrm은 각 보조 메시지의 Memory Insight 패널 내부에 라이프사이클 스트립을 삽입합니다. 엔지니어링 → 사용자 가치: 실시간 SSE 업데이트 및 기록 추적 수화; messageCreatedAtMs 필터링은 오래된 이벤트가 새 메시지를 오염시키는 것을 방지합니다. 경쟁사(OpenClaw, Hermes, CoPaw 등)는 동등한 메시지별 시각화를 제공하지 않습니다. 확인됨(2026-08-06): 프런트엔드 vitest 42 + 서버 API 10 + Chrome E2E 1 = 52 통과(E2E 로그 myrm-test-62128).

AMO 운영 — 전체 범위

AMO 패러다임(2025-2026)은 완전한 메모리 시스템이 지원해야 하는 네 가지 핵심 작업을 정의합니다. Anthropic’s Dreaming은 1~2단계를 다룹니다. Mem0은 저장 및 부분 검색을 다룹니다. Myrm은 프로덕션 등급 깊이로 네 가지를 모두 구현합니다.

7-신호 검색 융합

기존의 벡터 전용 검색과 달리 Myrm은 가중 기하 평균을 통해 7개의 독립적인 점수 신호를 결합합니다.
  1. 의미론적 유사성 — Qdrant 벡터 임베딩 일치
  2. 키워드 일치 — SQLite FTS5 + BM25 정밀 리콜
  3. 엔티티 일치 — 그래프로 강화된 다중 홉 순회
  4. 최신성 — 지수적 시간 감쇠(유형별로 구성 가능한 반감기)
  5. 빈도 — 로그 포화도를 사용한 액세스 횟수
  6. 중요도 — 사용자 할당 또는 LLM 추출 중요도 점수
  7. 기본 설정 — 기본 설정 쿼리에 대한 기본 설정 유형 부스트

Anti-Chitchat 메모리(무작동 기본값)

Mem0 및 Codex 추출기는 High Recall을 지향하여 일시적인 생각(“안녕하세요”, “오늘은 맑습니다”)을 데이터베이스로 열심히 끌어옵니다. 시간이 지남에 따라 이는 의미 있는 제약 조건을 크게 희석시키고 RAG 컨텍스트를 오염시킵니다. Myrm은 No-Op Default(엄격한 정밀도) 패러다임을 발명했습니다.
  • 기본 LLM 추출기는 사소한 출력에 대해 큰 불이익을 받습니다.
  • 기본적으로 No-Op를 나타내는 빈 배열 []을 반환하도록 지시됩니다.
  • 중요한 비즈니스 제약 조건(예: “Python 3.14를 사용해야 합니다.”)과 활용도가 높은 지식만이 0.6 중요도 임계값을 넘습니다.
  • 결과: 절대적인 컨텍스트 순수성, AI 결정 및 롱테일 제약 메모리가 토큰 낭비 없이 거의 100%의 정밀 적중률을 달성하도록 보장합니다.

동적 연령 경고(환각 보호)

오래된 정보(예: 한 달 전의 파일 경로)를 검색하면 순진한 에이전트가 손상된 컨텍스트를 맹목적으로 사용하고 반복적으로 실패하게 됩니다. Myrm의 메모리 검색기는 사람이 읽을 수 있는 연령 레이블(예: “오늘”, “3일 전”, “2개월 전”)과 관련 점수를 로드된 모든 에피소드/의미 메모리에 삽입합니다. 연령은 가장 최근 수정 사항을 반영합니다. 메모리가 어제 업데이트된 경우 생성 날짜에 관계없이 “어제”로 표시됩니다. 또한 시스템이 민감한 시간 감쇠 자산(예: 코드 경로)을 감지하면 LLM에 지시하는 [CRITICAL WARNING]을 동적으로 추가합니다. “이 경로는 오래되었을 수 있습니다. 코드 가정을 하기 전에 Read/Grep 도구를 사용하여 해당 자산의 존재를 확인해야 합니다.” 이는 RAG로 인한 코드 환각으로부터 에이전트를 효과적으로 면역시킵니다. 추가 개선 사항: 6가지 결과 부스터(키워드 중복, 시간적 근접성, 사람 이름, 인용 문구, 기본 설정, 패턴 일치), 소스 세션 중복 제거를 통한 MMR 다양성 재순위, 수정 체인 억제(오래된 수정 메모리 자동 수준 내리기 90%) 및 적응형 이중 채널 선택으로 쿼리 비용 최대 35% 절약.

검색 구성 엔진

내부적으로 Myrm의 검색 시스템은 RetrievalConfig을 통해 33개의 조정 가능한 매개변수를 노출합니다. 모두 세심하게 최적화된 기본값이 있으므로 사용자가 이를 건드릴 필요가 없습니다. 주요 기능:
  • 3가지 리콜 모드 — HYBRID(컨텍스트 주입 + 메모리 도구), CONTEXT(삽입 전용, API/헤드리스에 이상적), TOOLS(최소 토큰 오버헤드)
  • 5개의 독립적인 부스트 시스템 — 키워드 중복, 시간적 근접성, 사람 이름 일치, 인용 문구 감지, 선호도 강도 — 각각 고유한 활성화 토글 및 가중치 매개변수가 있음
  • 적응형 이중 채널 선택 — 쿼리 복잡성에 따라 요약 전용 검색과 이중 채널(요약 + 원시) 검색 중에서 자동으로 선택하여 회수 품질을 저하시키지 않고 쿼리 비용을 최대 35% 절약합니다.
  • 의도 인식 — 쿼리 의도(사실 조회, 선호도 회상, 임시 쿼리)를 자동으로 감지하고 이에 따라 검색 전략을 조정합니다.
  • 5단계 메모리 범위 격리 — 전역 → 에이전트 → 채널 → 대화 → 작업, 범위 수준별로 구성 가능한 읽기/쓰기 정책 포함
  • 6가지 메모리 유형 가중치 — 프로필, 의미, 에피소드, 대화, 절차 및 청구 메모리에 대한 독립적인 관련성 가중치
  • 프런트엔드 설정 — 4개의 토글(활성화/확인/자동 추출/사전 압축) + 1개의 슬라이더(토큰 예산 800-2000) + 6개의 탭 보기 — 성능과 단순성 사이의 최적의 UX 균형
모든 매개변수는 스레드 안전을 위해 고정된 데이터 클래스를 사용합니다. 고급 사용자는 서버 구성을 통해 기본값을 무시할 수 있습니다. 대부분의 사용자는 그럴 필요가 없습니다.

검색 충분성 가드

활성화되면 RSG(Retrieval Sufficiency Guard)는 검색이 완료된 후 검색 결과가 사용자의 쿼리를 적절하게 포함하는지 평가합니다. 누락된 정보 측면을 감지하고, 부정적인 제약 조건 위반(예: “X를 제외한 모든 것”)을 식별하고 후속 검색 쿼리를 제안합니다. 그런 다음 에이전트는 내부 하드코딩된 루프 없이 지능적인 판단만으로 재검색 여부를 자율적으로 결정합니다. 이는 쿼리 복잡성에 관계없이 N 라운드를 기계적으로 반복하는 파이프라인 기반 접근 방식(예: MindMemOS의 AgenticLoop)과 대조됩니다. Myrm의 에이전트 우선 접근 방식은 간단한 쿼리가 추가 비용 없이 한 라운드에 완료됨을 의미하는 반면, 복잡한 다중 엔터티 쿼리는 상황에 맞게 인식되는 에이전트 기반 후속 검색의 이점을 누릴 수 있습니다. RSG는 이미 웹 검색 도구에서 사용하고 구성을 통해 메모리 검색에 사용할 수 있는 공유 인프라(toolkits/retriever/sufficiency/)입니다. 기본값: 꺼짐(복잡한 쿼리에 대한 최대 회수율을 원하는 사용자를 위한 선택)

지식 그래프

메모리 항목 간의 관계는 4가지 의미론적 관계 유형(SUPPORTED, CONTRADICTED, SUPERSEDED, CONSTRAINED) 및 다중 홉 탐색을 갖춘 지식 그래프로 모델링됩니다. GUI에서 3D 시각화를 통해 SQLite CTE 및 Apache AGE 백엔드를 모두 지원합니다. 지식 그래프는 통합 학습 여정 페이지(/journey)에 눈에 띄게 표시됩니다. 여기서 사용자는 단일 보기에서 기술 효율성 추세 및 성장 KPI와 함께 주장/증거 노드를 탐색할 수 있습니다. API 그래프는 네임스페이스 필터링을 지원하므로 사용자는 특정 에이전트 또는 공유 컨텍스트 범위의 지식을 탐색할 수 있습니다.

통합 메모리 - 크로스 플랫폼 지식 융합

외부 서비스를 연결하고 자동으로 해당 데이터를 메모리 시스템으로 가져옵니다. 모든 MCP 호환 서버는 사용자 정의 코드가 없는 지식 소스가 됩니다.
  • MCPBridgeProvider는 구성된 모든 MCP 서버(Notion, Feishu, DingTalk, GitHub, Slack 등)를 자동으로 브리지합니다. 서비스별 어댑터가 필요하지 않습니다.
  • IntegrationSyncDaemon은 MCP 서버를 검색하고 60분마다 자동으로 동기화합니다.
  • 자동 지식 추출 — 시스템은 LLM을 사용하여 동기화된 데이터에서 중요한 프로필 특성을 추출하고 이를 사용자 프로필에 직접 기록합니다.
  • 계층적 트리 구조 — 동기화된 콘텐츠는 각 수준에서 LLM 생성 요약을 사용하여 탐색 가능한 트리로 구성됩니다.
  • 오류 격리를 통한 동시 가져오기 — 여러 공급자가 세마포어 제한을 통해 병렬로 동기화됩니다. 한 공급자의 실패는 다른 공급자에게 영향을 미치지 않습니다.
  • 자격증명 보관 관리 기능을 갖춘 사전 구축된 5개의 OAuth 통합(Feishu, DingTalk, GitHub, Jira, Slack)
  • Clean Disconnect — 공급자를 제거하면 동기화된 모든 메모리가 자동으로 정리됩니다.
결과: AI 비서는 사용자가 대화에서 말하는 내용뿐만 아니라 모든 도구의 맥락을 이해합니다.

위키 기술 자료

에이전트 프로필에 Wiki 기본 제공 도구 그룹이 활성화되어 있으면 에이전트가 자동으로 수집/컴파일/쿼리/유지 관리 도구를 가져옵니다. 쓰기 경로에는 파일/URL 수집, 채팅에서 Wiki에 저장, Deep Research 저장소, 압축 후 세션 노트 아카이브 및 대규모 업로드 힌트가 포함됩니다. 모든 경로는 하나의 통합된 위키 디렉토리를 사용합니다. 설정에는 볼트 상태 배지(vault ready / legacy migrated)가 표시됩니다. 소비 경로에는 wiki_query 하이브리드 검색, 설정 개요 쿼리 및 3D 지식 그래프가 포함됩니다. Brain 페이지는 개념 탐색, 콘텐츠 편집, 하이브리드 검색, 보류 중인 편집 검토 및 그래프 탐색을 위한 전체 GUI을 제공합니다. 각 사용자는 격리된 위키 디렉토리를 얻습니다. 시각적인 요약이 필요하신가요? 상담원에게 채팅에서 직접 마인드맵, 타임라인, 순서도 또는 13개 이상의 인어 차트 유형을 생성하도록 요청하세요. 테마에 맞는 스타일을 사용하여 실시간으로 렌더링됩니다. 템플릿 잠금 시스템(RAGFlow는 7개의 고정 YAML 템플릿 사용)과 달리 Myrm의 에이전트는 사전 계산 비용 없이 주문형 시각화를 생성합니다.

지능형 망각 및 시크릿 모드

5차원 망각 전략은 의미론적, 에피소드적, 절차적을 포함한 모든 메모리 유형을 포함하여 중요한 내용을 보존하면서 메모리 팽창을 방지합니다.
  1. 최신성 — 오래된 기억은 구성 가능한 반감기로 인해 사라집니다(기본값은 90일).
  2. 빈도 — 거의 액세스하지 않는 메모리의 우선순위가 낮아집니다(모든 유형의 세션에서 access_count가 지속됨).
  3. 중요도 - 명시적으로 플래그가 지정되었거나 매우 중요한 메모리가 보존됩니다.
  4. 관계 — 지식 그래프에서 잘 연결된 추억은 더 높은 유지 점수를 받습니다.
  5. 사용자 평가 — 사용자 피드백(좋아요/거부)은 보존 우선순위에 직접적인 영향을 미칩니다.
세 가지 망각 모드: DELETE(영구 제거), ARCHIVE(메타데이터로 비활성화), MARK(로그만, 변형 없음). 고정된 메모리, CRITICAL 우선순위 절차 규칙 및 최근에 액세스한 항목은 자동으로 제외됩니다. 시크릿 모드(阅后即焚): 민감한 대화를 위해 Myrm은 진정한 시크릿 모드를 제공합니다. 활성화되면 해당 세션에 대해 AI의 메모리 도구가 물리적으로 비활성화됩니다. 대화는 데이터베이스에서 시크릿으로 표시되고, 프런트엔드 사이드바에서 숨겨지며, 전역 검색에서 제외되고, 60분 후에 백그라운드 크론 작업에 의해 데이터베이스에서 물리적으로 삭제됩니다. 이는 영속성과 완전한 격리를 보장합니다.

메모리 비활성 방어

Mem0의 2026년 벤치마크는 “메모리 부실”을 가장 어려운 공개 문제로 식별했습니다. 오래된 고주파 메모리는 확실히 잘못된 답변으로 이어집니다. Myrm의 8레이어 방어:

7-전략 조각화 방지 시스템

장기 실행 에이전트는 중복, 오래된 항목, 노이즈 희석 검색 품질 등 필연적으로 조각나는 수천 개의 메모리를 축적합니다. 조각화 방어 기능을 제공하지 않는 경쟁업체와 달리(Hermes은 문제를 인정하지만 전혀 완화 기능을 제공하지 않음) Myrm은(는) 8가지 자율 전략을 함께 배포합니다. 결과: 메모리 인덱스는 순수하고 빠르며 항상 관련성을 유지하므로 수동 정리가 필요하지 않습니다. 모든 전략을 포괄하는 446개의 자동화된 테스트로 검증되었습니다.

세션 간 통합 및 자율 유지 관리

Myrm의 메모리 유지 관리 엔진은 사용자 개입 없이 메모리를 정리된 상태로 유지하는 10개의 특수 모듈(4,128줄의 코드)을 실행합니다. Memory Guardian 스케줄러는 적응형 타이밍을 통해 모든 유지 관리를 자동으로 조정합니다. 정상 시스템은 6시간마다 실행되고 성능이 저하된 시스템은 강제 복구를 통해 2시간마다 확대됩니다. 활성 사용자 세션 중에 자동으로 일시 중지하고, 일일 토큰 예산을 준수하고, 각 주기 후에 SQLite 핫 백업을 수행하고, 명령 센터에 SSE 푸시하여 작업 원장에 감사 이벤트를 기록하고, 만료된 아카이브와 오래된 충돌을 정리합니다.

통합(5개 작업)

  • 병합 — 중복되거나 겹치는 추억을 하나의 더 풍부한 항목으로 결합합니다.
  • 올바름 — 우수한 루브릭 채점(≥0.7 게이트)을 통해 오래되었거나 모순되는 정보를 수정합니다.
  • 업데이트 — 최근 대화의 새로운 맥락으로 기존 추억을 풍부하게 만드세요.
  • 보관 — 가치가 낮은 추억을 콜드 스토리지로 이동(복구 가능)
  • 분할 — 더 나은 검색을 위해 복합 메모리를 원자적 사실로 나눕니다.

3계층 중복 제거

해시 매칭(0.18ms, 임베딩 비용 98% 절감) → 벡터 유사성 → LLM 의미 판단. 네 가지 결과: SKIP, UPDATE_REPLACE, UPDATE_MERGE 또는 KEEP_BOTH. 엔터티 일치는 정확한 = 비교(하위 문자열 일치 아님)를 사용하므로 “Sam” 및 “Samsung” 또는 “Apple” 및 “Pineapple”과 같은 고유한 엔터티는 혼동되지 않습니다. 이는 하위 문자열 중복 제거 기능이 있는 규칙 기반 NER에 의존하는 경쟁업체에서 알려진 문제입니다.

재발 감지

임베딩 기반 버퍼는 세션 전체에서 동일한 주제가 4회 이상 반복되는 경우를 감지하여 자동으로 통합을 트리거합니다. 이는 RecMem의 학문적 접근 방식에서 영감을 얻었지만 프로덕션 수준 구현을 사용합니다.

가정

새로운 지식이 이전 메모리를 완전히 포함하면 시스템은 감사 추적을 보존하면서 포함된 항목을 안전하게 일시 삭제합니다.

분쟁 중재

통합에서 매우 중요한 모순(자동 해결에 대한 신뢰도가 부족한 기존/새 메모리 충돌)을 감지하면 충돌이 사용자에게 전달됩니다.
  • 실시간 알림 — SSE 푸시 + 사이드바 배지 펄스 알림
  • 시각적 비교 — ContributeCard는 중요도 비율 및 정확도 점수와 함께 이전 콘텐츠와 새 콘텐츠를 나란히 표시합니다.
  • 4가지 작업 — 기존 유지 / 새 수락 / 병합 자유 수정(LLM 사전 생성 제안) / 둘 다 삭제
  • 24시간 등급별 자동 해결 — 저위험 충돌은 24시간 후 Guardian이 이전 값을 자동으로 유지(KEEP_OLD, json_set으로 메타데이터 병합·기존 필드 보존)하며, 고위험 충돌(중요도 ≥0.9)은 자동 해결되지 않고 항상 사용자의 명시적 결정을 요구합니다.
  • 중복 충돌 제거 — 동일한 신/구 메모리 쌍에 대한 반복 충돌은 중복 제거되어 사용자를 반복적으로 방해하지 않습니다.

암시적 피드백 감지

사용자가 “네가 틀렸어”라고 말하지 않고 암시적으로 에이전트를 수정하면(예: “지난달에 ByteDance를 떠났고 지금은 Google에 있습니다.”) 시스템은 자동으로 모순을 감지하고 메모리 수정을 제안합니다.
  • 2단계 감지 — 비용이 전혀 들지 않는 정규식 사전 필터가 명시적인 부정을 포착합니다. LLM 정밀 스캔은 정규식이 감지할 수 없는 암시적 모순을 포착합니다.
  • 구조화된 행동 계획 — 신뢰도 점수와 추론을 통해 입력된 제안(추가/업데이트/삭제)을 생성합니다.
  • 이중 대상 라우팅 — 제안은 에이전트의 개인 PendingMemory(거버넌스 HITL 승인) 및 SharedContext(에이전트 간 동기화를 위한 정책 기반 자동 승인) 모두로 라우팅됩니다.
  • 멱등성 — 콘텐츠 해시 기반 소스 ID는 동일한 대화에서 중복 제안을 방지합니다.
  • 백그라운드 실행 — 세션 정리 콜백으로 실행되며 기본 대화 대기 시간이나 프롬프트 캐시에 영향을 주지 않습니다.
이는 암시적 신호 감지와 Human-in-the-Loop 거버넌스 대기열을 결합한 업계 유일의 구현입니다. 경쟁업체는 승인 없이 자동으로 작성하거나(위험) 암시적 수정 사항을 전혀 감지하지 못합니다.

명시적 메모리 작업

사용자는 대화 중 자연어를 통해 추억을 직접 관리할 수 있습니다. CLI나 특수 명령이 필요하지 않습니다.
  • 5가지 작업 유형add(새 지식), update(기존 수정), delete(제거), correct(이전 버전 강등 + 새 버전 연결), rate(관련성 조정을 위한 추천/비추천)
  • 에이전트 네이티브 NL 이해 — 에이전트 자체가 자연어 계획자 역할을 합니다. “내 주소를 123 Main St로 업데이트해 줘”라고 말하면 에이전트가 자동으로 올바른 도구를 호출합니다.
  • 수정 체인correct 작업은 이전 메모리의 수준을 낮추며(검색 우선 순위를 낮춤) 전체 기록을 보존하면서 백링크가 있는 새 버전을 생성합니다.
  • HITL 승인 — 에이전트별로 구성 가능한 approval_required 플래그는 쓰기 전에 거버넌스 승인 대기열을 통해 수정 사항을 라우팅합니다.
  • 에이전트 간 동기화 - 정책 기반 자동 승인을 통해 수정 사항이 SharedContext에 전파되어 바인딩된 모든 에이전트가 최신 상태로 유지되도록 합니다.
이 에이전트 우선 접근 방식을 사용하면 별도의 피드백 파이프라인이 필요하지 않습니다. 경쟁업체에는 통합 에이전트가 없기 때문에 CLI 도구(memory feedback --text)가 필요합니다.

원클릭 롤백

모든 통합 작업은 추가 스토리지 없이 되돌릴 수 있습니다. 시스템은 기존 previous_content 메타데이터와 일시 삭제 플래그를 사용합니다. GUI은 통합 후 사용자가 수정한 메모리에 대한 충돌 경고가 있는 전용 통합 롤백 카드를 표시합니다.

패턴 발견

주기 간 행동 패턴 분석(매주 실행)은 사용자가 알아차리지 못할 수도 있는 통찰력을 제공합니다.
  • 반복되는 작업 습관 및 루틴
  • 시간에 따른 지식의 진화
  • 해결되지 않은 스레드와 고민
  • 세션 간 선호도 드리프트
  • 사용자가 직접적으로 해결하지 못하는 사각지대
발견에는 하트비트 주입을 통해 에이전트가 사전에 표면화하는 실행 가능한 제안이 포함됩니다. 성숙 게이트 — 기억 시스템이 충분히 성숙한 후에만 실행됩니다(기억 ≥ 50개, 통합 주기 ≥ 3회). 기억 집합 해시가 “마지막 실행 이후 변경 없음”을 감지하면 LLM 호출을 완전히 건너뛰므로 주간 분석이 변경되지 않은 기억에 모델 크레딧을 낭비하지 않습니다. 행동 규칙으로 승격 — 3주기 이상 안정적(durability=established)이고 신뢰도가 높으며(≥ 0.8) 구체적인 제안이 있는 패턴은 표준 대기 승인 큐를 통해 자동으로 ProceduralRule로 승격됩니다. 에이전트가 사용자의 암묵적 작업 선호도를 학습하여 이후 대화에서 능동적으로 적용합니다 — 기억이 행동으로 성장합니다. 진화 리뷰 패널 — WebUI 성장 대시보드 ‘진화 리뷰’ 탭은 각 발견을 카드(제목/신뢰도/안정성 배지/제안/근거)로 렌더링하며 펼치기·접기와 ‘지금 분석’ 트리거를 지원합니다. 발견 내용은 Command Center 타임라인용 operation ledger에도 기록됩니다. 모델 정렬 — 분석 LLM은 WebUI 기본 채팅 모델로 구성되므로 주간 분석에 사용할 모델을 직접 제어할 수 있습니다. 구조화 출력은 별칭 매핑(title↔category, evidence_summary↔evidence, actionable_suggestion↔suggestion)으로 LLM 필드명 드리프트를 허용하므로 약간 다른 필드명이 실행을 깨지 않습니다.

공유 컨텍스트 — 에이전트 간 지식 공유

공유 컨텍스트를 사용하면 여러 상담원, 채널 또는 대화가 액세스할 수 있는 선별된 지식 공간을 만들 수 있습니다. 파일 기반 프로젝트 컨텍스트(PilotDeck의 MEMORY.md 접근 방식)와 달리 Myrm의 공유 컨텍스트는 관리되는 다중 계층 시스템입니다. 6가지 바인딩 대상 유형 — 에이전트, 채널, 크론 작업, 대화, 작업 또는 전체 프로젝트에 컨텍스트를 연결합니다. 5단계 네임스페이스 계층 구조 — 메모리 범위는 전역에서 작업 수준까지 범위가 지정되어 올바른 정보가 적시에 올바른 에이전트에 도달하도록 보장합니다. 쓰기 거버넌스 — 제안은 공유 컨텍스트에 들어가기 전에 명시적인 승인이 필요합니다. 수정 및 목표 달성을 위해 자동 승인 정책을 구성할 수 있습니다. 상태 모니터링 — 시스템은 임베딩 가용성을 적극적으로 모니터링하여 쓰기 오류가 발생하기 전에 경고합니다. 증거 검색 — 대화 기록을 탐색하고, 관련 증거를 찾고, 과거 대화에서 직접 승인 가능한 제안을 생성합니다. GUI에서 모든 것을 관리합니다. 컨텍스트를 생성하고, 이를 대상에 바인딩하고, 쓰기 제안을 검토하고, 기록을 검색합니다. 이 모든 것이 메모리 센터의 공유 컨텍스트 탭에서 이루어집니다.

에이전트 지침과 전역 메모리 경계 제어

여러 에이전트가 글로벌 메모리를 공유하는 경우 글로벌 기본 설정이 특정 에이전트의 지침과 충돌할 수 있습니다. 예를 들어 전역 메모리는 “사용자는 자세한 설명을 선호합니다”라고 기록하지만 코딩 에이전트는 “간결하게” 구성되어 있습니다. Myrm은 프롬프트 수준에 범위 경계 선언을 자동으로 삽입하여 LLM에 명시적으로 알려줍니다. 전역 메모리가 에이전트 자체 지침과 충돌하는 경우 에이전트 지침이 항상 우선합니다. 이를 통해 각 에이전트의 페르소나 및 행동 규칙이 글로벌 메모리에 의해 절대로 손상되지 않도록 보장합니다.
  • 제로 구성 — 전역 메모리가 있으면 자동으로 삽입되고, 없으면 건너뜁니다.
  • 성능 비용 제로 — 고정 텍스트가 접두사 캐시에 참여하고 대기 시간에 영향을 주지 않습니다.
  • 업계 최초 — 포괄적인 경쟁사 연구 결과, 다중 에이전트 공유 메모리 시나리오에서 명령 경계 제어를 구현하는 다른 제품은 없음이 확인되었습니다.

메모리 GUI 관리

포괄적인 40개 이상의 구성 요소 대화형 GUI은 기존의 일반 텍스트 파일 접근 방식(예: MEMORY.md)을 대체합니다. 메모리 시스템의 모든 측면은 풍부한 시각적 인터페이스를 통해 관리할 수 있는 반면, Hermes Agent와 같은 경쟁업체는 대시보드에 메모리 관리 UI가 없습니다. 2,120개 이상의 전용 테스트(2,060개 백엔드 + 62개 프런트엔드 GUI)로 검증되었습니다.
  • 6개 탭 분류 — 즉각적인 탐색을 위한 보류, 전체, 컨텍스트, 공유, 회수 및 휴지통 보기
  • 풍부한 메모리 카드 — 각 메모리에는 유형 아이콘, 타임스탬프, 콘텐츠 미리 보기 및 작업 버튼(편집/삭제/승인)이 표시됩니다.
  • MemoryCommandCenter — 상태 점수, 작업 타임라인, 거버넌스 패널 및 진단을 포함한 전체 대시보드 관리(DoctorPanel)
  • 공유 컨텍스트 관리자 — 공유 지식 풀을 생성하고 이를 특정 에이전트 또는 채널에 바인딩하고 쓰기 제안을 검토하고 에이전트 간 지식 공유를 감사합니다.
  • 승인 대기열 — AI에서 추출된 모든 메모리는 검토 대기열을 거칩니다. 승인하기 전에 편집하고, 원치 않는 항목을 거부하거나 일괄 승인하세요. 보류 중인 각 메모리는 완전한 추적성을 위해 소스 대화로 다시 연결됩니다.
  • 덮어쓰기 방지 잠금 — 수동으로 편집한 규칙은 is_user_locked을 통해 자동으로 보호됩니다. 6개 모듈로 구성된 Skill Evolution Pipeline(추적 분석기 → 좌절 감지기 → 스크리너 → 추출기 → 수집기 → 변형 생성기)은 통합 중에 잠긴 규칙을 덮어쓰지 않습니다.
  • 3D 지식 그래프 — 성장 KPI 및 기술 추세와 함께 통합 /journey 학습 여정 페이지에 통합된 메모리 관계 및 연결의 대화형 시각화
  • 3방향 롤백 — 테스트 실행 미리보기를 통해 마이그레이션 가져오기, 통합 또는 아카이브 복원 실행 취소
  • 세션 재생 — 과거 대화를 재생하여 추억이 어떻게 사용되었는지 정확히 확인
  • 인용 소스 추적 — 상담원이 응답에서 추억을 인용하면 인용 카드에 원래 대화의 정확한 소스 메시지로 직접 이동하는 ‘원본 채팅에서 보기’ 링크가 표시됩니다. — ‘기억된 내용’에서 ‘어디에서 나온 내용’까지의 루프를 닫습니다.
  • 상태 대시보드 — 정량화된 점수를 통해 메모리 시스템 상태를 실시간으로 모니터링합니다.
  • 선호도 분석 — PreferenceStabilityCard 및 TasteSummaryCard는 AI가 사용자의 선호도를 얼마나 잘 이해하는지 보여줍니다.
  • 삽입 안전성 — 이중 계층 보호: sanitize()는 구조적 프레임 태그(tool_call, ChatML, CDATA)를 제거하고 유니코드 스푸핑 공격을 무력화한 다음 프롬프트에 삽입하기 전에 _escape_xml_item()이 XML 엔터티(&/</>)를 이스케이프합니다. 콘텐츠는 신뢰할 수 있는(사용자 구성) 레이어와 신뢰할 수 없는(AI 추출) 레이어로 물리적으로 분리되며 에이전트 지침이 메모리보다 우선한다고 선언하는 범위 경계를 사용합니다. 자동 콘텐츠 검사로 신속한 삽입 공격 탐지(CLEAN/WARN/REDACTED/BLOCKED)
  • 내보내기/가져오기 — 가져오기 전 테스트 실행 미리보기로 전체 메모리 내보내기(Claude Code, Claude, Cursor, Hermes, Codex 및 mem0을 포함한 14가지 형식, 11개 지원; Windsurf, Trae, MemWeaver는 개발 중)
  • 새 사용자 가이드 — 내장된 MemoryGuide가 처음 사용자에게 시스템을 안내합니다.
  • 메모리 버튼에 저장 — 원클릭으로 AI 응답을 채팅 작업 표시줄에서 직접 장기 의미 메모리에 저장할 수 있습니다. 3상태 피드백(유휴 → 저장 → 저장), 중복방지, 5개국어 i18n. 어떤 경쟁업체도 이 채팅 내 GUI 바로가기를 제공하지 않습니다.

메모리 상태

진단 시스템은 정량화된 상태 점수로 메모리 품질을 모니터링하고 실행 가능한 수리 권장 사항을 제공합니다. 14가지 형식에 대한 메모리 가져오기/내보내기, 아카이브 관리, IR 지표(NDCG, MRR, 정밀도)를 사용한 리콜 벤치마킹이 포함됩니다.

스토리지 탄력성

메모리 영구 저장은 임베디드 벡터 스토어에서 실행되며 Docker 의존성이 없습니다. 스토리지 계층은 실제 디스크 환경에서도 실패 대신 계속 작동합니다:
  • 자동 저하 — 디스크 공간이 부족하거나 디렉터리가 읽기 전용이거나 경로가 잠겨 있으면 스토어가 즉시 인메모리 모드로 전환됩니다. 메모리 쓰기와 검색은 계속 작동하고, 디스크가 복구되면 자동으로 영구 저장으로 돌아갑니다.
  • 경로별 싱글턴 — 모든 저장 경로는 정확히 하나의 프로세스 전역 스토어 인스턴스에 매핑되므로, 동시 에이전트가 파일 잠금 충돌을 일으키거나 스토어를 손상시킬 수 없습니다.
  • 저하 인스턴스 격리 — 인메모리 모드로 저하된 경우에도 각 경로는 자체 격리 스토어를 유지합니다. 별도 볼륨의 데이터가 서로 오염되지 않습니다.
  • 사용 후 소각 — 평가 실행 및 격리 워크스페이스의 일회용 메모리 볼륨은 명시적으로 정리됩니다(클라이언트 종료, 파일 핸들 해제). 디렉터리를 잔여물 없이 안전하게 제거할 수 있습니다.
이것이 바로 컨테이너, 읽기 전용 마운트, 용량 제한 샌드박스에서 메모리가 안정적으로 유지되는 이유입니다. 경쟁 메모리 시스템은 일반적으로 이러한 환경에서 시작 시 실패합니다.

지속성 가시성

Myrm은 “재시작하면 기억이 사라진다”는 사실을 절대 조용한 놀라움으로 만들지 않습니다. 메모리 커맨드 센터의 런타임 패널은 벡터 저장소의 실제 지속 상태를 세 가지 상태로 표시합니다 — 영구 저장(디스크 저장), 인메모리 폴백(메모리 모드로 저하: 이번 세션의 기억은 정상이지만 재시작하면 유실), 사용 불가(활성 벡터 저장소 없음). 저장소가 메모리 모드로 폴백되면 해당 행이 경고로 강조되어 재시작 전에 디스크/권한 문제를 먼저 해결하도록 알려줍니다. 동일한 스냅샷이 Doctor 패널의 벡터 인덱스 점검에도 사용되어 영향과 다음 단계를 설명합니다. 지속성은 프레임워크 계층에서 계약으로 정의되므로(벡터 저장소 추상화의 is_persistent 속성) 임베디드 Qdrant, 원격, 인메모리 등 모든 백엔드가 저장 모드를 추측하는 대신 사실대로 보고합니다.

데이터세트 내보내기

설정 페이지에서 직접 대화 추적을 업계 표준 미세 조정 데이터 세트로 내보냅니다.
  • 3가지 출력 형식: ShareGPT, Alpaca, OpenAI JSONL — LLaMA-Factory, Alpaca-LoRA 및 OpenAI 미세 조정과 호환 API
  • 12개 카테고리 PII 수정: 전화, 이메일, ID 카드, 은행 카드, 여권, 주소, SSN 등 — 유형 태그가 지정된 자리 표시자는 민감한 데이터를 제거하는 동시에 구조를 유지합니다.
  • 품질 필터링: 성공적이고 실질적인 대화만 내보내기(구성 가능한 성공 요구 사항, 최소 회전 수, 콘텐츠 길이)
  • 콘텐츠 중복 제거: SHA-256 해싱으로 중복 샘플을 자동으로 제거합니다.
  • 증분 내보내기: 상태 추적은 후속 실행 시 이미 내보낸 세션을 건너뜁니다.
  • 런타임 비용 없음: 순수 로컬 파일 처리, LLM 호출 없음, 성능에 영향 없음

개인 정보 보호 규칙 공유

민감한 정보를 노출하지 않고 절차적 메모리 규칙을 팀원이나 커뮤니티와 공유하세요. Myrm은 내보낸 콘텐츠를 자동으로 삭제합니다.
  • 경로 익명화: 홈 디렉터리 경로(/Users/alice/project)는 <USER>/project이 됩니다.
  • 자격증명 수정: API 키와 비밀은 안전한 접두사(sk-pro...f456)로 잘립니다.
  • 메타데이터 제거: 타임스탬프, 업데이트 횟수 및 내부 ID가 제거됩니다.
  • 범위 지정 내보내기: 상담원 ID로 필터링하거나 개별 규칙을 선택하여 관련 항목만 공유
  • 형식 옵션: 마크다운(사람이 읽을 수 있음) 또는 JSON(컴퓨터로 가져오기 가능), ZIP로 다운로드 가능
  • 실시간 미리보기: 공유하기 전에 삭제된 출력을 검사합니다. 보이는 내용이 내보내지는 내용입니다.
설정 → 메모리 → 공유 규칙(개인정보 보호)에서 액세스하거나 API: GET /api/v1/memory/operations/export/rules-safe을 통해 액세스합니다.

스마트 후속 추적(약속)

Myrm은 인터뷰에서 일정, 마감 기한, 건강 확인 등 대화에서 암묵적인 후속 의무를 자동으로 감지하고 구조화된 약속 파이프라인을 통해 이를 추적합니다.
  • 비동기 추출: 각 세션 후 LLM 패스는 대화를 차단하지 않고 약속을 식별합니다(4가지 종류: 이벤트 체크인, 마감일, 관리, 개방 루프; 3가지 민감도 수준: 루틴, 개인, 관리)
  • 신뢰도 게이팅: 신뢰도가 높은 약속만 통과합니다(임계값 ≥ 0.65, 관리 항목 ≥ 0.86) - 스팸 없음
  • 하트비트 전달: 각 하트비트 틱마다 에이전트의 상황 보고서에 적절한 약속이 주입됩니다.
  • 2단계 전달: 주입 시도를 등록합니다. 항목은 성공적인 하트비트 응답 후에만 전송으로 표시됩니다. 상담원이 [SILENT](보고할 내용 없음)으로 응답하면 해당 항목은 6시간 동안 일시 중지된 후 다시 시도되지만 닫히지는 않습니다.
  • GUI 관리: 설정 → 메모리 센터 → 후속 조치 탭에서 보기, 해제, 일시 중지(카드 UI, 상태 필터, 에이전트별 필터)
  • REST API: GET/PATCH /api/v1/memory/follow-ups — 나열, 해제, 다시 알림; 잘못된 상태 쿼리가 400을 반환합니다.
  • 72시간 자동 만료: 오래된 약정이 자동으로 정리됩니다(에이전트/사용자별로 범위 지정).
  • 24시간 롤링 기간: 알림 피로를 방지하기 위해 하루 최대 3개의 약정 알림
설정 → 메모리센터 → 후속 조치에서 접근하세요.

실시간 메모리 알림

상담원이 대화를 통해 자동으로 학습하면 Myrm은(는) 실시간 GUI 알림을 통해 계속해서 정보를 제공합니다.
  • 자동 추출 알림: 컨텍스트 압축으로 도구 호출 콘텐츠가 제거되면 하네스 프레임워크는 이를 백그라운드에서 장기 메모리로 추출합니다. 완료되면 토스트 알림이 나타납니다. “대화에서 N개 항목을 기억했습니다”
  • 제한 및 병합: 2초 이내에 여러 추출이 단일 알림으로 병합되어 경고 피로를 방지합니다.
  • 원클릭 검토: 모든 알림에는 메모리 센터로 직접 이동하는 “메모리 보기” 작업 버튼이 포함되어 있습니다.
  • 리콜 범위 업데이트: 대화 리콜 포함/제외가 변경되면 토스트에서 사람이 읽을 수 있는 설명으로 작업을 확인합니다.
  • 자동 실패: SSE 푸시가 실패하면 중단 없이 메모리 추출이 계속됩니다. 알림은 최선을 다해 차단되지 않습니다.
  • 5개 언어 i18n: 알림이 중국어, 영어, 일본어, 한국어, 독일어로 완전히 현지화되었습니다.
이를 통해 “시간이 지남에 따라 더욱 스마트해지는” 경험이 투명하고 신뢰할 수 있습니다. 사용자는 항상 에이전트가 학습한 내용을 알고 즉시 검토할 수 있습니다.

세션 노트 — 비용이 전혀 들지 않는 작업 연속성

대화가 압축이 필요할 만큼 길어지면 기존 접근 방식에서는 LLM을 사용하여 요약을 생성합니다. 즉, 토큰을 소비하고 중요한 세부 정보가 손실될 수 있습니다. Myrm은(는) 세션 노트(AI가 백그라운드에서 점진적으로 구축하는 구조화된 8섹션 인지 모델)를 유지 관리합니다. 압축이 필요한 경우 세션 노트는 이전 메시지를 추가 API 호출 없음으로 대체합니다. LLM 요약 생성이 필요하지 않습니다. 8개의 루프 감지 알고리즘과 7개의 도메인별 제안 생성기와 결합되어 목표 드리프트 없이 긴 작업이 제대로 진행되도록 보장합니다.

진화 다이제스트 - 행동 패턴 발견

Myrm은(는) 축적된 기억을 주기적으로 분석하여 자신이 인지하지 못했던 반복되는 습관, 진화하는 선호도, 감소 추세 등의 행동 패턴을 발견합니다. 작동 방식:
  1. 168시간마다(또는 “지금 분석” 버튼을 통해 요청 시) WebUI 기본 채팅 모델이 메모리 그래프를 검사합니다.
  2. 도구 선호도, 작업 흐름 습관, 의사소통 스타일, 주제 관심도, 일정 경향 등 5가지 범주에 걸쳐 패턴을 식별합니다.
  3. 각 패턴은 신뢰도(0-1) 및 지속성(신흥 → 확립 → 하락)에 따라 점수가 매겨집니다.
  4. 신뢰도가 높은 패턴이 표준 대기 승인 큐를 통해 자동으로 ProceduralRules로 승격되어 수동 구성 없이 AI를 더욱 스마트하게 만듭니다.
표시되는 내용: 성장 대시보드 → “Evolution Digest” 탭:
  • 확장 가능한 증거 요약이 포함된 카드 기반 패턴 목록
  • 내구성 배지(보라색 = 확립됨, 주황색 = 감소함, 회색 = 신흥)
  • 색상으로 구분된 지표를 사용한 신뢰도 점수
  • 발견된 각 패턴에 대해 실행 가능한 제안
  • 즉각적인 분석을 위한 수동 트리거 버튼
성숙 게이트: 패턴 발견은 50개 이상의 메모리가 축적되고 3개 이상의 통합 주기가 완료된 후에만 실행되므로 성급한 결론이 아닌 의미 있는 분석이 보장됩니다. 비용: 주 1회 분석에 WebUI에서 설정한 기본 대화 모델을 사용합니다(temperature=0 구조화 분석, max_tokens 4096). 비용은 선택한 모델에 따라 달라지며, 메모리 집합이 변경되지 않으면 LLM 호출을 자동으로 건너뛰어 비용이 발생하지 않습니다. 성장 대시보드 → Evolution Digest 탭에서 접속하세요.

실수로부터 자동 학습

기존 AI 비서는 매 세션마다 새로운 시작을 하며 동일한 실수를 반복합니다. Myrm에는 3중 레이어 자동 학습 기능이 내장되어 있습니다. 예시 흐름:
  1. “다시는 sudo를 사용하지 마세요”라고 말합니다 → bash_code_execute_tool에 바인딩된 중요한 규칙으로 즉시 캡처됩니다.
  2. AI가 잘못된 API을 사용함 → 이를 수정함 → 시스템이 source_error: "Used deprecated v1 API"을 저장함 + 올바른 접근 방식
  3. 다음 번 → 검색 시 자동으로 (avoid: Used deprecated v1 API) 라벨을 사용하여 이 수정 사항을 반환합니다.
  4. 오래된 메모리는 자동으로 90% 수준이 낮아져 다시 나타나지 않습니다.
안전망: 모든 강의 메모리는 AGENT 수준에서 범위가 지정되므로 각 페르소나는 교차 오염 없이 자신의 경험만 기억할 수 있습니다.

잊혀질 권리 — 캐스케이드 메모리 삭제

휴지통에서 채팅을 영구적으로 삭제하면 Myrm은 의미론적 사실, 에피소드 이벤트, 절차 규칙 및 보류 중인 검토 항목 등 해당 대화에서 파생된 모든 추억을 자동으로 제거합니다. 작동 방식:
  1. 사이드바에서 휴지통을 열고 영구 삭제할 채팅을 선택하세요.
  2. 확인 대화 상자에는 얼마나 많은 메모리가 영향을 받을지 정확하게 표시됩니다.
  3. 확인 시 채팅과 일치하는 source_chat_id 태그가 지정된 모든 메모리가 모든 저장소에서 제거됩니다(벡터 + 관계형).
이것이 중요한 이유:
  • 진정한 개인정보 보호: 채팅을 삭제하면 AI가 거기서 배운 내용을 완전히 잊어버립니다. 향후 응답에 영향을 미치는 “유령 기억”이 없습니다.
  • 깨끗한 테스트: 잘못된 기억으로 지식 기반을 오염시키지 않고 실험적인 채팅을 삭제합니다.
  • GDPR 준수: 잊혀질 권리의 정신을 구현합니다. 삭제는 철저하고 검증 가능합니다.
적용 범위: 대량 작업: 삭제되는 모든 채팅에 “휴지통 비우기” 기능이 계단식으로 적용되어 완전한 정리가 보장됩니다.

포함 구성

Myrm은(는) 기본적으로 7개 이상의 임베딩 공급자를 지원합니다. 설정 → 검색 → 포함에서 구성합니다. Ollama를 통한 로컬 임베딩 — 귀하의 데이터는 절대 귀하의 기기를 떠나지 않습니다. Ollama를 설치한 후 ollama pull nomic-embed-text(또는 다국어의 경우 bge-m3)을 실행한 다음 위와 같이 구성합니다.

모델 마이그레이션 내장

설정에서 임베딩 모델을 변경하면 이전에 저장된 메모리가 이전 모델의 벡터로 인코딩되며 새 모델에서 검색할 수 없습니다. Myrm은(는) 이를 투명하게 처리합니다.
  1. 자동 감지 — 새 임베딩 모델을 저장한 후 시스템은 “고아 컬렉션”(이전 모델에 저장된 메모리)을 검색합니다.
  2. 인라인 경고 — 고아 메모리가 발견되면 설정에 개수를 보여주는 황색 배너가 나타납니다.
  3. 원클릭 마이그레이션 — 새 모델을 사용하여 모든 고아 메모리를 다시 포함하려면 “마이그레이션”을 클릭하세요. 프로세스는 기존 내보내기/가져오기 파이프라인을 재사용합니다.
  4. 안전하고 되돌릴 수 있음 — 원본 컬렉션이 보존되므로(삭제되지 않음) 마이그레이션이 중단되더라도 데이터가 손실되지 않습니다.
  5. Memory Doctor 통합 — 상태 진단에 probe_orphan_collections 검사가 나타나 장기적인 인식을 보장합니다.
비용 참고 사항: 이전 시 구성된 임베딩 공급자를 통해 텍스트가 다시 삽입됩니다. 마이그레이션 전에 표시되는 추정치는 API 사용량을 예측하는 데 도움이 됩니다.