clenv – ตัวจัดการโปรไฟล์สำหรับ Claude Code
(github.com/Imchaemin)ยิ่งใช้งาน Claude Code มากขึ้น ก็ยิ่งรู้สึกว่าการจัดการการตั้งค่าต่าง ๆ เช่น สกิลและ MCP นั้นยากขึ้นเรื่อย ๆ เดิมทีผมคิดว่าแค่นำสกิลและการตั้งค่า MCP ที่ควรใช้ร่วมกันในทุกสภาพแวดล้อมการพัฒนาไปไว้ที่ระดับผู้ใช้ก็น่าจะพอ แต่เมื่อเวลาผ่านไปก็เริ่มรู้สึกว่าการตั้งค่าในบทบาทนักพัฒนา FE ของบริษัท กับบทบาทนักพัฒนา full-stack ของโปรเจกต์ส่วนตัวเริ่มปะปนกันมากขึ้น
ยังมีความไม่สะดวกที่ต้องตั้งค่าโปรเจกต์แยกทุกครั้งตามแต่ละรีโพซิทอรี และแนวทางแบบ marketplace กับ plugin-based ก็ต้องคอยตั้งค่าตามว่าจะใช้งานหรือไม่ นอกจากนี้กระบวนการลองใช้การตั้งค่าเชิงทดลองแล้วลบออกก็ยังยุ่งยากอีกด้วย..
ไม่ใช่แค่เรื่องความไม่สะดวกเท่านั้น แต่เมื่อพัฒนาด้วย Agent ผมยังรู้สึกว่าในฐานะนักพัฒนา ตัวตนหรือ persona ของผมก็มีเพิ่มขึ้นเรื่อย ๆ เช่นกัน
ผมคิดว่าเมื่อบทบาทที่ทำได้มีหลากหลายขึ้น การมี persona ที่หลากหลายก็เป็นเรื่องธรรมดา และ ผมรู้สึกว่าจำเป็นต้องมีระบบที่สามารถแยกและกักกัน persona เหล่านี้ได้อย่างชัดเจน
ถ้าเปลี่ยนสภาพแวดล้อมของ Claude Code เป็นโปรไฟล์ได้เหมือน nvm หรือ pyenv จะไม่ได้หรือ?
ความคิดนั้นกลายมาเป็น clenv
แกนหลักของการทำงาน: symbolic link
ทำ ~/.claude ให้เป็น symbolic link แทนที่จะเป็นไดเรกทอรีจริง แล้วสลับปลายทางที่ลิงก์ชี้อยู่ Claude Code จะยังอ่าน ~/.claude ตามปกติ แต่เบื้องหลังจริง ๆ แล้วจะเป็นไดเรกทอรีที่ต่างออกไปโดยสิ้นเชิง แต่ละไดเรกทอรีของโปรไฟล์จะถูก initial เป็นที่เก็บข้อมูล git เพื่อจัดการประวัติการเปลี่ยนแปลง
เพราะนี่เป็นเครื่องมือสำหรับจัดการสภาพแวดล้อมของ Claude Code เอง จึงจำเป็นต้องทำงานได้อย่างเป็นอิสระจาก Claude Code โดยสมบูรณ์ และผมคิดว่าถ้าติดตั้งและจัดการผ่าน brew ได้ก็น่าจะดี
GitHub: https://github.com/Imchaemin/clenv
รายละเอียดกระบวนการพัฒนา (รวมถึงช่วงลองผิดลองถูก): https://blog.chaemin.im/clenv
2 ความคิดเห็น
ผมก็รู้สึกถึงความจำเป็นอยู่เหมือนกันและกำลังทำอยู่ ขอบคุณครับ
โอ้ ขอบคุณมากครับ!!