🧭 HƯỚNG DẪN · HỆ THỐNG CAS

Cài Claude Code + Obsidian
sang máy tính thứ 2

Để bạn làm việc đồng bộ ở mọi nơi — note, dự án và cả "bộ não AI" luôn theo bạn từ máy này sang máy khác, an toàn và không sợ mất.

⏱ Thời gian: ~45–60 phút 💻 Dành cho: macOS (ghi chú cho Windows) 📊 Mức độ: Cơ bản → Nâng cao
Bức tranh lớn

Bạn sẽ đồng bộ những gì?

Khi làm việc trên 2 máy, có 3 thứ cần "đi theo" bạn. Mỗi thứ đồng bộ bằng một con đường riêng — hiểu rõ chỗ này thì làm đâu trúng đó:

💻 Máy 1 (máy cũ)

Obsidian Vault — note, wiki, tài liệu
Dự án Claude Code — thư mục làm việc
Bộ nhớ Claude~/.claude/memory
Secrets — key, token (KHÔNG lên cloud chung)
Obsidian Syncnote chữ tự động
GitHubkét sắt + lịch sử
Google Drivefile nặng + bộ nhớ AI
USB / AirDropsecrets (tay)

🖥 Máy 2 (máy mới)

Cài Obsidian → kéo Sync về
Cài Claude Code → đăng nhập
Clone dự án từ GitHub
Nối lại bộ nhớ + secrets
💡 Đọc theo nhu cầu của bạn
Hướng dẫn chia 2 mức. CƠ BẢN (Phần 1–3) đủ cho hầu hết học viên: chỉ cần Obsidian Sync + Claude Code là làm việc 2 máy mượt mà. NÂNG CAO (Phần 4–6) dành cho ai muốn dựng hệ thống đầy đủ như CAS: có két sắt lịch sử, bộ nhớ AI trên cloud và quản lý secrets an toàn.
Phần 0

Chuẩn bị trước khi bắt đầu

Trên máy 2, bạn cần sẵn sàng các tài khoản và công cụ sau. Đăng nhập cùng tài khoản với máy 1 thì mọi thứ mới gặp nhau.

Cài Homebrew & Node.js (nếu máy 2 chưa có)

# 1) Cài Homebrew (trình quản lý phần mềm cho Mac)
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 2) Cài Node.js (kèm npm)
brew install node

# 3) Kiểm tra — cần Node v18 trở lên
node -v
npm -v
💡 Windows
Tải Node.js tại nodejs.org (bản LTS) và cài Git for Windows. Các lệnh npm bên dưới chạy giống nhau trong PowerShell.
Phần 1  ·  CƠ BẢN

Đưa Obsidian Vault về máy 2

Đây là phần quan trọng nhất với người làm note. Obsidian Sync sẽ tự kéo toàn bộ vault (note, wiki, tài liệu) từ máy 1 về máy 2 — không cần copy tay.

1

Cài Obsidian

Tải tại obsidian.md → cài như app bình thường. Mở lên, chọn "Sign in" và đăng nhập cùng tài khoản Obsidian với máy 1.

2

Bật Sync & kết nối vault từ xa

  1. Mở Settings (⚙️) → Sync.
  2. Bấm "Connect to a remote vault" (hoặc "Choose a vault to connect").
  3. Chọn đúng vault bạn đã sync ở máy 1 (ví dụ Brain to Letandao).
  4. Bật công tắc "Sync is on".
3

Chờ tải về xong

Góc dưới phải có biểu tượng sync quay. Vault lớn có thể mất vài phút. Khi báo "Fully synced" là xong — toàn bộ note đã nằm trên máy 2.

⚠️ Một quy tắc vàng để không mất note
Đợi máy 1 sync xong → mới mở chỉnh trên máy 2, và ngược lại. Đừng sửa cùng một note trên 2 máy khi đang offline cùng lúc — đó là nguyên nhân số 1 gây xung đột. Obsidian có Version History (Settings → Sync) để cứu file nếu lỡ.
💡 Nên loại trừ khỏi Sync
Trong Settings → Sync → Selective sync, tắt đồng bộ các thư mục nặng / nhạy cảm: .git, node_modules, .secrets, .claude, và file > 5MB. Giữ Sync nhẹ, nhanh và an toàn.
Phần 2  ·  CƠ BẢN

Cài & đăng nhập Claude Code

Claude Code là "trợ lý lập trình + trợ lý vận hành" chạy ngay trong Terminal. Cài một lệnh, đăng nhập một lần là dùng được.

1

Cài Claude Code

# Cách 1 — cài qua npm (khuyên dùng)
npm install -g @anthropic-ai/claude-code

