Memory Facts
경로: 좌측 사이드바 상단 ⋯ 메뉴 → Memory Facts 에이전트가 세션을 넘어 기억하는 사용자 컨텍스트(Facts) 를 관리합니다. 세션 중 대화에서 추출되거나 사용자가 직접 추가한 선호·배경 정보를 저장해 두면, 이후 세션에서 자동으로 프롬프트에 주입되어 일관된 답변을 생성합니다.
동작 원리 — 3 단계 파이프라인
Memory Facts 는 Extraction → Compaction → Injection 세 단계로 동작합니다.1. Fact Extraction (자동 추출)
백그라운드에서 세션별로 자동 팩트 추출. 사용자가 채팅 중 흘린 단서에서 장기 기억 후보를 뽑습니다.
- 예)
"나는 홍길동이야"·"나는 Dnotitia 에 다녀"→profile: name = 홍길동·profile: company = Dnotitia로 Fact 생성 - 사용자가 명시적으로 요청하지 않아도 자동으로 진행
- 세션별 Facts 로
Current Session탭에 누적
2. Fact Compaction (통합 압축)
전체 세션의 Facts + 기존 Compacted Facts 를 머지 해 새로운 Compacted Facts 를 생성합니다. 이 과정에서 원본 세션 Facts 는 제거 되고 통합본만 남습니다.
- 중복 제거·모순 해소·요약 통합
All Sessions→Compacted로 이동- 장기 기억의 단일 소스가 Compacted 로 일원화
핵심 이해
- 대화 → 자동 Extraction →
Current Session탭 - Compaction 실행 → 원본 제거 +
Compacted탭에 통합 결과 남음 - Injection ON → Compacted 가 실제 답변에 사용됨 (OFF 면 저장만 됨)
탭 구성
| 탭 | 내용 |
|---|---|
| Current Session | 현재 선택된 세션에서 추출·저장된 Facts — 세션 미선택 시 Select a session to view its facts 안내 |
| All Sessions | 계정의 모든 세션 에 걸쳐 누적된 전체 Facts — 카테고리 또는 토픽별 그룹 |
| Compacted | 중복·유사 Fact 를 압축(Compact) 한 결과. Topic view ↔ Category view 토글 가능 |
| Statistics | 카테고리별 Fact 수·저장 용량·압축 효과 등 통계 |
카테고리 구조
Facts 는 카테고리로 분류되어 저장됩니다.| 대표 카테고리 | 예시 |
|---|---|
| profile | timezone: Asia/Seoul / language: ko |
| preferences | code style: prefer TypeScript / report format: Markdown |
| team | team uses Slack / team size: 5 |
| projects | working on Seahorse Cloud / repo: seahorse-saas-web |
| tools | preferred IDE: VSCode |
Current Session 탭
현재 세션이 생성·수정한 Facts 만 표시. 카테고리별 아코디언으로 그룹핑.- 세션 미선택 → 안내 메시지
- Facts 없음 → 빈 상태 안내 (대화 중 점진적으로 자동 수집)
All Sessions 탭
계정 전체의 누적 Facts. 세션을 거듭할수록 축적됩니다.- 카테고리별 확장/축소 — 각 카테고리 옆 카운트 표시
- Source 구분 —
auto(에이전트 자동 추출) vsmanual(사용자 입력) - 개별 Fact 의 수정·삭제 가능
Compacted 탭
중복·유사 Facts 를 통합 압축 한 결과. LLM 컨텍스트 절약과 일관성 유지가 목적.| View | 설명 |
|---|---|
| Topic | 주제별 — 같은 주제(예: 프로젝트 이름, 팀 구성)로 합쳐진 Facts |
| Category | 카테고리별 — 공식 카테고리 기준 정렬 |
- 상단 버튼으로 수동 실행 또는 정기적으로 자동 수행
- 압축 전/후 Fact 수, 절감률이
compactResult로 표시
Compact 가 필요한 이유: 세션이 누적되면
timezone: Asia/Seoul 같은 동일 Fact 가 여러 세션에서 중복 생성됩니다. Compact 는 중복을 병합하고 모순되는 Fact(language: ko vs language: en)를 최신으로 정리합니다.Statistics 탭
| 지표 | 의미 |
|---|---|
| Total Facts | 전체 저장 Fact 수 |
| Category 분포 | 카테고리별 카운트·비율 |
| 세션별 생성량 | 세션당 평균 Fact 수 |
| Compact 효과 | 압축 전/후 수량 절감률 |
| Source 비율 | auto vs manual |
Fact 적용 시점
에이전트 응답 생성 직전, 관련 Fact 가 프롬프트에 자동 주입 됩니다. 예) 사용자가보고서 작성해줘 라고 하면:
preferences: report format = Markdown가 주입profile: language = ko가 주입- 에이전트가 한국어 Markdown 보고서를 생성
운영 주의
관련 문서
- Prompt Settings — 시스템 프롬프트 (Facts 보다 상위 계층)
- Display Settings — 화면 테마·블록 표시
- Language Settings — 언어 목록