본문 바로가기
인공지능 (AI,GPT)

Claude Memory + Auto Dream + 작업 로그: AI가 프로젝트 전문가 구조

by 날으는물고기 2026. 3. 26.

Claude Memory + Auto Dream + 작업 로그: AI가 프로젝트 전문가 구조

728x90

Claude 계열 AI의 메모리 시스템은 어떻게 진화하고 있을까?

Auto Memory, Auto Dream, 그리고 작업 기록 축적형 메모리 시스템의 차이와 조합

AI 에이전트를 실무에 쓰다 보면 가장 자주 부딪히는 문제가 있습니다.
바로 “이전 세션에서 무엇을 했는지 잊어버린다”는 점입니다.

단발성 질문에는 괜찮지만, 코드 분석·프로젝트 운영·장기적인 자동화 작업처럼 시간이 길어질수록 AI는 맥락을 잃기 쉽습니다. 그래서 최근에는 AI가 단순히 대화를 이어가는 수준을 넘어서, 기억을 저장하고, 정리하고, 다음 세션에 다시 불러오는 메모리 시스템이 중요한 주제로 떠오르고 있습니다.

  1. Auto Memory: 무엇을 알게 되었는가
  2. Auto Dream: 기억을 어떻게 정리하고 유지하는가
  3. claude-mem 같은 작업 기록형 메모리 시스템: 무엇을 했는가를 어떻게 축적하는가

왜 AI에게 메모리가 중요한가

세션형 AI의 한계

일반적인 AI 대화는 세션이 끝나면 맥락이 사라집니다.
즉, 매번 처음부터 다시 설명해야 하고, 이전에 어떤 파일을 열어봤는지, 어떤 구조를 파악했는지, 어떤 판단을 내렸는지를 다시 이어가기 어렵습니다.

이 문제는 특히 다음과 같은 상황에서 크게 드러납니다.

  • 여러 서비스가 연결된 복잡한 프로젝트
  • 여러 날에 걸쳐 진행하는 장기 작업
  • 코드를 분석하고 수정하는 반복 작업
  • 보안 점검이나 사고 대응처럼 누적 맥락이 중요한 업무

이럴 때 AI는 매번 새로 시작하는 것처럼 보이기 때문에, 사용자는 같은 설명을 반복해야 하고 AI는 이미 파악한 구조를 다시 읽어야 합니다.

메모리가 있으면 무엇이 달라지는가

메모리가 있으면 AI는 단순히 “대화”를 하는 것이 아니라, 작업의 흐름을 이어가며 지식을 축적하는 도구처럼 동작할 수 있습니다.

예를 들면 다음과 같습니다.

  • 이전 세션에서 분석한 서비스 구조를 다시 활용
  • 자주 등장하는 파일, 모듈, 규칙을 기억
  • 반복되는 패턴을 더 빨리 찾아냄
  • 새 세션에서도 바로 이어서 작업 가능

즉, 메모리는 AI에게 기억력을 주는 것이 아니라, 실무에서는 사실상 프로젝트 이해력과 재현성을 주는 장치라고 볼 수 있습니다.

Auto Memory: “무엇을 알게 되었는가”를 기억하는 방식

Auto Memory는 쉽게 말하면 AI가 대화와 작업을 통해 알게 된 사실을 저장하는 기능입니다.

어떤 정보를 저장하는가

보통 이런 정보들이 대상이 됩니다.

  • 프로젝트의 핵심 구조
  • 자주 쓰는 규칙이나 제약
  • 특정 도메인의 개념 정의
  • 반복되는 선호사항
  • 장기 작업에 필요한 핵심 사실

예를 들어, AI가 어떤 시스템의 아키텍처를 설명해두었다면 다음 세션에서도 그 구조를 기억해 더 빠르게 이어갈 수 있습니다.

장점

장기 프로젝트에 유리함

한 번 학습한 내용을 다음 세션에서 다시 활용할 수 있어 작업 효율이 올라갑니다.

반복 설명을 줄일 수 있음

매번 배경 설명을 다시 하지 않아도 됩니다.

점진적으로 더 똑똑해짐