# Kiểm tra cài thành công
claude --version

Cách 2 (không cần Node): chạy curl -fsSL https://claude.ai/install.sh | bash để cài bản native.

2

Đăng nhập

Vào thư mục làm việc bất kỳ rồi gõ claude. Lần đầu nó sẽ hỏi đăng nhập:

cd ~/Documents
claude
# Trong Claude, gõ:
/login

Trình duyệt mở ra → đăng nhập cùng tài khoản Claude với máy 1 → quay lại Terminal là xong. Đăng nhập lưu theo máy, làm một lần duy nhất.

💡 Cấu hình & bộ nhớ nằm ở đâu?
Mọi thứ của Claude Code nằm trong thư mục ~/.claude/: memory (bộ nhớ dài hạn), projects (lịch sử phiên), settings (cấu hình). Phần NÂNG CAO bên dưới sẽ hướng dẫn đồng bộ memory để "bộ não AI" theo bạn sang máy 2.
Phần 3  ·  CƠ BẢN

Kiểm tra: đã đồng bộ chưa?

Đến đây, với mức cơ bản bạn đã làm việc được 2 máy. Thử nhanh:

🌱 Học viên dừng ở đây là đủ
Nếu bạn chỉ cần note + Claude theo mình giữa 2 máy thì xong rồi. Các phần dưới là để dựng hệ thống "chuyên nghiệp" — có két sắt lịch sử, bộ nhớ AI trên cloud và quản lý key an toàn. Đọc khi bạn sẵn sàng nâng cấp.
Phần 4  ·  NÂNG CAO

Két sắt Git — lịch sử & tua ngược

Obsidian Sync giữ bản mới nhất, nhưng nếu lỡ xoá nhầm hay muốn xem "tháng trước file này thế nào" thì cần Git — một két sắt ghi lại mọi thay đổi, tự sao lưu lên GitHub mỗi tối.

1

Tạo SSH key trên máy 2 & gắn vào GitHub

SSH key giúp máy 2 đẩy/kéo code lên GitHub mà không cần gõ mật khẩu.

# Tạo key mới (đặt tên riêng để gọn gàng)
ssh-keygen -t ed25519 -C "may2-cas" -f ~/.ssh/github-cas

# In khoá công khai ra để copy
cat ~/.ssh/github-cas.pub

Copy dòng vừa in → vào GitHub → Settings → SSH and GPG keys → New SSH key → dán vào → Save.

2

Khai báo key cho GitHub

# Tạo/sửa file ~/.ssh/config
cat >> ~/.ssh/config <<'EOF'

Host github.com
  HostName github.com
  User git
  IdentityFile ~/.ssh/github-cas
EOF

# Kiểm tra kết nối
ssh -T git@github.com
3

Clone két sắt về máy 2

Két sắt chính là thư mục vault của bạn (đã được git init ở máy 1). Clone nó về:

cd ~/Documents
git clone git@github.com:<tài-khoản>/<tên-repo>.git "Brain to Letandao"
🟢 Ví dụ hệ thống CAS
Repo két sắt là git@github.com:ceoletandao/cas-brain.git, clone vào đúng tên Brain to Letandao để mọi đường dẫn khớp với máy 1.
⚠️ Vault = Git repo = thư mục Obsidian (cùng một chỗ)
Để tránh trùng lặp: chọn 1 trong 2 cách khởi tạo trên máy 2 — (a) clone Git trước rồi mở thư mục đó làm vault Obsidian và bật Sync; hoặc (b) để Obsidian Sync kéo về trước rồi git init + git remote add origin … trong chính thư mục đó. Đừng tạo 2 thư mục khác nhau.
4

Tự động sao lưu mỗi tối (tuỳ chọn)

Đặt máy tự commit + push lúc 22:00 mỗi ngày để luôn có bản lưu. Trên Mac dùng launchd; nhờ Claude Code dựng giúp file ~/Library/LaunchAgents/com.you.autocommit.plist trỏ tới một script git nhỏ — chỉ mất 2 phút.

Phần 5  ·  NÂNG CAO

Đồng bộ "bộ não AI" qua Google Drive

Bộ nhớ dài hạn của Claude nằm ở ~/.claude/memory. Để nó theo bạn sang máy 2, ta đặt thư mục thật trên Google Drive rồi tạo symlink (liên kết tắt) trỏ tới — cả 2 máy cùng dùng một bộ nhớ.

1

Cài Google Drive cho máy 2

Tải Google Drive for Desktop → đăng nhập cùng email với máy 1. Với thư mục bộ nhớ, đặt chế độ "Available offline" (không stream) để Claude đọc/ghi tức thì.

