# ccam กับเครื่องมือสลับบัญชี Claude Code อื่น ๆ

> เปรียบเทียบ ccam กับ claude-swap, CCS, clausona, clauth, CAAM, cux และเครื่องมือสลับบัญชี Claude Code อื่น ๆ และแนวทางใดเหมาะกับการใช้งานแบบไหน

Source: https://ccam.dev/th/compare/account-switchers/ · Updated 2026-10-20

เครื่องมือสลับบัญชี Claude Code ใช้แนวทางใดแนวทางหนึ่งจากสองแบบ ส่วนใหญ่สลับการเข้าสู่ระบบภายในโฟลเดอร์ `~/.claude` เพียงโฟลเดอร์เดียว จึงใช้งานได้ทีละบัญชี ส่วนเครื่องมืออื่นรวมถึง ccam ให้แต่ละบัญชีมีโฟลเดอร์ของตัวเองด้วย `CLAUDE_CONFIG_DIR` ทุกบัญชีจึงยังเข้าสู่ระบบอยู่และรันหลายบัญชีพร้อมกันได้ ccam ยังเพิ่มการใช้การตั้งค่าและเซิร์ฟเวอร์ MCP ร่วมกัน และสนทนาต่อในโฟลเดอร์ของอีกบัญชีหนึ่งได้

## สลับการเข้าสู่ระบบชุดเดียว หรือแยกโฟลเดอร์?

**การสลับการเข้าสู่ระบบ** มีการตั้งค่า เซิร์ฟเวอร์ MCP และประวัติเพียงชุดเดียว เพราะมีโฟลเดอร์เดียว การสลับทำได้เร็ว และเซสชันที่กำลังทำงานอยู่ก็รับการเข้าสู่ระบบใหม่ได้ แต่ใช้งานได้ทีละบัญชีเท่านั้น สำหรับทุกเทอร์มินัลและทุกเอดิเตอร์พร้อมกัน

ในการสลับ เครื่องมือจะเก็บสำเนาการเข้าสู่ระบบของบัญชีอื่นทุกบัญชีไว้ แล้วเขียนกลับเข้าที่เดิมเมื่อสลับ Claude Code เปลี่ยน refresh token ในการเข้าสู่ระบบทุกครั้งที่ต่ออายุ สำเนาที่เก็บไว้แต่ละชุดจึงต้องตามให้ทันเซสชันที่กำลังทำงานอยู่เสมอ บัญชีที่หลุดออกจากระบบหรือต้อง `/login` ใหม่หลังสลับเป็นหนึ่งในปัญหาที่โปรเจกต์เหล่านี้แก้บ่อยที่สุด

