Claude Code Unpacked: คู่มือภาพแบบเข้าใจง่าย
(ccunpacked.dev)- โปรเจ็กต์ไม่เป็นทางการที่วิเคราะห์ โครงสร้างทั้งหมดและการทำงานภายในของ Claude Code แบบภาพ ทำให้สามารถสำรวจ agent loop และ ระบบเครื่องมือมากกว่า 50 รายการ ได้ตั้งแต่การประมวลผลอินพุตไปจนถึงการเรนเดอร์คำตอบ
- ประกอบด้วย 804 ไฟล์, โค้ดมากกว่า 220,000 บรรทัด, คำสั่งมากกว่า 40 รายการ, เครื่องมือมากกว่า 22 รายการ และเป็น ผลการวิเคราะห์อิสระที่ไม่เกี่ยวข้องกับ Anthropic
- agent loop ประกอบด้วย กระบวนการ 11 ขั้นตอน ได้แก่ อินพุต ข้อความ ระบบ API การเรียกใช้เครื่องมือ และการเรนเดอร์ ทำให้ติดตามกระบวนการสร้างคำตอบของ Claude Code ได้
- ผ่าน ระบบเครื่องมือและแคตตาล็อกคำสั่ง มีการจัดหมวดหมู่ฟังก์ชันย่อย เช่น งานไฟล์ การรัน การค้นหา การวางแผน และการจัดการระบบ รวมถึงมี ฟีเจอร์ไม่เปิดเผยและฟีเจอร์ทดลอง จำนวนมาก
- ฟังก์ชันที่ซ่อนอยู่ เช่น Buddy, Kairos, UltraPlan, Coordinator Mode รองรับความสามารถที่ขยายออกไป เช่น การวางแผนระยะยาว งานแบบขนาน การควบคุมระยะไกล และเซสชันต่อเนื่อง
โครงสร้างและการทำงานภายในของ Claude Code
- โปรเจ็กต์ที่ให้สำรวจแบบภาพได้ทั้ง agent loop, เครื่องมือมากกว่า 50 รายการ, การ orchestration แบบหลายเอเจนต์, และ ฟีเจอร์ที่ไม่เปิดเผย ของ Claude Code ตั้งแต่การประมวลผลอินพุตไปจนถึงการเรนเดอร์คำตอบ
- ประกอบด้วย 804 ไฟล์, โค้ดมากกว่า 220,000 บรรทัด, คำสั่งมากกว่า 40 รายการ, และ เครื่องมือมากกว่า 22 รายการ
- วิเคราะห์จากซอร์สโค้ดที่เปิดเผยต่อสาธารณะ และเป็น โปรเจ็กต์ไม่เป็นทางการที่ไม่เกี่ยวข้องกับ Anthropic
- จุดเวลาของการวิเคราะห์คือ 31 มีนาคม 2026 โดย zackautocracy คัดสรรร่วมกับ DeepWiki
-
Agent loop
- เมื่อผู้ใช้ป้อนข้อความ Claude Code จะผ่าน 11 ขั้นตอนคือ อินพุต → ข้อความ → ประวัติ → ระบบ → API → โทเค็น → เครื่องมือ → ลูป → การเรนเดอร์ → ฮุก → รอ
- อินพุตถูกประมวลผลผ่าน คอมโพเนนต์
TextInputของ Ink และในโหมดไม่โต้ตอบจะใช้ standard input (stdin) - แต่ละขั้นตอนถูกจัดวางเพื่อให้สามารถติดตามกระบวนการที่ Claude Code รับข้อความและสร้างคำตอบได้อย่างละเอียด
-
ตัวสำรวจสถาปัตยกรรม
- สามารถคลิกสำรวจทั้ง source tree ได้ โดยองค์ประกอบหลักมีดังนี้
- Tools & Commands: เครื่องมือและคำสั่งที่มีมาในตัว
- Core Processing: ลอจิกการประมวลผลหลัก
- UI Layer: ส่วนประกอบของส่วนติดต่อผู้ใช้
- Infrastructure: โครงสร้างพื้นฐานและสภาพแวดล้อมการรัน
- Support & Utilities: ยูทิลิตีสนับสนุน
- Personality & UX: องค์ประกอบที่เกี่ยวข้องกับประสบการณ์ผู้ใช้
- สามารถคลิกสำรวจทั้ง source tree ได้ โดยองค์ประกอบหลักมีดังนี้
ระบบเครื่องมือและคำสั่ง
-
ระบบเครื่องมือ
- จัดหมวดหมู่ เครื่องมือในตัวมากกว่า 22 รายการ ที่ Claude Code สามารถเรียกใช้ได้ตามหน้าที่
-
งานไฟล์
- FileRead, FileEdit, FileWrite, Glob, Grep, NotebookEdit รวม 6 เครื่องมือ
-
การรัน
- Bash, PowerShell, REPL รวม 3 เครื่องมือ
-
การค้นหาและการดึงข้อมูล
- WebBrowser🔒, WebFetch, WebSearch, ToolSearch รวม 4 เครื่องมือ
-
เอเจนต์และงาน
- Agent, SendMessage, TaskCreate, TaskList, TeamCreate รวม 11 เครื่องมือ
-
การวางแผน
- EnterPlanMode, ExitPlanMode, VerifyPlanExecution🔒 รวม 5 เครื่องมือ
-
ที่เกี่ยวข้องกับ MCP
- ListMcpResources, ReadMcpResource, McpAuth รวม 4 เครื่องมือ
-
ระบบ
- AskUserQuestion, TodoWrite, Config, Workflow🔒, TerminalCapture🔒 รวม 11 เครื่องมือ
-
ฟีเจอร์ทดลอง
- Sleep, SendUserMessage, LSP🔒, PushNotification🔒 รวม 8 เครื่องมือ
-
แคตตาล็อกคำสั่ง
- จัดหมวดหมู่ คำสั่งแบบ slash ทั้งหมด ที่ใช้ได้ใน Claude Code ตามหน้าที่
-
การตั้งค่าและการกำหนดค่า
- /init, /login, /logout, /config, /permissions, /model, /theme เป็นต้น รวม 12 คำสั่ง
-
เวิร์กโฟลว์ประจำวัน
- /compact, /memory, /context, /plan, /resume, /files, /summary เป็นต้น รวม 24 คำสั่ง
-
รีวิวโค้ดและ Git
- /review, /commit, /diff, /branch, /issue, /autofix-pr🔒 เป็นต้น รวม 13 คำสั่ง
-
การดีบักและการวินิจฉัย
- /status, /stats, /usage, /think-back, /debug-tool-call, /heapdump เป็นต้น รวม 23 คำสั่ง
-
ฟีเจอร์ขั้นสูงและฟีเจอร์ทดลอง
- /advisor, /remote-control🔒, /teleport, /plugin, /web-setup, /help, /exit เป็นต้น รวม 23 คำสั่ง
ฟีเจอร์ที่ซ่อนอยู่
- มี ฟีเจอร์ไม่เปิดเผย จำนวนมากที่มีอยู่ในโค้ดแต่ยังไม่ได้ปล่อยใช้งาน
-
Buddy
- สัตว์เลี้ยงเสมือนในเทอร์มินัล ที่ชนิดและความหายากถูกกำหนดตาม account ID
-
Kairos
- โหมดต่อเนื่องที่รองรับ การรวมความจำข้ามเซสชันและการทำงานเบื้องหลังแบบอัตโนมัติ
-
UltraPlan
- เซสชันวางแผนระยะยาวที่รันได้นานสูงสุด 30 นาที บน โมเดลระดับ Opus
-
Coordinator Mode
- เอเจนต์หลัก แบ่งงานและ สร้าง worker แบบขนาน เพื่อรวบรวมผลลัพธ์
-
Bridge
- ฟังก์ชันสำหรับ ควบคุม Claude Code จากระยะไกลผ่านโทรศัพท์มือถือหรือเบราว์เซอร์
-
Daemon Mode
- รัน เซสชันเบื้องหลัง ด้วยออปชัน
--bgโดยภายในใช้tmux
- รัน เซสชันเบื้องหลัง ด้วยออปชัน
-
UDS Inbox
- รองรับการสื่อสารระหว่างเซสชันผ่าน Unix domain socket
-
Auto-Dream
- ระหว่างเซสชัน AI จะ ทบทวนกิจกรรมก่อนหน้าและสรุปสิ่งที่เรียนรู้
ข้อมูลโปรเจ็กต์
- เป็น โปรเจ็กต์วิเคราะห์ไม่เป็นทางการ ที่ไม่มีความเกี่ยวข้องโดยตรงกับ Anthropic
- สร้างขึ้นจาก ซอร์สโค้ด Claude Code ที่เปิดเผยสู่สาธารณะ และบางส่วนของเนื้อหาอาจ ไม่แม่นยำหรือเป็นเวอร์ชันเก่า
- การวิเคราะห์ดำเนินการบนพื้นฐานของซอร์สโค้ดที่ @Fried_rice เปิดเผย
- สร้างโดย zackautocracy พร้อมการสนับสนุนด้าน AI curation จาก DeepWiki
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
โค้ดเบสของเอเจนต์ CLI ระดับ 500k บรรทัด แสดงให้เห็นว่าความพยายามในการ ควบคุม LLM แบบความน่าจะเป็นให้ทำงานอย่างกำหนดแน่นอน นั้นกลายเป็นนรกของการจัดการสถานะที่ซับซ้อนแค่ไหน
มันทำงานได้ดีบนแพลตฟอร์มที่เรียบง่าย แต่พอเป็นรีโพซิทอรีองค์กรขนาดใหญ่ก็พังได้ง่าย
ถ้าไม่มี external state machine ก็ต้อง บังคับความน่าเชื่อถือแบบ brute force ทำให้ 90% ของโค้ดเต็มไปด้วย defensive programming — ทั้ง regex, การเก็บกวาด context, retry loop, state rollback ฯลฯ เพื่อกันไม่ให้เอเจนต์ drift
งานภาพดูเจ๋งดี แต่ก็ยังให้ความรู้สึกเหมือนกำลังไล่ต้อนก้อนโค้ด มากกว่าจะเป็น governance ในระดับระบบ
ฝั่งไคลเอนต์ถูกออกแบบให้มีแค่ชุดเครื่องมือเรียบง่าย (read file, output rich text ฯลฯ) และเปิดทางให้เซิร์ฟเวอร์สร้างนวัตกรรมได้เร็ว นี่แหละคือหัวใจสำคัญ
ผมคิดว่าเคล็ดลับจริง ๆ คือโครงสร้างที่ทำให้ทีมเซิร์ฟเวอร์ต้องคิดว่า “จะใช้ API ที่จำกัดนี้ให้สร้างสรรค์ที่สุดได้อย่างไร?”
ถ้ามันรักษาสัญญาไม่ได้ ปัญหาจะไม่ใช่แค่ “โค้ดไม่เสถียร” แต่คือ ระบบการเงินทั้งระบบอาจสั่นคลอน
ที่อย่าง Meta กลับเป็นกรณีตัวอย่างที่ใช้ CC ได้ดีที่สุดเสียอีก
ผู้เขียนเองครับ ผมทำเว็บ visualization นี้ขึ้นมาภายในไม่กี่ชั่วโมงหลังจาก Claude Code หลุด
ปกติผมใช้ pi อยู่แล้วเพื่อสร้าง coding agent ของตัวเอง และอยากศึกษาสถาปัตยกรรมของ Anthropic (เช่น ระบบเครื่องมือ, agent loop ฯลฯ)
เพราะโค้ดมีถึง 500,000 บรรทัด เลยสำรวจได้ยาก ผมจึงทำแผนที่เชิงภาพไว้ใช้เป็นข้อมูลอ้างอิง
ตอนนี้ก็กำลังอัปเดตเว็บไซต์ต่อเนื่องตามฟีดแบ็ก ถ้ามีอะไรตกหล่นก็บอกได้เลย
ผมเปรียบเทียบทั้งการออกแบบและการ implement ของสองระบบนี้ และรู้สึกประทับใจที่เว็บไซต์ของผู้เขียนก็ดูเหมือนสร้างด้วย pi
ถ้าเป็นไปได้ก็อยากเห็น visualization เปรียบเทียบ pi vs cc ด้วย
แต่ถ้าเพิ่ม annotation หรือ tooltip ในส่วน ‘message format ของ Anthropic’ ก็น่าจะดี — เพราะจริง ๆ แล้วมันก็เป็นฟอร์แมตของ OpenAI ด้วย
สงสัยว่ามี agent harness ที่เขียนขึ้นโดยไม่ใช้ AI อยู่บ้างไหม
โครงสร้างมันเหมือนแค่ TUI ง่าย ๆ ที่เรียก model endpoint แต่กลับมีถึง 500k บรรทัด รู้สึกว่ามันเยอะเกินไป
มันอาจเกิดจากการนำโค้ดกลับมาใช้ซ้ำหรือการทำเป็นไลบรารีก็ได้ หรืออาจเป็นผลจาก แรงกดดันด้านเวลา แบบสตาร์ทอัปก็ได้
ปัญหาการแปลง ASCII → Unicode ทำให้ pipe หรือ parser พัง และยังทำให้ copy/paste ยากขึ้น
ฟังก์ชันที่ควรเรียบง่ายกลับกลายเป็น เครื่องจักรแบบ Rube Goldberg ไปเสียแล้ว
มีข้อสงสัยว่า “500k บรรทัดเนี่ย ไม่ใช่แค่ระดับ REPL ธรรมดาเหรอ?”
Opencode 670k, Codex 720k, Gemini 570k บรรทัด ดังนั้นขนาดของ Claude Code ไม่ได้ผิดปกติ
แต่รายละเอียดอย่างการติดตาม cache TTL ก็ถือว่าน่าสนใจ
ถ้าเป็นปี 2020 คงนึกไม่ออกเลยว่าจะสามารถ วิเคราะห์โค้ดที่หลุดออกมาแบบเป็นภาพ ได้ขนาดนี้
ผมเองก็ทำเว็บคล้ายกันเมื่อ 11 ชั่วโมงก่อน แต่ไม่ได้รับความสนใจ
ถึงอย่างนั้นพอเห็น implementation อื่นก็ยังดีใจอยู่
งานที่ผมลองทำอยู่ ที่นี่
สิ่งที่ยังน่าทึ่งอยู่คือการทำ เว็บสวย ๆ แบบนี้ให้เสร็จภายในสองวัน
เว็บที่ LLM สร้างบางทีก็ คุณภาพภายนอกดูดี แต่ความน่าเชื่อถือของเนื้อหาอาจต่ำ
ตัวอย่างเช่น nzoilwatch.com ที่ดูเหมือนงานผู้เชี่ยวชาญ แต่จริง ๆ เป็นแค่โปรเจกต์ส่วนตัว
ถ้าระบุให้ชัดเจนไปเลยว่า ใช้ LLM หรือไม่ ก็อาจช่วยลดความเข้าใจผิดได้
พอผมบอกว่า UI ที่ผมทำมันยังง่อยอยู่ เขาก็บอกว่าพวกเขาใช้ ไลบรารี UI component ภายในของตัวเอง
เพราะงั้นผมเลยลองทำไลบรารีชื่อ substrateui.dev ขึ้นมาเอง และกำลังสนุกกับ กระบวนการเรียนรู้ UI เอง ผ่านการให้ Claude Code ช่วยจัดโครงสร้าง design system ใหม่
ซอร์สที่หลุดดูได้จาก รีโพซิทอรีบน Codeberg
น่าสนใจที่ Anthropic พัฒนาผลิตภัณฑ์ของตัวเองด้วยเครื่องมือของตัวเอง
แต่ถ้าเป็นโปรเจกต์ที่อายุ 1 ปีแล้ว ก็น่าจะถึงเวลาที่ควรจะนิ่งขึ้นได้แล้ว
เพราะสุดท้าย LLM ในอนาคตจะมาดูแลรักษา อยู่ดี มนุษย์จึงไม่จำเป็นต้องมานั่งเก็บงานเองก็ได้
น่าจะเพิ่มโปรเจกต์นี้เข้าไปใน Awesome Claude Code ได้