การรองรับ JavaScript ใน Maguyva: การค้นหาด้วย AI สำหรับรีโพที่ผสมรันไทม์
มีประโยชน์เมื่อรีโพผสม CommonJS, ESM, สคริปต์งาน, test และโค้ดแอปเก่าเข้าด้วยกัน
นามสกุลไฟล์
.cjs, .js, .mjs, .spec.js, +อีก 2
Maguyva รองรับ TypeScript ด้วยการแยกวิเคราะห์ AST และการดึงสัญลักษณ์ ช่วยให้เอเจนต์ AI ตามรอย interface, การอิมพลีเมนต์, package ที่ใช้ร่วมกัน และโค้ดแอปที่หนัก JSX ข้ามโมโนรีโพ
TypeScript คือภาษาที่หลายทีมคาดหวังว่าการรีแฟกเตอร์ด้วยความช่วยเหลือของ AI จะรู้สึกปลอดภัยในที่สุด ระบบ type ช่วยได้ แต่มันไม่ได้ขจัดปัญหาจริง: package ที่ใช้ร่วมกัน, DTO, client ที่สร้างขึ้นโดยอัตโนมัติ, คอมโพเนนต์ของ React, test และโค้ดแอปทั้งหมดล้วนอ้างอิงชื่อเดียวกันข้ามรีโพขนาดใหญ่
สำหรับ TypeScript มาตรฐานสูงกว่าคำว่า “มันเข้าใจไวยากรณ์” เอเจนต์ต้องตามรอย contract จากคำนิยามไปยังการอิมพลีเมนต์ ไปยังรัศมีผลกระทบ ก่อนที่มันจะแก้ไข type ที่ใช้ร่วมกัน, hook หรือ client
Maguyva ดึงคลาส, เมธอด, interface และ type alias ข้าม .ts, .mts, .cts และรูปแบบไฟล์ TypeScript ทั่วไปรอบๆ test และ story คำนำหน้าสมาชิกถูกทำให้เป็นมาตรฐานเดียวกัน แต่ตัวระบุที่มีคลาสกำกับยังคงถูกเก็บไว้ ซึ่งช่วยเมื่อรีโพมีทั้งชื่อตัวช่วยเปล่าๆ และเมธอดที่ผูกกับคลาสซึ่งมีส่วนท้ายเหมือนกัน
JSX ถูกถือว่าเป็นสัญญาณเชิงโครงสร้างจริง ไม่ใช่มาร์กอัปที่หลงเหลือ ในไฟล์ TypeScript ที่ทำดัชนีแล้ว การทดสอบ, stories และการกำหนดค่ายังคงเข้าถึงได้ควบคู่กับโค้ดแอปพลิเคชัน ช่วยให้เอเจนต์ตรวจสอบตัวอย่างการใช้งานและการตั้งค่าก่อนแก้ไขคอมโพเนนต์หรือบริการที่ใช้ร่วมกัน
รูปแบบเริ่มต้นสามแบบมักเพียงพอ:
find_symbol เมื่อคุณรู้ชื่อ interface, type alias, hook หรือ service อยู่แล้วdependency_search ก่อนเปลี่ยน type ที่ใช้ร่วมกันหรือ client ที่อาจกระจายข้าม packagestructural_search เมื่อต้องการรูปทรงโค้ด ไม่ใช่การจับคู่คำสำคัญ เช่น รูปแบบคอมโพเนนต์หรือเมธอดที่เกิดซ้ำสำหรับคำถามเชิงแนวคิด เช่น “ตามรอยขั้นตอนการส่งคำสั่งซื้อที่หน้าชำระเงิน” get_task_context มักเป็นจุดเริ่มต้นที่ดีกว่าการค้นหาแบบดิบ
หน้านี้เหมาะที่สุดสำหรับ web และแพลตฟอร์มโมโนรีโพที่ TypeScript เป็นชั้นประสานงานของหลาย package หากรีโพของคุณยังมี JS เก่าอยู่มาก ให้อ่าน คู่มือ JavaScript หากคำถามของคุณคือ “เอเจนต์เก็บโค้ดแอปและบริบทโครงสร้างพื้นฐานไว้ด้วยกันได้หรือไม่” ให้จับคู่หน้านี้กับ Terraform
เหมาะที่สุดสำหรับ
เวิร์กโฟลว์ของเอเจนต์
รายละเอียดเอนจิน
จุดเริ่มต้น MCP ที่มีประโยชน์
เริ่มที่นี่เมื่อคุณรู้อินเทอร์เฟซ type alias, hook หรือเซอร์วิสที่ใช้ร่วมกันที่ต้องการตรวจสอบ
ใช้ก่อนเปลี่ยน DTO หรือไคลเอนต์ที่ใช้ร่วมกัน เพื่อดูรัศมีผลกระทบที่สมจริงข้ามแพ็กเกจ
ใช้การค้นหาระดับ AST เมื่อคุณต้องการแพตเทิร์น ไม่ใช่การจับคู่สตริง เช่น รูปแบบคอมโพเนนต์หรือเมธอดที่ซ้ำกัน
คู่มือที่เกี่ยวข้อง
มีประโยชน์เมื่อรีโพผสม CommonJS, ESM, สคริปต์งาน, test และโค้ดแอปเก่าเข้าด้วยกัน
นามสกุลไฟล์
.cjs, .js, .mjs, .spec.js, +อีก 2
มีประโยชน์เมื่อโค้ดโครงสร้างพื้นฐานเป็นส่วนหนึ่งของบริบทรีโพและไม่ใช่สิ่งที่เอเจนต์ควรมองข้ามไป
นามสกุลไฟล์
.tf, .tfvars