# อธิบาย CLAUDE_CONFIG_DIR

> CLAUDE_CONFIG_DIR ทำอะไรใน Claude Code มีอะไรเก็บในโฟลเดอร์ macOS เก็บการเข้าสู่ระบบไว้ที่ไหน และไฟล์ใดใช้ร่วมกันได้

Source: https://ccam.dev/th/guides/claude-config-dir/ · Updated 2026-10-19

`CLAUDE_CONFIG_DIR` บอก Claude Code ว่าจะใช้โฟลเดอร์ใดแทน `~/.claude` ทุกอย่างที่เป็นของบัญชีนั้นโดยเฉพาะอยู่ในโฟลเดอร์นี้ ได้แก่ การเข้าสู่ระบบ การตั้งค่า เซิร์ฟเวอร์ MCP ปลั๊กอิน และประวัติการสนทนา การชี้ตัวแปรนี้ไปยังโฟลเดอร์ต่างกันจะทำให้คุณได้บัญชีที่แยกจากกัน

```sh
CLAUDE_CONFIG_DIR=~/.claude-work claude
```

## มีอะไรอยู่ในโฟลเดอร์

ตรวจสอบกับ Claude Code 2.1.302:

| พาธ | เนื้อหา | ใช้ร่วมกันได้ |
| --- | --- | --- |
| `.credentials.json` | โทเค็นการเข้าสู่ระบบ (Linux), โทเค็น OAuth ของ MCP | ไม่ได้ |
| `.claude.json` | รายละเอียดบัญชี เซิร์ฟเวอร์ MCP ของผู้ใช้ สถานะแยกตามโปรเจกต์ | ไม่ได้ (เซิร์ฟเวอร์ MCP แยกต่างหาก) |
| `settings.json` | สิทธิ์ hook โมเดล แถบสถานะ ปลั๊กอิน | ได้ |
| `CLAUDE.md` | คำสั่งระดับ global | ได้ |
| `agents/`, `commands/`, `skills/`, `plugins/` | ส่วนขยาย | ได้ |
| `projects/` | การสนทนาในรูปแบบไฟล์ `.jsonl` หน่วยความจำแยกตามโปรเจกต์ | ได้ |
| `history.jsonl` | ประวัติพรอมต์ | ได้ |
| `sessions/`, `shell-snapshots/`, `cache/` และอื่น ๆ | สถานะขณะทำงาน | ไม่ได้ |

## สองรายละเอียดที่มักทำให้สับสน

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

**บน macOS การเข้าสู่ระบบอยู่ในพวงกุญแจ (Keychain) ไม่ได้อยู่ในโฟลเดอร์** Claude Code เก็บไว้ภายใต้ชื่อ `Claude Code-credentials` ตามด้วยแฮชสั้น ๆ ของพาธโฟลเดอร์เมื่อมีการตั้ง `CLAUDE_CONFIG_DIR` ดังนั้นโฟลเดอร์ที่แยกกันจึงได้รายการในพวงกุญแจแยกกัน หากพวงกุญแจปฏิเสธการเขียน Claude Code จะเปลี่ยนไปใช้ `.credentials.json` ในโฟลเดอร์แทน

## การใช้ร่วมกันระหว่างโฟลเดอร์

symbolic link ใช้งานได้: Claude Code อ่านและเขียนผ่าน `settings.json` หรือโฟลเดอร์ `projects/` ที่เป็นลิงก์ และคงลิงก์นั้นไว้ ข้อยกเว้นคือเซิร์ฟเวอร์ MCP เพราะอยู่ใน `.claude.json` ร่วมกับการเข้าสู่ระบบ ให้ส่งเซิร์ฟเวอร์เหล่านั้นด้วย `--mcp-config` แทน

ccam สร้างขึ้นบนกฎเหล่านี้ทุกข้อ ดู[การใช้ร่วมกัน](https://ccam.dev/th/docs/sharing.md)สำหรับวิธีที่ ccam ลิงก์โฟลเดอร์ และ[คู่มือการใช้หลายบัญชี](https://ccam.dev/th/guides/multiple-claude-code-accounts.md)สำหรับภาพรวมทั้งหมด
