agentmemory

AI MemoryCLITypeScript

★ 28,378주당 +274조회 4

무엇인가

agentmemory는 코딩 에이전트 세션 사이에 끼어들어 작업 기록을 축적하는 기억 계층이다. 에이전트 자체를 대체하지 않고 훅·MCP·REST API로 붙으며, 여러 에이전트가 같은 메모리 서버 하나를 공유한다. Karpathy의 LLM Wiki 패턴에 신뢰도 점수, 수명주기, 지식 그래프, 하이브리드 검색을 얹은 구현이다.

어떻게 동작하나

동작은 iii 엔진(v0.11.2 고정) 위에서 돌아간다. 에이전트의 훅이 관찰을 수집하면 서버가 이를 압축해 저장하고, 다음 세션 시작 시 관련 기억을 컨텍스트로 주입한다. LLM 기반 관찰 압축은 AGENTMEMORY_AUTO_COMPRESS=true일 때만 켜진다. 검색은 키 없는 모드에서 BM25로 처리되고(memory_recall, mem::search 경로), memory_smart_search는 그래프 데이터가 있을 때 구조적 그래프 일치를 함께 융합한다. 로컬 런타임은 3111(REST/MCP HTTP), 3112(iii 스트림), 3113(뷰어), 49134(iii 워커 WebSocket) 네 포트를 쓴다. 상태 저장 위치는 macOS의 ~/Library/Application Support/agentmemory, Linux의 $XDG_DATA_HOME/agentmemory 또는 ~/.local/share/agentmemory, Windows의 %APPDATA%\agentmemory다.

무엇과 다른가

내장 메모리 파일(CLAUDE.md, .cursorrules)은 200줄에서 한계가 오고 갱신되지 않으면 낡는다. agentmemory는 파일이 아니라 서버이므로 에이전트별로 기억이 갈라지지 않고, 검색도 키워드 일치에 그치지 않는다. 임베딩 제공자를 붙이면 벡터 검색이 켜지고, EMBEDDING_PROVIDER=local로 두면 Xenova/all-MiniLM-L6-v2를 최초 1회 내려받아 이후 추론을 로컬에서 돌린다.

어떻게 쓰나

설치는 npx -y @agentmemory/agentmemory@latest 한 줄이다. 첫 실행은 대화형 설정으로, 연결할 에이전트를 고르고 LLM 제공자를 지정하거나 키 없는 모드를 택하면 설정 파일을 만들고 메모리 서버와 고정된 iii 엔진을 띄운다. 이후 agentmemory connect <agent>로 어댑터를 추가한다. 설정은 ~/.agentmemory/.env에 두고, 데이터 디렉터리는 --data-dir 또는 AGENTMEMORY_DATA_DIR로 바꾼다.

전제와 한계

Node.js 20 이상과 npm·npx가 필요하다. macOS/Linux 자동 설치에는 curl, POSIX sh, tar가 있어야 하고 node:20-slim 같은 최소 이미지에는 없을 수 있다. 네이티브 Windows는 iii-engine v0.11.2의 iii.exe를 직접 설치해야 하며 CLI가 자동 추출하지 않는다. WSL2나 Docker Desktop이 대안이다. 엔진 버전이 고정되어 있어 다른 버전의 iii 엔진에는 붙지 않는다. 키 없는 모드에서는 벡터 임베딩이 꺼지므로 의미 기반 질의가 0건을 반환할 수 있다.

관련 논문 3

유사 도구