쌓인 기억이 많아질수록 더 일관성 있는 답변이 가능해집니다.

단점

정보가 많아질수록 노이즈가 쌓일 수 있음

중요하지 않은 정보까지 계속 남으면 오히려 혼란이 생깁니다.

오래된 정보와 최신 정보가 충돌할 수 있음

예전 구조를 기억하고 있어서 최신 변경 사항을 반영하지 못할 수 있습니다.

저장 기준이 불명확하면 품질이 떨어짐

무엇을 기억하고 무엇을 버릴지 기준이 없으면 메모리의 품질이 낮아집니다.

Auto Dream: “기억을 정리하는 과정”이 왜 필요한가

Auto Memory가 기억을 쌓는 기능이라면, Auto Dream은 그 기억을 정리하고 다듬는 기능으로 이해할 수 있습니다.

이 개념은 인간의 수면 중 기억 정리와 비슷한 방식으로 설명되곤 합니다.
즉, 낮 동안 쌓인 정보 중 중요한 것은 강화하고, 오래되었거나 불필요한 것은 줄이며, 모순되는 내용은 정리하는 역할입니다.

왜 메모리 정리가 필요한가

기억은 단순히 많다고 좋은 것이 아닙니다.
오히려 시간이 지나면 다음과 같은 문제가 생깁니다.

  • 중복된 정보가 누적됨
  • 오래된 정보가 최신 정보와 충돌함
  • 중요도가 낮은 정보가 핵심을 가림
  • 검색해야 할 정보가 너무 많아짐

즉, 메모리는 축적만으로는 부족하고, 정리와 압축이 함께 있어야 품질이 유지됩니다.

Auto Dream의 일반적인 동작 흐름

Auto Dream은 보통 다음과 같은 단계로 이해할 수 있습니다.

현재 메모리 상태 확인

저장된 메모리를 전체적으로 훑어봅니다.
어떤 주제가 있고, 어떤 기록이 최근인지, 무엇이 반복되는지 파악합니다.

중요한 정보와 불필요한 정보를 구분

지속적으로 유효한 정보는 유지하고, 오래되었거나 쓸모가 줄어든 정보는 정리합니다.

통합 및 충돌 해결

비슷한 내용을 합치고, 중복을 제거하고, 최신 정보로 업데이트합니다.
서로 충돌하는 내용이 있으면 더 최근이거나 신뢰도 높은 쪽으로 정리합니다.

Auto Dream의 장점

메모리 품질 유지

저장된 정보가 많아도, 정리 과정을 통해 품질이 유지됩니다.

노이즈 감소

불필요한 정보가 줄어들어 검색 효율이 올라갑니다.

장기 프로젝트에 안정적

세션이 길어질수록 오히려 더 정돈된 메모리를 유지할 수 있습니다.

주의할 점

중요한 기록이 삭제될 수 있음

자동 정리 로직이 너무 공격적이면 중요한 맥락이 사라질 수 있습니다.

보안 흔적이 지워질 수 있음

사고 분석이나 감사를 위한 정보는 자동 삭제 대상에서 제외해야 합니다.

정리 기준이 불투명하면 신뢰하기 어려움

왜 남고 왜 삭제됐는지 설명 가능해야 운영에 쓸 수 있습니다.

작업 기록형 메모리 시스템: “무엇을 했는가”를 기억하는 방식

Auto Memory가 무엇을 알게 되었는가라면, 작업 기록형 메모리 시스템은 무엇을 했는가를 기억합니다.

이 방식은 특히 AI가 파일을 읽고, 명령을 실행하고, 분석 결과를 쌓는 작업에서 매우 유용합니다.

왜 작업 이력이 중요한가

실무에서는 단순한 지식보다 다음 정보가 더 중요할 때가 많습니다.

  • 어떤 파일을 읽었는가
  • 어떤 명령을 실행했는가
  • 어떤 순서로 분석했는가
  • 어떤 근거로 결론을 냈는가
  • 어떤 세션에서 어떤 판단이 나왔는가

이런 정보가 있어야 나중에 다시 같은 작업을 이어갈 수 있고, 문제가 생겼을 때 원인 추적도 가능합니다.

