Magic CLI เป็นยูทิลิตี้บรรทัดคำสั่งซึ่งใช้ LLMS เพื่อช่วยให้คุณใช้บรรทัดคำสั่งได้อย่างมีประสิทธิภาพมากขึ้นได้รับแรงบันดาลใจจากโครงการเช่น Amazon Q (Prev. Fig Terminal) และ GitHub Copilot สำหรับ CLI
magic-cli อาศัยห้องสมุด Orch สำหรับการโต้ตอบ LLM (การดำเนินการ, orchestration, การจัดตำแหน่งแบบจำลอง ฯลฯ )
อ่านโพสต์บล็อกประกาศ
คำเตือน
โครงการนี้ยังอยู่ในระหว่างการพัฒนาก่อน
คาดว่าจะมีการเปลี่ยนแปลงและข้อบกพร่องและโปรดรายงานปัญหาใด ๆ ที่คุณพบ
ขอบคุณ!
บันทึก
สำหรับตัวเลือกเพิ่มเติมเกี่ยวกับวิธีการติดตั้ง Magic CLI ดูหน้ารุ่นสำหรับรุ่นที่คุณต้องการติดตั้ง
curl -LsSf https://github.com/guywaldman/magic-cli/releases/download/0.0.6/magic-cli-installer.sh | shbrew install guywaldman/tap/magic-clipowershell - c " irm https://github.com/guywaldman/magic-cli/releases/download/0.0.6/magic-cli-installer.ps1 | iex "ดูหน้าเผยแพร่สำหรับไบนารีสำหรับแพลตฟอร์มของคุณ
เพิ่มฟังก์ชั่นลงใน ~/.bashrc หรือ ~/.zshrc ของคุณเพื่อทำให้การจัดรูปแบบพรอมต์ในเทอร์มินัลง่ายขึ้น (ไม่ต้องใช้เครื่องหมายคำพูด)
ตัวอย่างเช่น:
function mcs {
model_prompt= " $* "
magic-cli suggest " $model_prompt "
}
function mcf {
model_prompt= " $* "
magic-cli search " $model_prompt "
}
function mca {
model_prompt= " $* "
magic-cli ask " $model_prompt "
} ให้พรอมต์เพื่อรับข้อเสนอแนะสำหรับคำสั่งที่จะเรียกใช้
สิ่งนี้มีประโยชน์ในสถานการณ์ที่คุณรู้โดยประมาณว่าคุณต้องการอะไร (และอาจเป็นเครื่องมือ) แต่อย่าจำข้อโต้แย้งที่แน่นอนหรือคำสั่งซื้อของพวกเขา
สิ่งนี้มีประโยชน์อย่างยิ่งกับเครื่องมือ CLI เช่น ffmpeg หรือ kubectl

magic-cli suggest " Resize test_image.png to 300x300 with ffmpeg " Usage: magic-cli suggest <PROMPT>
Arguments:
<PROMPT> The prompt to suggest a command for (e.g., "Resize image to 300x300 with ffmpeg")
ค้นหาคำสั่งในประวัติเชลล์ของคุณและรับรายการผลลัพธ์สูงสุด

