Community생산성 & 협업github.com

le0nardomartins/ClaudeMemorySync-Server

Claude Memory Sync 서버(Node + Postgres on Railway)를 배포, 실행 및 문제 해결합니다. 여러 머신의 Claude Code 구성을 암호화된 버전 저장소에 동시성 제어로 저장합니다. 사용자가 메모리 동기화 서버 배포/업데이트, 머신 인증/해지(CLIENT_PUBLIC_KEYS), 데이터베이스 크기/히스토리 확인, 히스토리 초기화(예: SYNC_KEY 교체 시), 또는 클라이언트에서 발생한 401/409/413/415/429/503 오류 조사를 요청할 때 사용하세요.

ClaudeMemorySync-Server란 무엇인가요?

이 스킬은 Railway에 호스팅된 Claude Memory Sync 서버를 관리하기 위한 전용 도구입니다. Node.js와 Postgres를 기반으로 하며, 암호화된 매니페스트와 블롭을 저장하고 동시성 제어를 제공합니다. 서버는 콘텐츠를 병합하거나 읽을 수 없으며, SYNC_KEY가 있는 머신만 데이터를 해독할 수 있어 보안성을 보장합니다. 이 스킬을 사용하면 서버 초기 배포, 새 머신 인증(공개 키 추가), 머신 인증 해제, 데이터베이스 크기 및 히스토리 조회, 히스토리 초기화, 그리고 클라이언트가 경험하는 HTTP 오류(401, 409, 413 등) 문제 해결을 수행할 수 있습니다. 서버의 운영 문서(deploy.md, api.md, operations.md)를 참조하여 Railway 대시보드 또는 CLI를 통해 작업을 진행하며, 모든 파괴적 작업 전에 확인 절차를 거칩니다. 이 스킬은 Claude Code, Cursor 등 AI 에이전트가 서버 인프라를 안전하게 관리할 수 있도록 지원합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/le0nardomartins/ClaudeMemorySync-Server/tree/HEAD/docs/en

Installed? Explore more 생산성 & 협업 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Claude Memory Sync: 서버

저장소:

서버는 병합하지 않으며 콘텐츠를 읽을 수 없습니다. 봉인된 매니페스트와 블롭을 저장하며, 새 버전이 최신 버전을 기반으로 구축된 경우에만 수락합니다(그렇지 않으면 409 conflict).

필요 시 이 폴더의 문서를 읽으십시오:

  • deploy.md: Railway 또는 다른 호스트에 배포, 업데이트
  • api.md: 디버깅을 위한 프로토콜
  • operations.md: 쿼리 및 유지보수, 백업, 해지, 진단을 위한 SQL

서버 로그 메시지는 포르투갈어로 되어 있습니다. operations.md에 각 메시지와 그 의미가 나열되어 있습니다.

항상 적용되는 규칙

  1. 데이터. 머신에 SYNC_KEY가 있으면 데이터베이스는 암호화된 데이터만 보유합니다. SYNC_KEY가 없으면 사용자의 API 키를 보유합니다. 어느 경우든 Postgres를 공개적으로 노출하지 말고 DATABASE_URL을 공유하지 마십시오.
  2. 키. CLIENT_PUBLIC_KEYS는 공개 키만 보유하며, 표시해도 됩니다. CLIENT_PRIVATE_KEY와 SYNC_KEY는 절대 서버나 채팅에 제공되지 않습니다.
  3. 먼저 확인 배포, 푸시, Railway 변수 변경, TRUNCATE, DELETE 또는 되돌릴 수 없는 다른 작업 전에 반드시 확인하십시오. 데이터를 건드리기 전에 백업(pg_dump, operations.md 참조)하십시오.
  4. 프로토콜 일치. 클라이언트와 서버는 동일한 프로토콜 버전을 실행해야 합니다. 하나가 업데이트되면 사용자에게 모든 머신에서 다른 쪽도 업데이트하도록 알리십시오.
  5. 서버를 재설정해도 머신의 데이터는 삭제되지 않습니다. 각 머신은 로컬에 자체 기준을 유지하고 다음 라운드에서 모든 것을 다시 업로드합니다. 모든 머신에서 파일을 제거하려면 한 머신에서만 삭제하면 충분합니다. 이를 위해 서버를 건드릴 필요가 없습니다.

작업

초기 배포

deploy.md → "Railway"를 따르십시오. 사용자는 다음을 수행해야 합니다:

  • 대시보드에서 프로젝트와 Postgres를 생성하거나 Railway CLI 사용을 허용합니다.
  • 공개 키를 붙여넣습니다.

마지막에 로그에서 memory server na porta ... | PCs autorizados: ...를 찾으십시오.

머신 인증

  1. 머신에서 키를 생성합니다: python src/components/remote_client.py keygen <name> (클라이언트) 또는 npm run keygen -- <name> (여기).
  2. <name>:<base64>를 CLIENT_PUBLIC_KEYS에 쉼표로 구분하여 추가하고, 다른 키는 제거하지 마십시오.
  3. Railway가 자동으로 재시작됩니다. 로그에 해당 이름이 PCs autorizados에 나타나는지 확인하십시오.

머신 해지

CLIENT_PUBLIC_KEYS에서 해당 항목을 제거하십시오. 머신이 손상된 경우, 사용자에게 모든 머신에서 SYNC_KEY를 교체(클라이언트 문제 해결)하고 히스토리를 재설정(operations.md)하는 과정을 안내하십시오.

문제 해결

서비스 로그(Railway 대시보드 또는 railway logs)를 읽고 operations.md → "진단"과 비교하십시오. 클라이언트 측에서 파일은 sync.log입니다. 409 뒤에 201이 오는 것은 정상입니다.

데이터베이스 쿼리 또는 유지보수

operations.md의 쿼리를 사용하십시오. 일회성 액세스의 경우 railway connect Postgres를 사용하십시오. 읽기 전용 쿼리를 선호하고 쓰기 작업은 확인을 받으십시오.

서버 업데이트

  1. 저장소에 푸시합니다. Railway는 Dockerfile에서 배포합니다. 마이그레이션은 시작 시 실행됩니다(db.migrate).
  2. 그런 다음 사용자에게 클라이언트를 업데이트하도록 요청하십시오.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

관련 스킬