oh-my-pi นำ AI การเขียนโค้ดระดับ IDE เข้าสู่เทอร์มินัล
oh-my-pi โดย Can Bölük เป็นตัวแทนการเขียนโค้ด AI ที่เน้นการใช้เทอร์มินัล ซึ่งมีความสามารถของ IDE อยู่ภายในสภาพแวดล้อมเชลล์สำหรับนักพัฒนาและนักวิจัย เครื่องมือนี้ช่วยให้การแก้ไขโค้ด การปรับโครงสร้าง และการดีบักเป็นไปโดยอัตโนมัติ โดยใช้การจัดการโมเดลและเคอร์เนลการดำเนินการ ในขณะที่เสนอบริบทที่รู้จักกับตัวแก้ไขและแพตช์ที่ตรวจสอบความถูกต้อง สถาปัตยกรรมของมันเน้นการโต้ตอบที่มีความหน่วงต่ำ การดำเนินการที่ต่อเนื่อง และความสามารถในการขยายลึก ซึ่งมุ่งเป้าไปที่ผู้ใช้ที่มีความสามารถสูงซึ่งชอบการทำงานในเทอร์มินัลและต้องการผู้ช่วยในการเขียนโค้ดที่สามารถปรับแต่งได้และไม่ขึ้นอยู่กับโมเดล
มันฝังความหมายของโปรแกรมแก้ไขลงในกระบวนการทำงานของบรรทัดคำสั่ง
เครื่องมือจัดเตรียมบริบทในระดับโปรแกรมแก้ไขให้กับตัวแทน AI โดยการรวมฟีเจอร์เซิร์ฟเวอร์ภาษาเพื่อการดำเนินการเชิงความหมาย เช่น การเปลี่ยนชื่อและการปรับโครงสร้าง และโดยการเปิดเผยอะแดปเตอร์การดีบักที่ให้ตัวแทนสามารถขับเคลื่อนการดีบักเนทีฟสำหรับ C, Go, และ Python การจัดการซับเอเจนต์จะแบ่งงานที่ซับซ้อนออกเป็น worktrees ที่แยกออกมาโดยมีผลลัพธ์ที่มีโครงสร้าง ดังนั้นตัวแทนจึงสามารถเสนอการเปลี่ยนแปลงที่มุ่งเป้าแทนที่จะเป็นการแก้ไขข้อความแบบสุ่ม
แกนหลักของ Rust ลดความล่าช้าในการโต้ตอบและถ่ายโอนงานหนัก
แกนหลักของแอปเขียนด้วย Rust ประมาณ 55,000 บรรทัด และจัดการการค้นหาไฟล์และการนับโทเคนเพื่อให้การโต้ตอบในเทอร์มินัลตอบสนองได้ดี มันต้องการการทำงานของ Bun เพื่อทำงาน และจัดเตรียมเคอร์เนล Python และ Bun ที่คงอยู่สำหรับการรันโค้ด การออกแบบเหล่านี้ช่วยย้ายการบันทึกที่ใช้ CPU ออกจากลูปโมเดล ซึ่งอธิบายถึงประสบการณ์ที่มีความล่าช้าต่ำที่รายงานสำหรับเซสชันเชิงโต้ตอบ
การแก้ไขที่ยึดติดด้วยแฮชและ worktrees ที่แยกออกมาลดความเสี่ยงในการแก้ไข
ความสมบูรณ์ของแพทช์มาจากระบบการแก้ไขที่ยึดติดด้วยแฮช ซึ่งรู้จักกันในชื่อ Hashline ที่ยึดการแก้ไขกับเนื้อหาแทนที่จะเป็นหมายเลขบรรทัด ลดการแพทช์ที่ล้มเหลวหรือเก่าในระหว่างการปรับโครงสร้างที่ขับเคลื่อนด้วย AI ร่วมกับ worktrees ของซับเอเจนต์และ DAP hooks เนทีฟ เครื่องมือสนับสนุนการเปลี่ยนแปลงโค้ดแบบขั้นตอนที่ผลิตผลลัพธ์ที่มีโครงสร้างแทนที่จะเป็นการเขียนทับไฟล์ที่ไม่แตกต่างกัน
ออกแบบมาสำหรับผู้ใช้ที่มีความชำนาญในเทอร์มินัล ไม่ใช่โปรแกรมแก้ไขทั่วไป
นักพัฒนาวางตำแหน่งเครื่องมือสำหรับวิศวกร นักวิจัยด้านความปลอดภัย และผู้ใช้ที่มีความชำนาญซึ่งยอมรับกระบวนการทำงานที่มุ่งเน้นเทอร์มินัลและเส้นโค้งการเรียนรู้ การติดตั้งบน Windows ใช้เส้นทาง PowerShell และโครงการยังคงมีชุมชนที่กระตือรือร้นบน GitHub ซึ่งสนับสนุนการอัปเดตบ่อยครั้งและการรวมที่จัดทำโดยชุมชน คาดหวังว่าจะต้องใช้เวลาในการกำหนดค่าเพื่อแมพผู้ให้บริการโมเดลและอะแดปเตอร์การดีบักไปยังสภาพแวดล้อมของคุณ
เหมาะที่สุดสำหรับผู้ใช้เทอร์มินัลที่มีประสบการณ์ซึ่งยอมรับการตั้งค่าด้วยตนเอง
แอปนี้เป็นทางเลือกที่เหมาะสมสำหรับนักพัฒนาที่ต้องการการทำงานระดับ IDE ที่มี AI ช่วยเหลือภายในสภาพแวดล้อมเชลล์ เนื่องจากแกนหลักของมันที่เขียนด้วย Rust และการรวมเข้ากับตัวแก้ไขมุ่งเน้นไปที่ความน่าเชื่อถือและการตอบสนอง ข้อแลกเปลี่ยนคือความพยายามในการตั้งค่าและบำรุงรักษา เนื่องจากมันขึ้นอยู่กับการกำหนดค่ารันไทม์และเทอร์มินัล สำหรับผู้ที่เตรียมพร้อมในการกำหนดเส้นทางโมเดลและตัวปรับแก้ข้อผิดพลาด เครื่องมือนี้จะตอบแทนการลงทุนดังกล่าว แนะนำให้ใช้.
ข้อดี
- การรวม LSP ช่วยให้การปรับโครงสร้างเชิงความหมายและการเปลี่ยนชื่อเป็นไปได้
- Rust core (~55k บรรทัด) ทำให้การตอบสนองของเทอร์มินัลดีขึ้น
- การแก้ไขที่มีแฮชช่วยลดการแพตช์โค้ดที่ล้มเหลวหรือเก่า
- รองรับผู้ให้บริการ LLM มากกว่า 40 รายด้วยการจัดเส้นทางโมเดลที่กำหนดเอง
ข้อเสีย
- ต้องการการทำงานของ Bun และการตั้งค่าสภาพแวดล้อมด้วยตนเอง
- การออกแบบที่เน้นเทอร์มินัลถือว่าผู้ใช้มีทักษะขั้นสูง
- การพัฒนาอย่างต่อเนื่องหมายถึงการเปลี่ยนแปลงการกำหนดค่าบ่อยครั้ง