magic-cli search " zellij attach " Usage: magic-cli search [OPTIONS] <PROMPT>
Arguments:
<PROMPT> The prompt to search for
สำคัญ
Word to the Wise: หากคุณใช้ LLM ที่ไม่ใช่ท้องถิ่นระวังค่าใช้จ่ายของการฝังโดยเฉพาะอย่างยิ่งสำหรับประวัติศาสตร์เชลล์ที่ยาวนาน
จัดหาพรอมต์พร้อมงานที่คุณต้องการให้โมเดลดำเนินการและดูมันพยายามแนะนำคำสั่งให้เรียกใช้เพื่อให้บรรลุเป้าหมาย มันอาจแจ้งให้คุณทราบตลอดการเรียกใช้คำสั่งหากต้องการบริบทมากขึ้น
magic-cli ask " Set up the dev environment as described in the README " Usage: magic-cli ask <PROMPT>
Arguments:
<PROMPT> The prompt to ask for (e.g., "Set up the development environment")
Magic CLI รองรับผู้ให้บริการ LLM สองคน:
ollama : Ollama เป็นผู้ให้บริการ LLM ในท้องถิ่น คำสั่งคาดว่า Ollama จะติดตั้งและทำงานบนเครื่องในพื้นที่ของคุณopenai : Openai เป็นผู้ให้บริการ LLM คลาวด์ คุณกำหนดค่าโทเค็น API และ Magic CLI ใช้กับ OpenAI API Magic CLI เก็บการกำหนดค่าใน ~/.config/magic_cli/config.json
ใช้ magic-cli config (เพื่อดูตัวเลือกใช้ magic-cli config --help ) เพื่อตั้งค่าตัวเลือกการกำหนดค่า:
Usage: magic-cli config <COMMAND>
Commands:
set Set a value
get Get a value
list List the configurations
reset Reset the configurations to the default values
path Get the path to the configuration file
ตัวเลือกการกำหนดค่า suppprted ในปัจจุบันคือ:
llm : LLM ที่จะใช้สำหรับการสร้างคำตอบ ค่าที่รองรับ: "Ollama", "Openai"ollama.base_url : URL พื้นฐานของ Ollama API (ค่าเริ่มต้น: "http: // localhost: 11434")ollama.embedding_model : โมเดลที่ใช้สำหรับการสร้าง embeddings (ค่าเริ่มต้น: "Nomic-Embed-text: ล่าสุด")ollama.model : โมเดลที่ใช้สำหรับการสร้างการตอบกลับ (ค่าเริ่มต้น: "codestral: ล่าสุด")openai.api_key (ความลับ): คีย์ API สำหรับ openai apiopenai.embedding_model : โมเดลที่ใช้สำหรับการสร้าง embeddings (ค่าเริ่มต้น: "text-embedding-ADA-002")openai.model : โมเดลที่ใช้สำหรับการสร้างการตอบกลับ (ค่าเริ่มต้น: "GPT-4O")suggest.add_to_history : ไม่ว่าจะเพิ่มคำสั่งที่แนะนำในประวัติเชลล์ (ค่าเริ่มต้น: เท็จ)suggest.mode : โหมดที่ใช้สำหรับการแนะนำคำสั่ง ค่าที่รองรับ: "คลิปบอร์ด" (การคัดลอกคำสั่งไปยังคลิปบอร์ด), "unsafe-execution" (ดำเนินการในเซสชันเชลล์ปัจจุบัน) (ค่าเริ่มต้น: "unsafe-execution"))หมายเหตุ:
unsafe-executionมีชื่อเพื่อให้ชัดเจนว่า CLI ดำเนินการคำสั่งในเซสชันเชลล์ปัจจุบัน โปรดระมัดระวังอย่างมากเมื่อใช้โหมดนี้ - Magic CLI ไม่รับผิดชอบต่อการดำเนินการของคำสั่งที่แนะนำ
รองรับ Windows (PowerShell รองรับ แต่ Windows ยังไม่ได้รับการทดสอบอย่างถูกต้อง)
สนับสนุนผู้ให้บริการ LLM เพิ่มเติม (เช่นมานุษยวิทยา)
ปรับปรุงดัชนีการฝังในท้องถิ่น (ปัจจุบันจัดเก็บไว้อย่างไร้เดียงสาเป็น JSON ดูเป็น Sqllite พร้อมส่วนขยายเวกเตอร์)
ครอบคลุมการทดสอบเพิ่มเติม
ความปลอดภัยดำเนินการอย่างจริงจังและช่องโหว่ทั้งหมดจะได้รับการจัดการด้วยความระมัดระวังและลำดับความสำคัญสูงสุด
ในแง่ของข้อมูลที่จัดเก็บข้อมูลที่ละเอียดอ่อนที่ปัจจุบันจัดการโดย Magic CLI คือ:
~/.config/magic_cli )มีแผนที่จะเก็บโทเค็นนี้ไว้ในที่เก็บคีย์ที่ปลอดภัยของระบบ แต่ยังไม่ได้ใช้งาน
magic-cli search ซึ่งเก็บไว้ในการกำหนดค่าภายใน ไดเรกทอรีโฮมสอร์ของผู้ใช้ ( ~/.config/magic_cli ) และถูกสร้างขึ้นโดยใช้ LLM Provider ที่เลือกโปรดดู Security.md สำหรับข้อมูลเพิ่มเติมและคำแนะนำเกี่ยวกับวิธีการรายงานช่องโหว่ที่อาจเกิดขึ้น
ยินดีต้อนรับ!
โปรดดูข้อมูลเพิ่มเติมสำหรับข้อมูลเพิ่มเติม
คำขอเพียงอย่างเดียวของฉันคือการร้องขอการดึงตามปัญหาเช่นเราหลีกเลี่ยงสถานการณ์การทำงานหนักของคุณที่ไม่ได้รับการยอมรับเนื่องจากขาดบริบทหรือความจำเป็น