~/sync-tmp

코드는 git으로 가는데, 맥락은 안 간다

조사 노트, 계획, 중간 산출물 — AI와 일하며 tmp/ 에 쌓이는 것들은 .gitignore 대상이라 PC를 옮기면 남지 않는다. sync-tmp는 이 폴더를 옮기는 도구다.

초대코드로 가입 · 로그인

하는 일

pull 결과 예시:

my-app v7 받음 (2시간 전, macbook)
  기존 tmp/ 는 tmp_20260915_01/ 로 보존됨

변경 3건:
  + research/api-limits.md
  ~ plan.md
  - scratch/old-test.sh

덮어쓰기 방지

모든 push는 출발 버전을 함께 보내고, 출발점이 낡았으면 거부된다. 오래된 PC에서 올려도 그 사이의 작업이 사라지지 않는다.

# 3일 전 v5를 받아간 PC에서 push. 그 사이 서버는 v7
$ push prev=5
409 v5 기반으로 올렸는데 서버는 이미 v7 입니다

# 해결: pull(내 작업은 보존됨) → merge → push

거부된 push는 서버도 로컬도 바꾸지 않는다. 병합은 rebase 방향 — 최신이 바닥, 내 작업이 위.

정책

범위 밖

시작하기

1. 가입 → 토큰 발급

초대코드로 가입하고 토큰을 발급한다. PC 한 대당 토큰 하나 권장.

2. 프로젝트 생성 → 디렉토리 연결

프로젝트를 만들면 토큰 발급 화면에 아래 명령이 채워져 나온다. 그 프로젝트를 쓸 디렉토리에서 실행 (MCP 설정은 디렉토리 단위).

claude mcp add sync-tmp \
  --env SYNC_TMP_TOKEN=stmp_... \
  --env SYNC_TMP_PROJECT=my-app \
  -- npx -y @taeksoolee/sync-tmp-mcp

Claude Code 기준. Cursor·VS Code·Kiro 등 MCP 지원 도구도 같은 서버로 연결된다 — 설정 예시는 각 프로젝트 화면에.

3. .gitignore 에 추가

.sync-tmp
tmp_*/

.sync-tmp 가 커밋되면 버전 기준이 다른 PC로 번져 덮어쓰기 방지가 무력화된다. 빠뜨리면 도구가 경고한다.

이후 사용: Claude Code에 "sync-tmp push 해줘" / "pull 해줘".