피드로 돌아가기
Your AI agent already writes every session to disk. Why isn't it reading its own archive?
Dev.toDev.to
AI/ML

NativeAOT 기반 Hook으로 2.5만 건 아카이브 자동 컨텍스트 주입 구현

Your AI agent already writes every session to disk. Why isn't it reading its own archive?

Mark McArthey2026년 4월 25일7intermediate

Context

AI Agent가 세션 데이터를 디스크에 저장함에도 불구하고, 컨텍스트 윈도우 제한으로 인해 과거 의사결정 사항을 망각하는 현상 발생. 기존 시스템은 과거 데이터를 수동 검색(grep)해야 하는 구조적 한계로 인해 동일한 설계 오류가 반복되는 비효율 초래.

Technical Solution

  • JSONL 형식의 세션 로그를 SQLite FTS5 기반으로 인덱싱하여 빠른 키워드 검색 성능 확보
  • Ollama의 nomic-embed-text 모델을 활용한 Semantic Rerank 레이어 추가로 단순 키워드 매칭을 넘어선 개념적 유사도 검색 구현
  • UserPromptSubmit Hook을 통한 실시간 메시지 가로채기 및 검색된 과거 컨텍스트의 additionalContext 자동 주입 구조 설계
  • Python 인터프리터 실행 오버헤드 제거를 위해 NativeAOT로 컴파일된 바이너리 형태의 Hook 적용으로 UX 저하 방지
  • 원본 데이터 무결성 보장을 위한 Read-only 아카이브 접근 정책 및 Hook 장애 시 기본 프롬프트를 전송하는 Graceful Degradation 설계
  • 인덱싱 비용 최소화를 위해 별도의 쓰기 저장소 없이 기존 로그 파일만을 소스로 사용하는 Passive Hook 전략 채택

1. 대량의 텍스트 데이터 검색 시 FTS5(키워드)와 Embedding(의미)을 결합한 하이브리드 검색 구조 검토

2. 런타임 오버헤드가 민감한 Hook 시스템 설계 시 인터프리터 언어 대신 Native 컴파일 바이너리 사용 고려

3. 외부 확장 기능 도입 시 메인 프로세스에 영향을 주지 않는 Graceful Degradation 메커니즘 필수 적용

4. 데이터 무결성이 중요한 시스템에서 원본 소스는 Read-only로 유지하고 인덱스 저장소를 분리하는 전략 적용

원문 읽기