작업 기록형 시스템의 장점

빈틈없는 작업 이력 확보

AI가 실제로 무엇을 했는지 남기므로 재현성과 추적성이 높아집니다.

다음 세션 복원이 쉬움

이전 세션의 결과를 요약해서 다음 세션 시작 시 다시 주입할 수 있습니다.

자연어 검색 가능

“지난주에 어떤 버그를 고쳤지?” 같은 질문에 답할 수 있게 됩니다.

1회성 분석이 아니라 누적형 분석이 가능

작업이 쌓일수록 프로젝트에 대한 이해도가 올라갑니다.

토큰 효율적 운영 가능

필요한 정보만 점진적으로 드러내는 방식으로 사용할 수 있습니다.

단점

서드파티 의존

공식 기능이 아니라면 외부 도구에 의존하게 됩니다.

추가 런타임과 구성 필요

SQLite, 벡터 DB, 런타임 등 별도 환경이 들어갈 수 있습니다.

저장 공간이 증가할 수 있음

도구 실행 로그와 세션 요약이 많아질수록 저장량이 커집니다.

캡처가 많아질수록 민감정보 위험이 커짐

비밀번호, 토큰, 내부 URL, 민감 로그가 함께 기록될 수 있습니다.

Auto Memory, Auto Dream, 작업 기록형 메모리의 차이

이 셋은 비슷해 보이지만 역할이 다릅니다.

구분 역할 기억하는 내용 강점
Auto Memory 장기 기억 저장 무엇을 알게 되었는가 핵심 지식 유지
Auto Dream 기억 정리 기억을 어떻게 정리할 것인가 노이즈 제거, 충돌 해결
작업 기록형 메모리 작업 이력 축적 무엇을 했는가 재현성, 추적성, 검색성

핵심은 이렇습니다.

  • Auto Memory는 지식을 저장하고
  • Auto Dream은 그 지식을 정리하며
  • 작업 기록형 메모리는 실제 작업 과정을 남깁니다

즉, 셋은 경쟁 관계가 아니라 레이어가 다른 보완 관계입니다.

둘을 함께 쓰면 왜 더 강해지는가

이 조합이 유용한 이유는 서로 커버하는 영역이 다르기 때문입니다.

Auto Memory + Auto Dream

이 조합은 AI가 무엇을 알고 있고, 그 지식을 얼마나 깨끗하게 유지하는지를 담당합니다.

  • 프로젝트 핵심 사실 유지
  • 오래된 정보 정리
  • 중복 제거
  • 컨텍스트 품질 유지

즉, 지식의 품질 관리에 강합니다.

작업 기록형 메모리

이쪽은 무엇을 했는지를 중심으로 남깁니다.

  • 어떤 파일을 봤는지
  • 어떤 명령을 썼는지
  • 어떤 경로로 문제를 풀었는지
  • 어떤 세션에서 어떤 판단을 했는지

즉, 작업의 기억 보관에 강합니다.

함께 쓸 때의 효과

둘을 함께 쓰면 다음과 같은 구조가 만들어집니다.

  1. 작업 과정은 상세하게 남기고
  2. 그중 핵심 사실은 메모리로 추출하고
  3. 시간이 지나면 Auto Dream이 정리해
  4. 다음 세션에서는 다시 깨끗한 맥락으로 시작

이 방식은 장기 프로젝트에서 매우 강력합니다.
왜냐하면 AI가 단순히 “기억하는 것”을 넘어서, 기억을 관리하면서 작업을 이어가기 때문입니다.

실무에서 어떻게 이해하면 좋은가

이 구조를 실제 업무 관점에서 보면 다음처럼 비유할 수 있습니다.

  • Auto Memory = 장기 기억장치
  • Auto Dream = 기억 정리 엔진
  • 작업 기록형 메모리 = 작업 일지 / 로그북

즉,
AI가 단순히 대답하는 존재가 아니라 기억하고, 정리하고, 복원하는 작업 파트너가 되는 것입니다.

보안 관점에서 꼭 봐야 할 점

이런 메모리 시스템은 편리하지만, 보안적으로는 반드시 주의가 필요합니다.

