여러 PC 에서 같은 AI 기억을 쓰려면 결국 어딘가에 서버가 하나 있어야 합니다.
처음에는 서버라는 말만 들어도 일이 커 보였습니다. 무엇을 올리고, 어떻게 지키고, 한 달에 얼마가 드는지 하나도 정해진 게 없었으니까요.
이번 포스팅에서는 Claude Code 기억 서버를 월 12달러짜리 VPS 한 대로 시작하면서 무엇을 서버에 두고 무엇을 PC 에 남겼는지, 그 기준을 순서대로 풀어 보도록 하겠습니다.
서버가 필요해진 이유는 PC 가 여러 대라서입니다
저는 집 PC 와 다른 PC 를 오가며 Claude Code 를 씁니다.
파일 메모리는 PC 한 대 안에만 있어서, 이쪽에서 정한 것을 저쪽 세션은 모릅니다.
어느 PC 에서 열든 같은 결정과 같은 할 일 목록을 보려면, 그 목록이 두 PC 바깥에 있어야 했습니다.
후보 셋 중에 남은 것
2026-09-12 에 착수하면서 후보를 셋 놓고 봤습니다.
첫째, 집에 있던 NAS 는 고장 나 있어서 빠졌습니다.
둘째, 값이 싼 유럽 VPS 는 원하던 요금제가 그달 주문 불가였고, 독일 서버까지 응답이 약 250ms 라 빠졌습니다. 세션을 열 때마다 기억을 불러오는데 그 지연이 매번 붙습니다.
셋째, AWS Lightsail 서울 리전의 2GB 요금제가 월 12달러였습니다. 이것으로 정했습니다.
회사나 다른 사람과 같이 쓰는 클라우드 계정은 쓰지 않고, 개인 계정으로 따로 만들었습니다. 기억 서버에는 제 일의 맥락이 다 들어가기 때문입니다.
서버에는 DB 와 그 입구만 둡니다
정한 원칙은 "서버는 기억만 들고, 일은 PC 가 한다" 입니다.
서버(Docker)에 올린 것은 이 정도입니다.
PostgreSQL + pgvector 기억의 정본 (결정·할 일·지식·세션 기록)
대시보드 읽기 위주 화면 (내부 주소에만 바인딩)
jobs 예약 일정 처리, 매일 덤프
Claude Code 를 돌리는 일, 서브에이전트, 스킬, 훅은 전부 PC 에 남겼습니다.
사람이 없는 서버에서 에이전트를 무인으로 돌리는 방식은 처음부터 1차 범위에서 뺐습니다. 2026년 6월에 헤드리스 자동 실행이 권한 단계에서 막히는 것을 실제로 겪었기 때문입니다.
덕분에 서버는 작아도 됐습니다. DB 하나와 작은 웹 화면 정도라 2GB 로 충분했습니다.
지키는 방법은 문을 하나만 여는 것입니다
서버 앞에는 WireGuard VPN 을 두었습니다.
인터넷에 열린 포트는 WireGuard 가 쓰는 UDP 포트 하나뿐입니다. DB 포트도, 대시보드 포트도 바깥에서는 보이지 않습니다.
PC 는 터널을 통해서만 서버에 닿습니다. 그리고 터널은 서버 쪽 내부 주소 대역만 지나가게 했습니다(스플릿 터널). 평소 인터넷은 원래대로 나가고, 기억 서버로 가는 길만 터널을 탑니다.
대시보드도 같은 이유로 터널 안쪽 주소에만 묶었습니다. 터널에 붙지 않은 기기에서는 주소를 알아도 열리지 않습니다.
⚠️ 작은 서버일수록 "일단 열어 두고 나중에 막자" 가 위험합니다. 처음부터 하나만 열고 시작하는 편이 나중에 덜 고칩니다.
서버가 꺼져도 일은 멈추지 않게 했습니다
제가 가장 신경 쓴 대목은 이것입니다. 기억 서버가 생기면, 서버가 죽었을 때 일도 같이 멈추는 구조가 되기 쉽습니다.
그래서 세션을 열 때 기억을 불러오는 훅은 서버에 닿지 못하면 한 줄만 남기고 넘어갑니다. 세션은 기억 없이도 정상으로 열립니다.
세션이 끝날 때 기록을 올리는 훅도 실패하면 로그 파일에 남기고 넘어갑니다.
서버는 도움을 주는 쪽이지, 일의 전제 조건이 되면 안 된다고 봤습니다.
4주 계획에서 실제로 쓴 것
처음 설계는 4주(M0~M3)였고, 1차는 표 7개와 역할 5개, 서버 하나로 줄였습니다.
설계 문서에 있던 에이전트 14개 조직도나 별도 에이전트 표는 2차로 미뤘습니다. 에이전트 정의는 이미 .claude/agents 폴더의 파일로 있었고, 그건 git 이 관리하면 됐기 때문입니다.
2026-09-18 에 서버가 실제로 돌기 시작했고, 그날 지난 세션 35건과 메모리 105건을 올렸습니다.
작게 시작하는 서버, 제가 쓴 기준
1. 서버에는 상태(기억)만 두고, 실행은 PC 에 남깁니다.
2. 위치는 응답 시간으로 고릅니다. 세션마다 부르는 서버라면 지연이 매번 붙습니다.
3. 개인 일의 맥락이 들어가는 서버는 계정부터 따로 둡니다.
4. 인터넷에 여는 문은 VPN 하나로 시작합니다.
5. 서버가 꺼져도 세션은 열리게 만듭니다.
6. 설계서에 있는 것을 다 만들지 않습니다. 이미 파일로 관리되는 것은 DB 로 옮기지 않습니다.
서버를 만드는 일보다 서버에 무엇을 안 둘지 정하는 일이 더 오래 걸렸습니다. 그런데 그 결정 덕분에 월 12달러로 끝났습니다.
여러 PC 에서 AI 에이전트를 쓰고 계신다면, 지금 두 PC 가 서로 모르는 것이 무엇인지부터 적어 보시는 건 어떨까요?
그러면 오늘도 모두 스테이블 하세요.
만든 것들
'Coding, Testing, Challenge' 카테고리의 다른 글
| 대시보드가 멀쩡해 보이는데 영영 갱신이 안 됐다, 파이썬 조용한 except 잡는 법 (0) | 2026.10.08 |
|---|---|
| AI 기억 서버 백업, DB가 정본이고 git이 백업인데 복원 리허설까지 한 이유 (0) | 2026.10.08 |
| AI 대화 기록에 비밀번호·키 144개가 남아 있었다, 바이브코딩 전에 할 보안 점검 (0) | 2026.10.08 |
| Claude Code 메모리 파일이 24KB를 넘으면 생기는 일과 해결법 (0) | 2026.10.07 |
| 고치지도 않았는데 버그가 사라졌습니다 (0) | 2026.10.06 |