Gentleman-Programming/engram
Go0 / 0
AI 코딩 에이전트를 위한 단일 바이너리 영속 메모리 CLI
TL;DR
Engram은 MCP 호환 AI 에이전트에 영속적 로컬 브레인을 제공하는 Go 기반 단일 바이너리 도구로, SQLite+FTS5에 관측을 저장하고 CLI·HTTP·MCP·TUI로 접근할 수 있습니다. 기본적으로 stdio 기반 MCP를 통해 에이전트가 short-lived subprocess로 engram mcp를 실행하여 세션 간 기억을 유지하며, engram serve는 선택적으로 HTTP 세션 수집이나 Pi/OpenCode 플러그인 지원에 사용합니다. 네트워크 MCP 엔드포인트는 제공하지 않고 serve는 기본으로 127.0.0.1에 바인드되므로 컨테이너화된 에이전트는 바이너리 마운트나 추가 설정이 필요합니다. 로컬 우선, 의존성 없음, Git 기반 안전한 동기화와 선택적 클라우드 복제로 멀티머신 공유가 가능하므로 MCP 에코시스템을 사용하고 로컬 영속성이 중요한 개발자에게 적합합니다.
핵심 포인트
- 레포지토리 종류는 독립 실행형 CLI 도구 겸 데몬형 서버이며 주요 사용 사례는 AI 코딩 에이전트용 영속 메모리입니다. 구현은 Go로 되어 있고 단일 바이너리로 배포되어 별도 런타임 의존성이 없습니다. MCP(Memory Control Protocol) 생태계와 직접 연동하도록 설계되어 Claude Code, OpenCode, Gemini CLI, Codex, VS Code(Copilot) 등 MCP를 지원하는 에이전트와 함께 사용할 수 있습니다.
- 동작 방식은 에이전트가 MCP를 통해 mem_save/mem_search 같은 도구를 호출하면 Engram이 SQLite + FTS5에 관측(observation)을 인덱싱하고 다음 세션에서 관련 컨텍스트를 검색해 전달하는 순서입니다. 표준적인 실행 경로로는 engram mcp(한번 실행되는 stdio 서브프로세스), engram serve(HTTP API, 기본 127.0.0.1:7437), engram tui(터미널 UI)와 engram sync(파일/깃 기반 복제)가 있습니다. 로컬 SQLite가 권위 저장소이고 클라우드는 선택적 복제 계층이며, Git chunk 기반 동기화와 opt-in 클라우드 복제로 여러 기기 간 공유가 가능합니다.
- 운영상 제약과 설치 편의성도 README에 명확히 정리되어 있습니다. MCP transport는 기본적으로 stdio 전용이라 네트워크로 직접 접근할 수 없고, engram serve는 기본적으로 루프백에 바인드되어 컨테이너에서 바로 접근이 불가능한 점을 고려해야 합니다. 반대로 장점은 원클릭 설치(예: brew), 종속성 없음, 단일 SQLite 파일(~/.engram/engram.db)로 로컬 우선 운영이 가능하다는 점입니다.
- 확장·관리 기능으로는 20개의 MCP 도구(mem_save, mem_search, mem_session_*, mem_conflicts 등), 세부 클라우드 업그레이드/복구 명령, 충돌 감지·심판(semantic judge) 베타 기능과 Obsidian export 같은 실험적 플러그인이 포함되어 있습니다. 클라우드 모드는 프로젝트 스코프이며 교정(repair)/doctor 워크플로우로 실패를 수동 복구할 수 있도록 설계되어 있습니다. 이 레포는 커뮤니티 지표(Stars: 5844, Forks: 619)도 갖추고 있어 실사용 사례가 다수 있는 편입니다.
이미지 분석



5.8k
Stars
619
Forks
+204
Trending
0
조회수
5.8k watchers156 open issues
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.