저장 금지 항목을 분리해야 함

다음 정보는 일반 메모리에 남기지 않는 것이 좋습니다.

  • 비밀번호
  • API 키
  • 인증 토큰
  • 민감한 내부 주소
  • 사고 관련 원본 로그
  • 고객 개인정보
  • 보안상 민감한 설정값

보존 기간을 정해야 함

모든 것을 영구 저장하면 품질이 떨어지고 위험이 커집니다.

  • 임시 기록
  • 일반 기록
  • 장기 보존 기록

이렇게 등급을 나눠 관리하는 것이 좋습니다.

감사 로그가 필요함

무엇이 저장됐고, 무엇이 삭제됐고, 무엇이 수정됐는지 추적 가능해야 합니다.

자동 정리 정책이 너무 공격적이면 안 됨

Auto Dream 같은 정리 기능은 편리하지만, 보안 사고 분석에 필요한 흔적까지 지우면 안 됩니다.

따라서 다음과 같은 분리가 필요합니다.

  • 일반 지식 메모리
  • 작업 이력 로그
  • 보안 이벤트 기록
  • 삭제 금지 영역

이런 구조가 특히 잘 맞는 경우

이런 메모리 시스템은 아래와 같은 환경에서 특히 효과적입니다.

장기 프로젝트

여러 달에 걸쳐 진행되는 개발, 운영, 자동화 작업

복잡한 서비스 구조

서로 연결된 서비스가 많고, 구조를 반복해서 탐색해야 하는 경우

보안 분석

사고 대응, 취약점 분석, 로그 분석처럼 누적 맥락이 중요한 경우

반복 업무 자동화

매번 같은 패턴의 분석이나 보고를 수행하는 경우

팀 단위 협업

누가 어떤 작업을 했는지, 어떤 판단이 있었는지 기록이 필요한 경우

300x250

AI 메모리 시스템의 핵심은 단순히 “많이 기억하는 것”이 아닙니다.
진짜 중요한 것은 기억을 어떻게 저장하고, 어떻게 정리하고, 어떻게 다음 세션으로 이어갈 것인가입니다.

정리하면 다음과 같습니다.

  • Auto Memory는 AI가 무엇을 알게 되었는지를 기억합니다.
  • Auto Dream은 그 기억을 정리하고 품질을 유지합니다.
  • 작업 기록형 메모리 시스템은 AI가 무엇을 했는지를 축적합니다.

이 셋이 적절히 결합되면 AI는 단순한 채팅 도구가 아니라,
장기 프로젝트의 지식과 작업 이력을 함께 관리하는 실무형 에이전트로 진화할 수 있습니다.

다만 편리함이 커질수록 보안과 거버넌스도 중요해집니다.
민감정보 저장 방지, 보존 정책, 감사 로그, 삭제 기준, 권한 분리가 함께 있어야 실제 운영에 적합합니다.

 

OpenClaw에 claude-mem을 적용하는 방법을 실제 운영 순서에 맞게 풀어서 정리합니다. 핵심은 OpenClaw의 이벤트 훅으로 작업 관찰값을 수집하고, claude-mem worker로 보내서 세션 기억과 시스템 프롬프트 주입까지 연결하는 것입니다. OpenClaw의 embedded runner는 Anthropic API를 직접 호출하므로, 일반적인 Claude Code 훅만으로는 관찰값이 잡히지 않기 때문에 이 통합 플러그인이 그 간극을 메우는 구조입니다.

전체 구조를 먼저 이해하기

문서상 OpenClaw 연동 플러그인은 세 가지를 담당합니다. 첫째, 도구 사용 기록을 수집해 worker에 넘기고, 둘째, 그동안의 관찰 타임라인을 각 에이전트의 시스템 프롬프트에 넣어주고, 셋째, 새 관찰이 생길 때 메시징 채널로 실시간 전달합니다. 즉, 단순 저장이 아니라 수집 → 주입 → 스트리밍을 같이 합니다.