2

Trỏ ~/.claude/memory về Drive

Giả sử bộ nhớ thật để ở My Drive/claude-cas/memory. Trên máy 2:

# Sao lưu thư mục memory cũ (nếu có) cho chắc
mv ~/.claude/memory ~/.claude/memory.bak 2>/dev/null

# Tạo symlink trỏ tới bộ nhớ trên Drive
ln -s "$HOME/Library/CloudStorage/GoogleDrive-<email>/My Drive/claude-cas/memory" ~/.claude/memory

# Kiểm tra
ls -la ~/.claude/memory
⚠️ Chỉ đồng bộ memory — đừng đồng bộ sessions/settings.local.json
File settings.local.json và lịch sử projects/ mang tính từng-máy. Đồng bộ chúng dễ gây xung đột. Chỉ đưa memory (và phần agents/skills dùng chung) lên Drive.
Phần 6  ·  BẢO MẬT

Mang Secrets sang máy 2 — đúng cách

Secrets là API key, token, mật khẩu (thường trong .secrets/, .env). Đây là phần dễ sai nhất và nguy hiểm nhất.

🔐 3 nguyên tắc bất di bất dịch
  1. KHÔNG paste key/token vào khung chat với bất kỳ AI nào (kể cả Claude).
  2. KHÔNG để secrets lên cloud dùng chung (Obsidian Sync, Drive chung, Notes). Phải .gitignore + loại khỏi Sync.
  3. Chuyển secrets giữa 2 máy bằng tay: AirDrop, USB, hoặc password manager (1Password/Bitwarden).

Cách chuyển an toàn

read -s -p "Dán credential rồi Enter: " S \
  && sed -i '' "s|^FIELD=.*|FIELD=$S|" .secrets/file.env \
  && unset S && echo "✅ Đã lưu"
🔄 Lỡ lộ key thì sao?
Bình tĩnh: vào console nhà cung cấp (Anthropic / Google / Meta…) tạo lại (regenerate) key đó — key cũ tự vô hiệu. Cập nhật key mới vào .secrets/ và khởi động lại dịch vụ đang dùng.
Phần 7

Quy trình làm việc 2 máy hằng ngày

Có 2 máy rồi, giữ một thói quen nhỏ này là không bao giờ xung đột hay mất việc:

🌅 Khi bắt đầu (máy nào cũng vậy)

  • Mở Obsidian → chờ báo "Fully synced".
  • PRO Vào thư mục dự án chạy git pull để lấy bản mới nhất.
  • Mở Drive → chờ icon bộ nhớ sync xong rồi mới mở Claude.

🌙 Khi kết thúc

  • Lưu hết note → để Obsidian sync xong mới đóng máy.
  • PRO git add -A && git commit -m "..." && git push (hoặc để auto-commit 22:00 lo).
  • Để Drive sync nốt bộ nhớ AI.
💡 Mẹo vàng
Mỗi lần đổi máy, tự nhủ: "Máy cũ đẩy xong, máy mới mới kéo." Cứ giữ thứ tự đó là yên tâm.
Phần 8

Checklist đổi máy (bấm để tick)

Phần 9

Lỗi thường gặp

Obsidian báo xung đột (conflict) một file
Do sửa cùng file trên 2 máy khi chưa sync. Vào Settings → Sync → Version history, xem 2 phiên bản, giữ bản đúng. Phòng tránh: luôn để máy cũ sync xong trước khi mở máy mới.
claude báo "command not found"
npm global chưa nằm trong PATH. Chạy npm config get prefix để biết đường dẫn, rồi thêm .../bin vào PATH trong ~/.zshrc. Hoặc cài lại bằng bản native: curl -fsSL https://claude.ai/install.sh | bash.
npm báo lỗi quyền (EACCES) khi cài global
Đừng dùng sudo. Đặt lại thư mục global về home: npm config set prefix ~/.npm-global rồi thêm ~/.npm-global/bin vào PATH. Với wrangler/cache, có thể set npm_config_cache="$PWD/.npmcache" ngay trước lệnh.
GitHub báo "Permission denied (publickey)"
SSH key máy 2 chưa được gắn vào GitHub, hoặc ~/.ssh/config chưa trỏ đúng IdentityFile. Chạy lại ssh -T git@github.com để xem báo lỗi, kiểm tra đã dán đúng file .pub vào GitHub chưa.
Claude không nhớ gì như ở máy 1
Bộ nhớ ~/.claude/memory chưa được nối. Kiểm tra symlink (ls -la ~/.claude/memory phải trỏ tới Drive) và Drive đã sync xong thư mục đó chưa.