AI 뉴스

AI 에이전트 프로젝트 기억 공유 도구 memorize 공개 — 로컬 우선 오픈소스

노동1호 2026. 6. 11. 06:07
memorize — AI 에이전트 프로젝트 기억 공유

에이전트 개발자라면 한 번쯤은 겪어봤을 겁니다. 모델을 Opus에서 GPT로 갈아끼울 때마다 작업 컨텍스트가 사라지는 일, 데스크톱에서 진행하던 작업을 노트북으로 옮기면 또다시 맥락을 복구해야 하는 일. shakystar 개발자가 공개한 오픈소스 memorize는 이런 문제를 정면으로 다룹니다. 프로젝트 자체가 기억을 갖게 하는 로컬 우선 도구로, 서버 없이 여러 머신에서 같은 상태로 수렴하는 것이 핵심입니다. AI 코딩 도구들이 쏟아지는 지금, 어떤 도구를 쓰든 작업 기억이 사라지지 않는 인프라가 절실합니다.

memorize가 풀어내는 문제

기존 에이전트 메모리 기능은 두 가지 한계가 있었습니다. 세션이 끝나면 컨텍스트가 죽고, 한 머신에 갇혀 있다는 점입니다. memorize는 프로젝트 단위로 기억을 영속화해서 모델을 바꿔도, 기기를 옮겨도 같은 작업 기억을 이어 씁니다. 데스크톱에서 시작해 노트북으로 이어받는 협업 흐름이 자연스럽게 동작합니다. API 키도 따로 필요 없습니다.

통합에 쓸 LLM이 이미 로그인된 claude -pcodex exec 호출을 그대로 활용하기 때문에, 별도 결제로 작동합니다. 결과적으로 메모리 통합에 들어가는 운영비가 사실상 0원이 됩니다. 이미 결제한 구독 안에서 모든 처리가 끝나며, 환경 변수로 통합 깊이 같은 옵션을 조정할 수 있습니다.

핵심 설계 — 2층 메모리 구조

memorize는 뇌의 이중 학습계(CLS)에서 아이디어를 빌려왔습니다. 해마층(작업 중 캡처)에서는 LLM 없이 규칙 필터로 관측만 캡처하기 때문에 체감 지연이 0입니다. 신피질층(세션 경계 통합)에서는 백그라운드 프로세스에서 한 번 통합하므로 에이전트를 1초도 막지 않습니다.

실제 dogfooding 기준, 한 세션 분량 관측 44건을 백그라운드 호출 1번(약 30초)에 통합했고, 세션 시작 주입은 4,000자 예산 안의 텍스트라 토큰 부담이 거의 없습니다. 캡처는 규칙 필터라 지연이 없고, LLM 호출은 분리된 백그라운드에서 돌아 메인 에이전트를 막지 않습니다. 통합 작업이 실패하면 워터마크가 이전 상태로 남고 다음 세션에서 같은 구간을 재시도합니다. 무한 재귀도 환경 변수 가드로 끊어두어 통합이 자기 자신을 무한히 호출하는 사고를 방지합니다.

망각 메커니즘과 서버 없는 동기화

memorize에서 기억은 절대 지워지지 않습니다. 망각은 인출 시점에 일어나는 일입니다. 중요도 × 반감기 14일 최신성 × 작업 관련성 점수가 낮은 기억이 자연스럽게 묻히는 구조라, 과거에 유효했던 정보는 "그때는 참이었다" 형태로 복원 가능합니다. 일반적인 캐시와 본질적으로 다른 차이가 바로 이 지점입니다.

append-only 이벤트 로그를 동기화하면 시계 동기화 없이도 모든 머신이 같은 상태로 수렴합니다. 두 머신이 동시에 같은 구간을 통합해도 결정론적 규칙이 같은 승자를 뽑기 때문에 충돌이 없습니다. 출처 기반 dedup이 워터마크 손실 시에도 중복 통합을 막아줍니다. Git이 코드 협업에 가져온 분산 워크플로우를 기억 영역에 그대로 적용한 셈입니다.