동작 흐름은 간단히 보면 이렇습니다. 에이전트 시작 시 세션을 만들고, 프롬프트를 만들기 직전에 컨텍스트를 가져와 주입하고, 도구 결과가 생길 때마다 관찰을 기록하며, 에이전트 종료 시 요약과 세션 종료를 처리합니다. 게이트웨이가 재시작되면 세션 추적과 캐시가 초기화됩니다.

적용 전에 필요한 조건

문서 기준 요구사항은 세 가지입니다. claude-mem worker 서비스가 OpenClaw gateway와 같은 머신의 localhost에서 실행되고 있어야 하며, OpenClaw gateway는 플러그인을 지원해야 하고, gateway와 worker 사이에는 localhost 통신이 가능해야 합니다. 기본 worker 포트는 37777입니다.

가장 쉬운 적용 방법: 자동 설치

문서에는 OpenClaw용 설치 원라이너가 제공됩니다. 이 설치 과정은 의존성 검사, 플러그인 설치, 메모리 슬롯 설정, AI provider 설정, worker 시작, 그리고 필요 시 observation feed 설정까지 자동으로 처리합니다. 또한 비대화형 모드와 provider 지정 업그레이드 모드도 지원합니다.

실무적으로는 다음 순서로 이해하면 됩니다.

  1. OpenClaw와 claude-mem 구성요소를 함께 설치합니다.
  2. worker를 띄웁니다.
  3. gateway에 플러그인을 등록합니다.
  4. 필요하면 관찰 피드를 켭니다.
  5. 상태 명령으로 연결을 확인합니다.

수동 적용 방법

자동 설치 대신 직접 붙이려면 OpenClaw gateway 설정의 plugins 섹션에 claude-mem 플러그인을 등록합니다. 문서 예시는 enabled: true, project, syncMemoryFile, workerPort, observationFeed를 포함합니다. worker는 같은 머신에서 돌아야 하며 gateway는 localhost:37777로 HTTP 호출합니다.

예시 형태는 대략 이런 구조입니다.

{
  "plugins": {
    "claude-mem": {
      "enabled": true,
      "config": {
        "project": "my-project",
        "syncMemoryFile": true,
        "workerPort": 37777,
        "observationFeed": {
          "enabled": true,
          "channel": "slack",
          "to": "C0123456789"
        }
      }
    }
  }
}

위 예시는 문서 구조를 바탕으로 한 전형적인 설정 형태이며, 실제 값은 프로젝트명과 채널 ID에 맞게 바꾸면 됩니다. channel은 이미 gateway에 등록된 채널 플러그인 이름과 일치해야 합니다.

각 설정값의 의미

project는 관찰 기록이 저장될 프로젝트 스코프입니다. 문서 기본값은 openclaw이며, 이 값으로 메모리 DB 안에서 관찰이 구분됩니다.

syncMemoryFile은 관찰 타임라인을 에이전트 시스템 프롬프트에 자동 주입할지 여부입니다. true면 세션 간 컨텍스트가 자동으로 들어가고, false면 관찰 기록은 남기되 프롬프트 주입만 끕니다.

syncMemoryFileExclude는 자동 주입에서 제외할 에이전트 ID 목록입니다. 문서에 따르면 제외된 에이전트도 관찰 자체는 계속 기록되며, 주입만 생략됩니다. 자기만의 메모리를 관리하는 에이전트에 유용합니다.

workerPort는 worker가 듣는 포트입니다. 기본값은 37777이고, 다른 포트에서 worker를 띄운 경우 여기를 맞춰야 합니다.

observationFeed.enabled는 실시간 메시징 스트리밍을 켜는 옵션입니다. observationFeed.channel에는 telegram, discord, signal, slack, whatsapp, line 중 하나를 넣고, observationFeed.to에는 해당 채널의 대상 ID를 넣습니다.

관찰 피드까지 붙이는 방법

관찰 피드는 worker의 SSE 스트림을 받아서 메시징 채널로 넘깁니다. 즉, 에이전트가 새 관찰을 만들 때마다 Slack, Telegram, Discord 같은 채널로 실시간 알림이 갈 수 있습니다. SSE 연결은 끊기면 자동 재연결되며, 문서상 지수 백오프를 사용합니다.

