Sean 個人工作環境的「新電腦速查表」。在新電腦(或重灌後的舊電腦)上要接上 Claude Code 工作環境時,照這份文件的步驟做,不用重新摸索。
這份文件本身放在 GitHub,是刻意設計成「就算 Google 雲端硬碟都還沒設定好,也能先抓下來看」的起點。
| 東西 | 存放位置 | 同步方式 |
|---|---|---|
AGENTS.md / CLAUDE.md / skills/ / 工具-*/ |
Google 雲端硬碟同步的 workspace 資料夾 | GDrive 自動同步,不需要額外設定 |
Claude Code auto-memory(MEMORY.md + memory/*.md) |
本機 ~/.claude/projects/<專案雜湊>/memory/ |
天生不同步(見下方原因),要手動建一次 symlink 指向 GDrive |
Session 對話紀錄(.jsonl) |
本機 ~/.claude/projects/<專案雜湊>/ |
不同步,設計上就是各機器各自留存 |
為什麼 memory 資料夾天生不同步: Claude Code 是用「工作目錄的絕對路徑」算雜湊值,決定 ~/.claude/projects/<雜湊>/ 這個資料夾名稱。Windows 的路徑(G:\我的雲端硬碟\...)跟 Mac 的路徑(/Users/<帳號>/Library/CloudStorage/GoogleDrive-.../我的雲端硬碟/...)不一樣,算出來的雜湊值也不一樣,兩台機器對應到完全不同的本機資料夾,內容互不相通。解法是把兩邊的 memory 資料夾都換成指向同一個 GDrive 資料夾的 symlink。
- 安裝 Google 雲端硬碟桌面版(Windows/Mac 同一個下載頁)
- 用 Sean 的帳號登入,等待完整同步
- 確認可以看到 workspace 資料夾底下的
AGENTS.md、skills/、工具-*/等內容
workspace 資料夾路徑:
- Windows:
G:\我的雲端硬碟\000 工作記錄\Claude workspace(實際磁碟代號依這台機器的 GDrive 掛載設定而定) - Mac:
/Users/<帳號>/Library/CloudStorage/GoogleDrive-<帳號>/我的雲端硬碟/000 工作記錄/Claude workspace
- Claude Code CLI
- Git
- Python 3(Windows 建議從 python.org 安裝;Mac 通常已內建或用
brew install python)
直接在 workspace 資料夾底下開 Claude Code 就好。Claude Code 會直接掃描目前工作目錄的 skills/ 資料夾與根目錄的 CLAUDE.md(內容是 @AGENTS.md,指向同資料夾的 AGENTS.md),GDrive 同步完成就代表這台機器讀到的內容跟其他機器一致,不需要 symlink,也不需要複製任何檔案。
這一步才需要動手,因為 memory 資料夾的同步機制跟上面不一樣(原因見最上面的架構說明)。
在 workspace 資料夾底下跑一次 Claude Code(隨便問它一句話就好),讓它自動建立本機的 ~/.claude/projects/<專案雜湊>/ 資料夾。這時候裡面的 memory/ 通常是空的,或者只有 Claude Code 自動生成的少量預設內容。
ls ~/.claude/projects/ | grep -i claude-workspace會列出類似 G---------000------Claude-workspace 這樣的資料夾名稱(雜湊值本身沒有規律,用資料夾名稱裡殘留的可辨識片段找即可)。
ls ~/.claude/projects/<剛剛找到的雜湊資料夾>/memory/- 如果是空的:直接跳到 4.4
- 如果已經有內容(代表這台機器之前已經累積了一些記憶):不要直接刪除,先跟 GDrive 上
工具-claude-memory/資料夾裡的內容比對,把這台機器獨有、GDrive 沒有的記憶檔案手動搬過去合併,確認合併完成後才能繼續下一步
用 GDrive 上現成的通用腳本(工具-claude-memory/make_symlink.py),不需要自己重寫:
Windows:
先開啟「開發人員模式」(設定 → 隱私權與安全性 → 開發人員專用 → 開發人員模式),否則會出現要求系統管理員權限的錯誤。接著:
python "G:\我的雲端硬碟\000 工作記錄\Claude workspace\工具-claude-memory\make_symlink.py" "C:\Users\<帳號>\.claude\projects\<雜湊資料夾>\memory" "G:\我的雲端硬碟\000 工作記錄\Claude workspace\工具-claude-memory"Mac:
一般不需要額外設定(不需要 sudo):
python3 "/Users/<帳號>/Library/CloudStorage/GoogleDrive-<帳號>/我的雲端硬碟/000 工作記錄/Claude workspace/工具-claude-memory/make_symlink.py" ~/.claude/projects/<雜湊資料夾>/memory "/Users/<帳號>/Library/CloudStorage/GoogleDrive-<帳號>/我的雲端硬碟/000 工作記錄/Claude workspace/工具-claude-memory"ls ~/.claude/projects/<雜湊資料夾>/memory/應該要看到 MEMORY.md、各個 feedback_*.md / reference_*.md / project_*.md,以及 AGENTS.md、sync_memory.py、make_symlink.py(這幾個是 GDrive 資料夾自己的說明檔和工具,混在一起是正常的,Claude Code 只會讀 .md 檔案當記憶,不影響運作)。
| 問題 | 原因 | 解法 |
|---|---|---|
mklink /J(junction)失敗,提示需要 NTFS 磁區 |
Google 雲端硬碟的虛擬磁碟機不是真正的 NTFS 磁區,不能當 junction 目標 | 改用 symlink(make_symlink.py),不要用 junction |
PowerShell New-Item -ItemType SymbolicLink 即使開了開發人員模式仍要求系統管理員 |
PowerShell 這個 cmdlet 有已知 bug,不會傳遞「允許非特權建立」的旗標給 Windows API,不管有沒有開發人員模式都一律要求提權 | 不要用 PowerShell 的 New-Item,改用 make_symlink.py(直接呼叫 Windows API 並帶正確旗標) |
cmd /c mklink 透過某些終端機(如 Git Bash)呼叫時,中文路徑變亂碼,導致奇怪的錯誤訊息 |
終端機/批次檔之間的編碼轉換在中文路徑上容易出錯 | 一律用 make_symlink.py(Python 字串處理路徑不會有這個編碼問題),不要手動寫 .bat 檔 |
git clone <這個 repo 的網址>抓下來後照著上面 Step 1 開始做。不需要事先裝好 GDrive 或 Claude Code 才能看這份文件。