AI 에이전트가 대화와 작업 경험을 기억하고, 다음 세션에서 그 기억을 꺼내 쓸 수 있게 하는 기술. 일회성 챗봇을 개인화되고 자기 개선하는 시스템으로 바꾸는 핵심 요소다.
LLM은 기본적으로 기억력이 없다. 대화가 끝나면 모든 걸 잊는다. 어제 "Python으로 작성해 줘"라고 했던 것도, 지난주에 함께 디버깅했던 프로젝트 구조도 매번 처음부터 다시 설명해야 한다. 에이전트 메모리는 이 문제를 해결한다.
사람의 기억처럼 에이전트 메모리도 여러 종류가 있다. 단기 메모리는 지금 진행 중인 대화의 맥락으로, 컨텍스트 윈도우가 이 역할을 한다. 장기 메모리는 세션이 끝나도 사라지지 않는 기억이다. "이 사용자는 TypeScript를 선호한다" 같은 의미 메모리, "지난번 배포에서 환경 변수 빠뜨려서 롤백했다" 같은 에피소드 메모리가 있다.
Claude Code에서는 CLAUDE.md가 가장 기본적인 메모리 역할을 한다. 프로젝트 규칙, 코딩 컨벤션, 아키텍처 결정을 적어 두면 매 세션 시작 시 자동으로 읽는다. Mem0는 코드 한 줄로 에이전트에 장기 기억을 추가할 수 있는 오픈소스 인프라로, 대화에서 자동으로 중요한 정보를 추출해서 벡터 DB + 그래프 메모리에 저장한다.
Hermes Agent는 여기서 한 발 더 나아간다. 복잡한 문제를 풀면 그 과정을 자동으로 스킬 문서로 만들어 저장한다. 다음에 비슷한 문제가 생기면 기억 속 스킬을 꺼내 쓰는 식이다. 쓸수록 똑똑해지는 에이전트를 만드는 것이 에이전트 메모리의 궁극적인 목표다.
기억이 많다고 좋은 건 아니다. 오래되거나 틀린 기억을 꺼내 쓰면 오히려 성능이 떨어진다. 어떤 정보를 저장할지, 언제 업데이트하거나 삭제할지를 판단하는 메모리 관리 전략이 메모리 저장 자체보다 더 어려운 문제다.