적용 순서는 간단합니다. 먼저 OpenClaw gateway에 이미 등록된 메시징 채널을 확인하고, 그 채널의 실제 ID를 알아낸 뒤, observationFeed.channelobservationFeed.to를 설정합니다. 문서도 채널 이름이 아니라 실제 채널 ID나 채팅 ID를 넣으라고 설명합니다.

문서 기준으로 Slack은 채널명이 아니라 채널 ID를 사용합니다. Discord도 채널 ID, Telegram은 숫자 chat ID, LINE은 user 또는 group ID처럼 각 플랫폼의 실제 식별자를 넣어야 합니다.

적용 후 확인 방법

가장 먼저 로그를 봅니다. 문서에는 feed 시작 시 연결 대상 채널과 target ID, SSE 접속 성공 메시지가 남는다고 되어 있습니다. 연결이 정상이라면 worker 스트림과 feed가 살아 있는 상태입니다.

그다음 OpenClaw 채팅에서 /claude_mem_feed를 실행해 상태를 봅니다. 이 명령은 observation feed의 활성화 여부와 대상, 연결 상태를 보여주고, on/off 토글 요청도 가능합니다. worker 상태와 세션 현황은 /claude_mem_status로 확인합니다.

마지막으로 실제 에이전트 작업을 한 번 돌려서 관찰이 생기는지 확인합니다. 문서상 메시지는 raw tool usage가 아니라 worker가 비동기적으로 생성한 new_observation 기준으로 전달되므로, 도구 사용 직후 약간의 지연이 있을 수 있습니다.

자주 나는 문제와 대응

가장 흔한 문제는 worker 연결 실패입니다. 이 경우 포트가 다르거나 worker가 안 떠 있거나, gateway가 잘못된 포인트를 보고 있는 경우가 많습니다. 문서도 workerPort 확인과 worker 상태 점검을 안내합니다.

다음으로 많은 문제는 채널 미등록입니다. Unknown channel type가 나오면 OpenClaw gateway에 해당 채널 플러그인이 없거나 이름이 맞지 않는 상태입니다. 이때는 채널 플러그인 자체가 먼저 정상 등록되어야 합니다.

관찰 피드가 연결되어 있는데 아무 메시지도 안 온다면, 에이전트가 실제로 작업 중인지와 worker가 관찰을 생성 중인지 확인해야 합니다. 문서상 feed는 raw tool event가 아니라 worker가 만든 observation만 전송합니다.

운영 관점에서 권장하는 적용 방식

실무에서는 처음부터 관찰 피드를 켜기보다, 먼저 syncMemoryFile 중심으로 세션 컨텍스트 주입이 잘 되는지 확인한 뒤, 이후에 Slack이나 Telegram 같은 채널을 붙이는 순서가 안정적입니다. 문서 구조 자체도 시스템 프롬프트 주입과 실시간 피드를 분리해 설명하고 있습니다.

또한 syncMemoryFileExclude를 적극적으로 쓰는 편이 좋습니다. 예를 들어 디버깅 전용 에이전트나 자체 기억 관리가 필요한 에이전트는 주입에서 제외하고, 관찰만 남기는 식으로 분리하면 맥락 오염을 줄일 수 있습니다.

보안적으로는 worker가 localhost에서만 통신하는 구조를 유지하는 것이 중요합니다. 문서도 네트워크 접근을 localhost로 제한하는 점을 요구사항으로 명시합니다.

적용 절차

  1. OpenClaw gateway와 claude-mem worker를 같은 머신에 준비합니다.
  2. 자동 설치 스크립트를 쓰거나, gateway의 plugin 설정에 claude-mem을 수동 등록합니다.
  3. project, workerPort, syncMemoryFile를 정합니다.
  4. 필요하면 syncMemoryFileExclude로 일부 에이전트를 제외합니다.
  5. 메시징 연동이 필요하면 observationFeed.enabled, channel, to를 설정합니다.
  6. /claude_mem_status/claude_mem_feed로 상태를 점검합니다.
  7. 실제 작업을 수행해 관찰이 쌓이고, 다음 세션에서 시스템 프롬프트에 주입되는지 확인합니다.
728x90
그리드형(광고전용)

댓글