임베딩은 후보 회수까지만 — LLM이 판정

"머지해라"와 "머지하지 마라"는 벡터 공간에서 거의 같은 위치에 떨어집니다. 코사인 유사도만으로는 모순을 못 잡는다는 뜻입니다. memorize는 임베딩을 후보 회수 단계에서만 쓰고, 최종 판정은 LLM이 담당합니다. 이 점이 다른 메모리 도구와 가장 다른 차별점이며, 단순한 검색 랭킹을 넘어선 의미 단위 판정이라 할 수 있습니다.

단순한 부정문 매칭이 아닌 의미 단위 판정이라, 맥락에 따라 "이전과 다른 결론"인지 "이전의 보충"인지 구분 가능합니다. 결과적으로 통합 실패율이 크게 떨어지고, 불필요한 알림도 줄어듭니다. LLM이 후보를 평가할 때는 작업 관련성 점수와 일관성을 동시에 따져 가장 합리적인 기억만 살아남습니다. 모순 후보로 분류된 기억은 자동으로 격리되어 사용자의 명시적 검토를 기다립니다.

병렬 세션 공유와 도움 요청

같은 프로젝트에서 동시에 도는 세션끼리 서로의 작업을 봅니다. 같은 파일을 만지면 즉시 충돌 경고가 뜨기 때문에, 여러 에이전트가 협업할 때 사고를 미연에 방지할 수 있습니다. 데스크톱과 노트북, 혹은 여러 동료의 머신이 동시에 같은 프로젝트를 굴려도 각 세션은 서로의 진행 상황을 실시간으로 파악합니다.

기억 분류 체계를 미리 정해두지 않습니다. 기억마다 관찰 전용 수명 필드와 행동 텔레메트리(언제 주입됐나, 언제 무효화됐나)를 몇 주간 모은 뒤, 데이터로 결정합니다. 이 논쟁 전체가 GitHub Discussions에 공개돼 있어 외부 개발자도 검증과 제안에 참여할 수 있습니다. 이론이 아니라 실측 데이터가 분류 체계를 만들어가는 구조입니다.

설치는 한 줄입니다.

curl -fsSL https://raw.githubusercontent.com/shakystar/memorize/... | sh

shakystar 개발자는 출시 전 하루 동안 이 도구 자체로 memorize의 설계 토론, 구현, 배포까지 진행했습니다. 즉 이 도구가 지향하는 협업 방식 그대로를 dogfooding으로 검증한 셈입니다. 에이전트와 "기억 분류에 태그가 맞나, 뇌에는 태그가 없는데" 같은 설계 토론을 GitHub Discussions와 이슈로 박제하고, 합의된 부분을 구현 PR로 머지하는 전형적인 dogfooding 사이클이 그대로 돌아갔습니다.

Windows와 WSL/Linux는 실기기 검증을 마쳤지만, macOS는 풀 사이클 검증이 아직 안 끝났다고 합니다. CI 테스트는 통과하지만, 한 줄 설치부터 훅, 세션 시작 주입까지의 통합 흐름은 실기기에서만 보이는 버그가 있을 수 있습니다. macOS 사용자가 설치해보고 결과를 이슈나 댓글로 남겨주면 큰 도움이 됩니다. Cursor, Gemini CLI, Windsurf 같은 다른 에이전트 어댑터 훅 구조에 대한 제보도 환영합니다. 검증 과정에서 발견된 사소한 버그들도 큰 도움이 됩니다.

AI 에이전트가 협업 단계로 접어들면서, 작업 기억의 공유는 선택이 아니라 필수가 되고 있습니다. memorize는 서버 없이 동작하는 로컬 우선 설계로 이 문제를 풀어낸 점에서 의미가 큽니다. 벤더 종속 메모리가 표준이 되기 전에, 벤더 중립적인 대안으로 자리잡을지 주목할 만합니다. Git이 코드에 해준 일을 에이전트의 기억에도 해내겠다는 비전은 작아 보이지만 장기적으로는 인프라에 가까운 변화를 예고합니다.