**การแยกโฟลเดอร์** เป็นวิธีที่[เอกสารของ Claude Code อธิบายไว้](https://code.claude.com/docs/en/authentication#log-in-with-multiple-accounts) ทุกบัญชียังเข้าสู่ระบบอยู่ และคุณรันเซสชันงานกับเซสชันส่วนตัวควบคู่กันได้ การเข้าสู่ระบบแต่ละชุดอยู่ในโฟลเดอร์ของตัวเอง และ Claude Code ต่ออายุที่นั่นตามปกติ ข้อแลกเปลี่ยนคือแต่ละโฟลเดอร์เริ่มต้นด้วยการตั้งค่า เซิร์ฟเวอร์ MCP และประวัติของตัวเอง เว้นแต่จะมีเครื่องมือช่วยให้ใช้ร่วมกัน

## เปรียบเทียบเครื่องมือ

ข้อมูลจากเอกสารและซอร์สโค้ดของแต่ละโปรเจกต์ ณ วันที่ 2026-10-20 (clausona: v0.12.0-beta) "ไม่ได้ระบุในเอกสาร" หมายถึงโปรเจกต์ไม่ได้กล่าวถึง ไม่ได้หมายความว่าไม่มีฟีเจอร์นั้น

| เครื่องมือ | แนวทาง | หลายบัญชีพร้อมกัน | การใช้งาน 5 ชั่วโมงและรายสัปดาห์ | เมื่อถึงขีดจำกัด | แพลตฟอร์ม |
| --- | --- | --- | --- | --- | --- |
| ccam | แยกโฟลเดอร์ | ได้ | ได้ `ccam usage` | คุณรัน `ccam next --auto --continue` เพื่อสนทนาต่อในบัญชีที่เหลือโควตามากที่สุด ส่วน `ccam --fallback` รันงาน `-p` ซ้ำในบัญชีนั้นให้เอง และ `ccam pick` กระจาย worker ไปยังหลายบัญชี | Linux, macOS, Windows |
| [claude-swap](https://github.com/realiti4/claude-swap) | สลับการเข้าสู่ระบบ; แยกโฟลเดอร์ด้วย `cswap run` | ได้ เมื่อใช้ `cswap run` | ได้ | `cswap auto` สลับการเข้าสู่ระบบเมื่อถึงเกณฑ์ เซสชันที่ทำงานอยู่ยังทำงานต่อ | Linux, macOS, Windows |
| [CCS](https://github.com/kaitranntt/ccs) | แยกโฟลเดอร์ | ได้ | บางส่วน | กลุ่มบัญชีส่งคำขอต่อไปยังบัญชีถัดไปผ่านพร็อกซีในเครื่อง | Linux, macOS, Windows |
| [clausona](https://github.com/larcane97/clausona) | แยกโฟลเดอร์ | ได้ | ได้ | route เลือกบัญชีที่ยังมีโควตาก่อนการรันแต่ละครั้ง รอการรีเซ็ตได้ และแจกบัญชีที่ต่างกันให้แต่ละ worker | Linux, macOS, Windows |
| [clauth](https://github.com/uwuclxdy/clauth) | สลับการเข้าสู่ระบบ; แยกโฟลเดอร์ด้วย `clauth start` | ได้ เมื่อใช้ `clauth start` | ได้ | สลับไล่ตามลำดับบัญชีสำรอง | Linux, macOS, Windows |
| [CAAM](https://github.com/Dicklesworthstone/coding_agent_account_manager) | สลับการเข้าสู่ระบบ หรือโปรไฟล์ที่แยกขาดจากกัน | ได้ เมื่อใช้โปรไฟล์ที่แยกขาดจากกัน | ได้ | `caam run` ลองรันคำสั่งแบบไม่โต้ตอบอีกครั้งในบัญชีอื่น | Linux, macOS, Windows |
| [cux](https://github.com/inulute/cux) | สลับการเข้าสู่ระบบและครอบ `claude` | ไม่ได้ ใช้งานได้ทีละบัญชี | ได้ | สลับการเข้าสู่ระบบและสนทนาเดิมต่อ | Linux, macOS, Windows |
| [CCSwitcher](https://github.com/XueshiQiao/CCSwitcher) | สลับการเข้าสู่ระบบ | ไม่ได้ | ได้ | สลับเมื่อถึงเกณฑ์ (เลือกเปิดได้) | macOS |
| [Claude Switcher](https://github.com/Symbioose/claude-account-switcher) | สลับการเข้าสู่ระบบ | ไม่ได้ | ได้ | สลับเมื่อถึง 100% (เลือกเปิดได้) | macOS |

ccswap เป็น fork ของ claude-swap ที่จัดการการเข้าสู่ระบบ Codex ด้วย [claude-account](https://github.com/hamzarehmandeveloper/claude-account), [claude-multiprofile](https://github.com/jmdarre-v/claude-multiprofile) และ [claude-code-profiles](https://github.com/quinnjr/claude-code-profiles) ก็ให้แต่ละบัญชีมีโฟลเดอร์ของตัวเองเช่นกัน เครื่องมือหลายตัวในนี้รองรับ coding agent อื่นด้วย เช่น Codex หรือ Gemini

## เครื่องมือแต่ละตัวสร้างมาอย่างไร

| เครื่องมือ | เขียนด้วย | ระหว่างที่ Claude Code ทำงาน | คัดลอกการเข้าสู่ระบบไปมาระหว่างที่ต่าง ๆ | สิ่งที่บัญชีใช้ร่วมกันได้ |
| --- | --- | --- | --- | --- |
| ccam | Go ไบนารีแบบ static ไฟล์เดียว | ไม่มีอะไร: ccam แทนที่ตัวเองด้วย `claude` (บน Windows ซึ่งทำแบบนั้นไม่ได้ ccam จะรอให้มันจบ) | ไม่ | แยกทีละรายการ: แต่ละบัญชีเลือกได้ว่าจะเป็นแบบ local หรือกลุ่มที่ตั้งชื่อไว้ |
| claude-swap | Python 3.12+ ติดตั้งด้วย uv หรือ pipx | ไม่มีอะไรเมื่อใช้ `cswap run`; `cswap auto` และแอปแถบเมนูทำงานค้างไว้ | ใช่ เมื่อสลับการเข้าสู่ระบบ | เมื่อใช้ `cswap run`: การตั้งค่า `CLAUDE.md` และส่วนขยายรวมกันเป็นชุด ประวัติเลือกได้; เซิร์ฟเวอร์ MCP คัดลอกทุกครั้งที่เปิด |
| CCS | Node.js 18+ หรือ Bun | CCS อยู่เป็นโปรเซสแม่; กลุ่มบัญชีเพิ่มพร็อกซีในเครื่อง | ไม่ สำหรับโฟลเดอร์บัญชีของมัน; กลุ่มบัญชีเก็บการเข้าสู่ระบบของตัวเอง | ใช้ร่วมกันหรือแบบ local ต่อบัญชี ประวัติอยู่ในกลุ่มบริบท; เซิร์ฟเวอร์ MCP ถูกคัดลอก |
| clausona | TypeScript, Node.js 20+ | `claude` ธรรมดารันผ่านฟังก์ชันของ shell; `clausona run` ให้ Node อยู่เป็นโปรเซสแม่; มีโปรเซส Node ทำงานเบื้องหลังหลังจากออกทุกครั้ง | ไม่ แต่มันต่ออายุโทเค็นของบัญชีที่ไม่ได้ใช้งานเองเพื่ออ่านการใช้งาน | ทุกอย่างยกเว้นไฟล์เฉพาะของแต่ละบัญชี จากบัญชีหลักบัญชีเดียว; ประวัติเลือกได้; เซิร์ฟเวอร์ที่เพิ่มด้วย `claude mcp add` ไม่ถูกใช้ร่วมกัน |
| clauth | Rust | clauth อยู่เป็นโปรเซสแม่ | ใช่ เมื่อสลับการเข้าสู่ระบบ | ทั้ง `~/.claude` หรือไม่มีอะไรเลย |
| CAAM | Go | ขึ้นอยู่กับโหมด; มี daemon ให้เลือกใช้ | ใช่ ในโหมด vault | กำหนดตายตัวตามโหมด; เซิร์ฟเวอร์ MCP คัดลอกทุกครั้งที่เปิด |
| cux | Go | wrapper ครอบ `claude` ค้างไว้ | ใช่ | ทุกอย่าง: โฟลเดอร์เดียว |
| CCSwitcher, Claude Switcher | แอป macOS (Swift, Python) | แอปแถบเมนู | ใช่ | ทุกอย่าง: โฟลเดอร์เดียว |

## จุดเด่นของ ccam

### การเข้าสู่ระบบอยู่ที่เดิมที่ Claude Code วางไว้

ccam ไม่เคยคัดลอกการเข้าสู่ระบบ Claude จากที่หนึ่งไปอีกที่หนึ่ง การเข้าสู่ระบบของแต่ละบัญชีอยู่ในโฟลเดอร์ของตัวเอง หรือบน macOS อยู่ในรายการพวงกุญแจ (Keychain) ของโฟลเดอร์นั้นเอง และ Claude Code เป็นโปรแกรมที่ต่ออายุให้ ไม่มีสำเนาที่เก็บไว้ซึ่งอาจไม่ตรงกันได้ `~/.claude` เดิมที่ลงทะเบียนด้วย `ccam import` ยังใช้รายการพวงกุญแจ (Keychain) เดียวกับที่ `claude` ธรรมดาใช้ จึงยังเข้าสู่ระบบอยู่ไม่ว่าจะเปิดด้วยวิธีไหน

ccam ต่ออายุโทเค็นที่หมดอายุเองก็ต่อเมื่อคุณรัน `ccam usage --refresh` เท่านั้น โดยจะล็อกก่อนและปฏิเสธหากบัญชีนั้นกำลังทำงานอยู่ จึงไม่เคยเปลี่ยนโทเค็นใต้เซสชันที่ยังทำงานอยู่

### ไม่มีอะไรทำงานคั่นระหว่างคุณกับ Claude Code

ccam อ่านไฟล์หนึ่งไฟล์ ตรวจลิงก์ แล้วแทนที่ตัวเองด้วย `claude` (`exec`) ระหว่างที่คุณทำงานจะไม่มีโปรเซสของ ccam ไม่มี wrapper พร็อกซี หรือ daemon อินพุตมาตรฐาน สัญญาณ และรหัสออกเป็นของ Claude Code และคำขอของมันส่งตรงไปยัง Anthropic Windows แทนที่โปรเซสไม่ได้ บน Windows ccam จึงเริ่ม Claude Code ด้วยคอนโซลเดียวกันและรอรหัสออกของมัน โดยไม่ทำอย่างอื่น

การเริ่มบัญชีด้วยวิธีนี้ใช้เวลาเพิ่มประมาณ 4 ms ต่ำกว่า 6 ms ที่เปอร์เซ็นไทล์ที่ 95 และใช้หน่วยความจำสูงสุด 8 MB ([`scripts/perf-check.sh`](https://github.com/jhyunwoo/ccam/blob/main/scripts/perf-check.sh) กับ hyperfine 300 รอบ) บนแล็ปท็อปเครื่องเดียวกัน แค่เริ่มตัวแปลภาษา Python ก็ใช้ 13 ms และ Node.js ใช้ 31 ms ก่อนที่โปรแกรมจะได้ทำอะไรเลย

### ใช้ร่วมกันทีละรายการ ทีละบัญชี

เซิร์ฟเวอร์ MCP, `settings.json`, `CLAUDE.md`, ส่วนขยาย (เอเจนต์ คำสั่ง สกิล ปลั๊กอิน) และประวัติการสนทนาเป็นห้ารายการที่แยกจากกัน แต่ละบัญชีตั้งแต่ละรายการเป็น `local` หรือกลุ่มใดกลุ่มหนึ่ง บัญชีงานสองบัญชีจึงใช้ประวัติร่วมกันในกลุ่ม `work` ได้ ขณะที่บัญชีส่วนตัวเก็บประวัติของตัวเองไว้ และทั้งสามบัญชีใช้เซิร์ฟเวอร์ MCP ชุดเดียวกัน

- เซิร์ฟเวอร์ MCP ส่งผ่าน `--mcp-config` ตอนเปิด ค่าเริ่มต้นของ ccam จึงไม่เคยแก้ไข `.claude.json` ซึ่งเป็นไฟล์ที่ Claude Code เขียนทับระหว่างทำงาน `ccam mcp add` เพิ่มเซิร์ฟเวอร์ครั้งเดียวให้ทั้งกลุ่ม
- รายการอื่นเป็นลิงก์ไปยังโฟลเดอร์ของกลุ่ม การเปลี่ยนแปลงในบัญชีหนึ่งจึงปรากฏในบัญชีอื่นทันที ไม่มีอะไรถูกคัดลอกตอนเปิด
- การเข้าสู่ระบบ `.claude.json` และสถานะการทำงานไม่เคยถูกใช้ร่วมกัน

### ทุกการเปลี่ยนแปลงแสดงให้ดูก่อนและสำรองไว้

`ccam share` และ `ccam migrate` พิมพ์แผนและถามก่อนย้ายสิ่งใด เมื่อไฟล์ในบัญชีกับในกลุ่มต่างกัน คุณเป็นผู้เลือก: เก็บของกลุ่มไว้ ใช้ของคุณ หรือรวม JSON ไฟล์ต้นฉบับไปอยู่ที่ `.ccam-backup/<time>/` โฟลเดอร์ของบัญชีที่ลบไปอยู่ในโฟลเดอร์ถังขยะ และไฟล์ถูกแทนที่ด้วยการเปลี่ยนชื่อครั้งเดียว การเขียนที่ถูกขัดจังหวะจึงยังเหลือไฟล์เดิมไว้ `--dry-run` แสดงว่าการเปิด การใช้ร่วมกัน การย้าย คำสั่งลัด การอัปเดต และการซ่อมจะทำอะไร `ccam doctor --fix` ซ่อมลิงก์และสิทธิ์ที่เสีย

### สนทนาเดิมต่อในบัญชีถัดไป

เมื่อใช้ประวัติร่วมกัน `ccam next --auto --continue` จะถามการใช้งานจากทุกบัญชีพร้อมกัน เปิดบัญชีที่เหลือโควตามากที่สุด และสนทนาต่อ คุณเป็นผู้ตัดสินใจว่าจะสลับเมื่อไร ccam ไม่เฝ้าดูการใช้งานของคุณอยู่เบื้องหลัง แถบสถานะจะแนะนำคำสั่งนี้เมื่อบัญชีใช้งานถึง 90%

สคริปต์รอคุณไม่ได้ `ccam --fallback work -p "…"` จึงสลับแทนให้: เมื่อบัญชีถึงขีดจำกัด คำสั่งเดิมจะรันอีกครั้งด้วยบัญชีที่เหลือโควตามากที่สุด และพิมพ์เฉพาะผลลัพธ์ของการรันที่ทำงานจนจบ ความล้มเหลวที่ไม่ใช่ขีดจำกัดการใช้งานจะส่งต่อไปตามเดิม สำหรับ worker ที่ทำงานขนานกัน `ccam pick` จะให้บัญชีที่ยังเหลือโควตาแก่แต่ละ worker คนละบัญชี และทั้งสองคำสั่งจะออกด้วยรหัส 75 เมื่อไม่มีบัญชีใดเหลือโควตา

### บัญชีที่ใช่ในแต่ละโฟลเดอร์

`ccam folder work ~/code/company` ทำให้ทุกการเปิดที่ไม่ระบุชื่อบัญชีภายในโฟลเดอร์นั้นใช้ `work` ขณะที่โปรเจกต์อื่นของคุณยังใช้บัญชีเริ่มต้น การตั้งค่านี้อยู่ใน `config.toml` ไฟล์เดียวกับที่ทุกการเปิดอ่านอยู่แล้ว จึงไม่เสียเวลาเพิ่ม

### ไบนารีเดียว ดาวน์โหลดที่ผ่านการตรวจสอบ

ccam เป็นไบนารีแบบ static ขนาดประมาณ 10 MB ไม่ต้องติดตั้ง runtime ใด ๆ สำหรับ Linux, macOS และ Windows สคริปต์ติดตั้ง (`install.sh`, `install.ps1`) และ `ccam update` ตรวจทุกไฟล์ที่ดาวน์โหลดกับ checksum SHA-256 ของรีลีส และ ccam ไม่เคยตรวจหาอัปเดตเอง ไม่มีการเก็บข้อมูลการใช้งาน (telemetry): คำขอเดียวที่ ccam ส่งคือการถามการใช้งานบัญชีของคุณจาก Anthropic (แบบขนาน จำกัดเวลา 3 วินาที และแคช 60 วินาที) และการดาวน์โหลดที่คุณสั่ง

## สิ่งที่เครื่องมืออื่นทำได้มากกว่า

- claude-swap, clauth, cux, CAAM และ CCSwitcher สลับเซสชันแบบโต้ตอบที่กำลังทำงานอยู่ได้เองเมื่อบัญชีใช้งานเกินเกณฑ์ ส่วน ccam สลับการรันแบบ `-p` ด้วย `--fallback` และปล่อยเซสชันแบบโต้ตอบให้คุณเป็นผู้สลับ
- บน Windows ที่ไม่ได้เปิด Developer Mode ccam ใช้โฟลเดอร์ร่วมกันได้ แต่ใช้ไฟล์เดี่ยวอย่าง `settings.json` ร่วมกันไม่ได้ ส่วน claude-swap และ CCS คัดลอกไฟล์เหล่านั้นแทน
- CCSwitcher, Claude Switcher และ claude-swap แสดงการใช้งานในแถบเมนูของ macOS
- CCS, clausona, CAAM, clauth, ccswap และ Claude Switcher จัดการ Codex และ coding agent อื่นด้วย
- clausona ยังเปิดและปิดส่วนขยายแยกตามบัญชีได้ (`ccam ext` ของ ccam แค่แสดงเท่านั้น) ติดตามค่าใช้จ่ายโทเค็นในเครื่อง และมีปลั๊กอิน Claude Code ที่รัน worker จำนวนมากใน tmux และเทอร์มินัลอื่น
- CAAM, CCSwitcher และ Claude Switcher ติดตั้งด้วย Homebrew ได้ และ clauth กับ CAAM ลงลายเซ็นให้ checksum ของรีลีส ส่วน ccam ติดตั้งด้วยสคริปต์ของตัวเอง `.deb` หรือ `go install` และตรวจ checksum โดยไม่มีลายเซ็น

## แบบไหนเหมาะกับคุณ?

เลือกเครื่องมือที่สลับการเข้าสู่ระบบ หากคุณใช้ทีละบัญชี หรือต้องการให้เซสชันที่กำลังทำงานสลับอัตโนมัติ เลือก ccam หากคุณต้องการใช้หลายบัญชีควบคู่กัน มีการตั้งค่าชุดเดียวที่ใช้ร่วมกัน สนทนาเดิมต่อในบัญชีถัดไป และไม่มีอะไรทำงานอยู่ข้าง ๆ Claude Code บน Linux, macOS หรือ Windows หากไม่ต้องใช้อะไรร่วมกันเลย [shell alias ธรรมดา](https://ccam.dev/th/compare/aliases.md) ก็เพียงพอ

การใช้หลายบัญชีได้หรือไม่ขึ้นอยู่กับข้อกำหนดของแต่ละบัญชี โปรดตรวจสอบก่อนใช้งาน
