Cách dùng 2 account Claude Code cùng lúc - personal và work

Dùng Claude Code với account công ty nhưng muốn giữ account cá nhân riêng? Đây là cách chạy song song 2 account không cần switch bằng CLAUDE_CONFIG_DIR.

Nếu bạn đang dùng Claude Code với nhiều hơn một account - cá nhân, công việc, hoặc cho từng dự án riêng - thì sớm hay muộn sẽ đụng vào một vấn đề khá khó chịu: Claude Code chỉ cho phép một account active tại một thời điểm, và không có cơ chế nào để chạy song song.

Tình huống thực tế thì nhiều dạng. Bạn đang chạy một số server hay automation dưới account A, nhưng cần switch sang account B để làm việc khác - mỗi lần switch là phải claude auth logout rồi claude auth login lại, mất context của phiên trước. Hoặc với mình, khi dùng Claudian (plugin Claude Code cho Obsidian), có những vault mình muốn chạy dưới account cá nhân, còn một số vault khác lại cần account công ty - nhưng Claudian chỉ đọc một CLI path duy nhất, không tách được per-vault. Cũng có trường hợp account công ty bị giới hạn một số tính năng do org policy, trong khi account cá nhân thì không - và bạn cần cả hai chạy cùng lúc mà không conflict nhau.

Sau một hồi mày mò thì tìm ra cách giải quyết gọn: dùng CLAUDE_CONFIG_DIR để tạo hai config dir độc lập, chạy song song hoàn toàn mà không cần switch.


Claude Code lưu mọi thứ ở một chỗ - và đó là vấn đề

Mặc định, Claude Code lưu toàn bộ trạng thái vào ~/.claude/: auth token, settings, memory, danh sách project đã trust. Chỉ có một folder, nên chỉ có một account active tại một thời điểm. Muốn đổi account thì phải logout rồi login lại - mỗi lần như vậy là xóa session cũ, mọi thứ liên quan đến account trước biến mất.

Với hầu hết người dùng thì đây không phải vấn đề. Nhưng nếu bạn dùng Claude Code theo hai ngữ cảnh khác nhau - công việc và cá nhân - thì cái thiết kế “một folder cho tất cả” này bắt đầu gây phiền phức. Account công ty thường bị giới hạn tính năng do org policy, như Remote Control bị disable, hay có CLAUDE.md được setup riêng cho context công việc mà bạn không muốn trộn lẫn với project cá nhân. Và cứ mỗi lần switch là mất toàn bộ context của account kia - không phải cách làm việc thoải mái gì.

Terminal showing code and CLI output


CLAUDE_CONFIG_DIR - biến môi trường ít người để ý

CLAUDE_CONFIG_DIR là biến môi trường cho phép bạn chỉ định một folder khác thay cho ~/.claude/ mặc định. Khi bạn truyền biến này, Claude Code đọc auth và settings từ folder đó thay vì folder mặc định - hai instance chạy với hai config dir khác nhau là hoàn toàn độc lập, không ảnh hưởng nhau.

Ý tưởng thực ra rất đơn giản: thay vì có một “nhà” duy nhất cho mọi account, bạn tạo thêm một “nhà” thứ hai. Account nào vào nhà nào thì ở trong đó, không bao giờ gặp nhau. Với setup của mình, folder ~/.claude/ là personal account (Claude Pro cá nhân), và ~/.claude-work/ là account công ty. Mỗi lần cần dùng account công ty thì thêm CLAUDE_CONFIG_DIR=~/.claude-work vào trước lệnh - chỉ vậy thôi, không logout hay bất cứ thứ gì khác.


Setup từng bước

Bước đầu tiên là tạo folder config riêng cho account thứ hai:

mkdir ~/.claude-work

Sau đó login account đó vào folder mới:

CLAUDE_CONFIG_DIR=~/.claude-work claude auth login

Browser sẽ mở để bạn chọn account. Login xong, credentials được lưu vào ~/.claude-work/ thay vì folder mặc định. Verify bằng cách chạy hai lệnh này và đảm bảo chúng trả về hai email khác nhau:

# Default account (personal)
claude auth status

# Account thứ hai
CLAUDE_CONFIG_DIR=~/.claude-work claude auth status

Để dùng nhanh hơn mà không phải gõ env var mỗi lần, thêm alias vào ~/.zshrc:

alias claude-work="CLAUDE_CONFIG_DIR=~/.claude-work claude"

Từ giờ claude là personal, claude-work là work - chạy song song trong hai terminal, không conflict.

2 account Claude Code chạy song song


Dùng với Claudian và các tool tích hợp

Claudian - plugin Claude Code cho Obsidian - đọc CLI path từ settings, tức là bạn có thể chỉ định nó gọi một binary khác thay vì claude mặc định. Cách tạo một “phiên bản work” của claude để Claudian dùng là viết wrapper script:

cat > ~/.local/bin/claude-work << 'EOF'
#!/bin/zsh
export CLAUDE_CONFIG_DIR=~/.claude-work
exec $(which claude) "$@"
EOF

chmod +x ~/.local/bin/claude-work

Script này không làm gì khác ngoài việc set CLAUDE_CONFIG_DIR rồi chuyển toàn bộ argument sang binary gốc. Sau đó trong Claudian settings, workspace nào cần account work thì trỏ CLI path sang ~/.local/bin/claude-work. Workspace personal thì để auto-detect như cũ. Hai vault Obsidian, hai account, chạy song song trong cùng một app.

Với launchd agents cho Remote Control, sau khi đổi default ~/.claude/ về personal account thì chỉ cần reload toàn bộ:

for f in workspace1 workspace2 workspace3; do
  launchctl unload ~/Library/LaunchAgents/com.yourname.claude-remote-$f.plist
  launchctl load ~/Library/LaunchAgents/com.yourname.claude-remote-$f.plist
done

Lần này 5/5 agent connected - mỗi cái hiện một env_... ID là thành công.

Claudian CLI path setup trong Obsidian


Một thứ cần biết trước khi setup

Mỗi config dir là một slate trắng. CLAUDE.md, memory, project trust list trong ~/.claude/ sẽ không tự migrate sang folder mới - bạn cần setup lại từ đầu cho account thứ hai nếu cần. Tương tự với MCP servers: hiện tại chưa có cách nào để share config giữa hai dir, nên nếu bạn dùng nhiều MCP thì cần cấu hình riêng trong từng folder.

Với mình thì hai ngữ cảnh đủ khác nhau để không cần share settings - personal thì thiên về writing và side projects, work thì thiên về team workflows. Nhưng nếu setup của bạn phức tạp hơn thì đây là trade-off cần tính đến trước.


Cách này hoạt động vì CLAUDE_CONFIG_DIR là env var chuẩn mà Claude Code hỗ trợ - không phải hack, không phải workaround phức tạp. Mình mất cả buổi debug launchd agents trước khi nhận ra vấn đề không phải ở config mà ở auth, và giải pháp thật ra chỉ là tạo thêm một folder.

Nếu bạn đang dùng Claude Code với cả account cá nhân và org, và đang khó chịu vì phải switch qua lại - thử cách này. Còn nếu bạn đang setup Remote Control hay Claudian với multi-account, comment xuống bên dưới nhé - mình muốn nghe setup của bạn trông như thế nào.


Cảm ơn bạn đã đọc bài viết trên NateCue Insights!

✦ Miễn phí

Thích bài này? Nhận thêm mỗi tuần

AI workflows, marketing tips, và free tools. Không spam.

Cùng 1,200+ người đang đọc.

Không spam. Unsubscribe bất cứ lúc nào.