การติดตั้ง Pi และการกำหนดค่า OmniProxy
อยากให้ผู้ช่วยอ่านไฟล์และดูโปรเจกต์ผ่านเทอร์มินัล แต่กังวลว่าการติดตั้งและกำหนดค่าจะยุ่งยากใช่ไหม? Pi มีขนาดเล็กและมีความสามารถเริ่มต้นแบบเรียบง่าย เมื่อติดตั้งแล้ว คุณสามารถค่อย ๆ เพิ่มคำสั่ง เวิร์กโฟลว์ และอินเทอร์เฟซให้เหมาะกับวิธีทำงานของคุณได้
Pi เป็นผู้ช่วยบนเทอร์มินัลขนาดเล็ก กล่าวคือเป็นโปรแกรมที่สนทนากับคุณ อ่านไฟล์ และทำงานต่าง ๆ โดยตรงในบรรทัดคำสั่ง คำสั่งระบบของ Pi ค่อนข้างสั้น และมีเครื่องมือเริ่มต้นไม่มากนัก หากต้องการคำสั่ง เวิร์กโฟลว์ หรืออินเทอร์เฟซเพิ่มเติม ก็สามารถเพิ่มภายหลังผ่านส่วนขยายได้ ส่วนขยายเปรียบเสมือนคอมโพเนนต์ที่เพิ่มความสามารถให้ Pi และเมื่อสร้างเสร็จแล้วก็สามารถแบ่งปันให้ผู้อื่นได้
เอเจนต์ย่อยคือการมอบหมายงานบางส่วนให้อีกผู้ช่วยหนึ่งจัดการ ส่วนโหมดวางแผนคือการเรียบเรียงขั้นตอนก่อนแล้วจึงเริ่มดำเนินการ ทั้งสองอย่างนี้ไม่ได้รวมอยู่ในความสามารถเริ่มต้น คุณสามารถให้ Pi สร้างขึ้นเองหรือติดตั้งแพ็กเกจที่ผู้อื่นแบ่งปันไว้ได้
การเตรียมตัวก่อนติดตั้ง
macOS และ Linux ใช้สคริปต์ติดตั้ง ซึ่งเป็นคำสั่งหนึ่งบรรทัดที่ดาวน์โหลดและติดตั้งให้โดยอัตโนมัติ ส่วน Windows ใช้คำสั่ง PowerShell ที่มีให้ในหน้าแรกของ Pi โดย PowerShell คือสภาพแวดล้อมบรรทัดคำสั่งที่มาพร้อมกับ Windows นอกจากนี้ยังสามารถติดตั้ง Pi ใน WSL ซึ่งเป็นสภาพแวดล้อม Linux ภายใน Windows ได้ด้วย
หากเลือกติดตั้งผ่าน npm คุณต้องเตรียม Node.js 22.19 หรือเวอร์ชันใหม่กว่าไว้ก่อน npm เป็นเครื่องมือจัดการแพ็กเกจซอฟต์แวร์ที่ใช้ร่วมกับ Node.js และสามารถติดตั้ง Pi จากบรรทัดคำสั่งได้
macOS Linux
install.sh
- ใช้ curl กับสคริปต์ทางการ
- ตัวติดตั้งจะกำหนดเวอร์ชันของส่วนที่ต้องใช้
- อัปเดตด้วย pi update
Windows
install.ps1
- ใช้คำสั่ง PowerShell จากเว็บไซต์ทางการ
- Git for Windows มี Bash ให้
- หรือเข้า WSL ก็ได้
มี Node แล้ว
npm
- ต้องใช้ Node 22.19+
- ชื่อแพ็กเกจคือ pi-coding-agent
- เพิ่ม --ignore-scripts
ติดตั้งและเริ่มใช้งานครั้งแรก
เปิดเทอร์มินัลบน macOS หรือ Linux แล้วเรียกใช้:
curl -fsSL https://pi.dev/install.sh | sh
บน Windows ให้เปิด PowerShell แล้วเรียกใช้:
powershell -c "irm https://pi.dev/install.ps1 | iex"
หากติดตั้ง Node.js 22.19 หรือเวอร์ชันใหม่กว่าไว้แล้ว คุณยังสามารถใช้คำสั่งทางเลือกจาก Quickstart ได้:
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
เมื่อทำงานในเทอร์มินัลแบบโต้ตอบ สคริปต์ติดตั้งอาจหยุดเพื่อถามคำถาม คุณต้องดำเนินการต่อตามข้อความบนหน้าจอ หากมี Node ที่ตรงตามข้อกำหนดอยู่แล้ว คำสั่ง npm นี้จะไม่เข้าสู่ขั้นตอนถามคำถาม หากต้องการติดตั้งไว้ในไดเรกทอรีอื่น ให้เพิ่ม --prefix /ไดเรกทอรีของคุณ เมื่อวันที่ 2026-10-09 การติดตั้งด้วยวิธีนี้ได้ Pi 1.1.0
การติดตั้ง npm ตามปกติไม่จำเป็นต้องใช้สคริปต์วงจรชีวิตของการพึ่งพา ซึ่งหมายถึงสคริปต์ที่แพ็กเกจซอฟต์แวร์เรียกใช้อัตโนมัติระหว่างการติดตั้ง สคริปต์ติดตั้งจะตรึงเวอร์ชันของการพึ่งพา และหลังจากนั้นให้อัปเดตด้วย pi update สำหรับการติดตั้งผ่าน npm วิธีอัปเดตจะขึ้นอยู่กับตัวจัดการแพ็กเกจที่คุณใช้ ผู้ใช้ Nix ให้ติดตั้งจาก flake ของ Pi โดย flake คือการกำหนดค่าที่ Nix ใช้อธิบายซอฟต์แวร์และการพึ่งพา และ pi update ไม่สามารถอัปเดตการติดตั้งผ่าน Nix ได้
เมื่อติดตั้งเสร็จแล้ว ให้ตรวจสอบก่อนว่าเทอร์มินัลค้นพบ Pi ได้:
pi --version
หากต้องการให้โมเดลเรียกใช้คำสั่ง Bash บน Windows ขอแนะนำให้ผู้ใช้เครื่องส่วนใหญ่ติดตั้ง Git for Windows โดย Bash คือสภาพแวดล้อมคำสั่งที่ Pi ใช้เรียกใช้คำสั่งบางส่วน Pi จะค้นหา shellPath ใน ~/.pi/agent/settings.json ก่อน ตามด้วย Git Bash ใน Program Files และ bash.exe บน PATH โดย shellPath ใช้ระบุตำแหน่งของ Bash ส่วน PATH คือรายการไดเรกทอรีที่ระบบใช้ค้นหาคำสั่ง
หลังจากเริ่ม Pi แล้ว คุณสามารถป้อน !printf 'Bash is working\n' เพื่อตรวจสอบได้ หากไฟล์และเครื่องมืออยู่ใน WSL อยู่แล้ว ให้ติดตั้งตาม Quickstart ภายในสภาพแวดล้อม Linux นั้น
จากนั้นเข้าไปยังโฟลเดอร์ที่ต้องการให้ Pi ตรวจดูหรือประมวลผล แล้วเริ่มใช้งาน:
cd /path/to/folder
pi
โฟลเดอร์นี้จะเป็นขอบเขตการทำงานปัจจุบันของ Pi ใช้สำหรับค้นหาไฟล์และการกำหนดค่า รวมถึงใช้จัดกลุ่มเซสชัน
รับค่าการเชื่อมต่อจาก OmniProxy
ขั้นแรก ให้เตรียมข้อมูลสามรายการต่อไปนี้จาก OmniProxy:
baseUrl: https://your-omniproxy-origin.example/v1
apiKey: <YOUR_OMNIPROXY_API_KEY>
Model ID: คัดลอก ID แบบเต็มจากรายการโมเดลปัจจุบันของ OmniProxy
baseUrl คือที่อยู่อินเทอร์เฟซที่ Pi ใช้ส่งคำขอ และต้องระบุไปจนถึง /v1 ส่วน apiKey คือคีย์ที่ใช้เข้าถึงอินเทอร์เฟซ และ Model ID คือชื่อโมเดลที่จะเรียกใช้ ซึ่งต้องคัดลอกแบบเต็มจากรายการโมเดลปัจจุบันของ OmniProxy
ในช่อง api ให้กรอก openai-completions ตามตัวอย่างอินเทอร์เฟซที่เข้ากันได้ ฟิลด์นี้บอก Pi ว่าต้องส่งคำขอโดยใช้รูปแบบอินเทอร์เฟซชนิดใด
ต้องคัดลอก Model ID มาทั้งหมดและคงเครื่องหมายทับในชื่อไว้ เมื่อวันที่ 2026-10-09 ตัวอย่าง ID สำหรับเปรียบเทียบสองรายการในเอกสารของผู้ให้บริการคือ gemini-3.8-flash และ grok-4.7 อย่าคัดลอกชื่อที่ไม่มีอยู่ในรายการไปใช้
กรอกการกำหนดค่าของเครื่องมือ
การกำหนดค่าโมเดลแบบกำหนดเองระดับผู้ใช้ของ Pi อยู่ในไฟล์ models.json ไฟล์นี้อยู่ในไดเรกทอรี agent ซึ่งมีตำแหน่งเริ่มต้นคือ ~/.pi/agent ดังนั้นพาธแบบเต็มคือ ~/.pi/agent/models.json หากตั้งค่าตัวแปรสภาพแวดล้อม PI_CODING_AGENT_DIR ไว้ Pi จะเปลี่ยนไปใช้ไดเรกทอรีที่ตัวแปรนี้ระบุ ตัวแปรสภาพแวดล้อมคือค่าการกำหนดค่าที่ระบบจัดเตรียมไว้ให้โปรแกรมอ่านได้
กรอกข้อมูลตามตัวอย่างอินเทอร์เฟซที่เข้ากันได้:
{
"providers": {
"omniproxy": {
"baseUrl": "https://your-omniproxy-origin.example/v1",
"api": "openai-completions",
"apiKey": "<YOUR_OMNIPROXY_API_KEY>",
"models": [
{ "id": "gemini-3.8-flash", "input": ["text"] },
{ "id": "grok-4.7", "input": ["text"] }
]
}
}
}
providers ใช้แสดงรายการบริการที่เชื่อมต่อ ส่วน models ใช้แสดงรายการโมเดลที่เลือกได้ id ของแต่ละโมเดลต้องตรงกับ Model ID แบบเต็มในรายการโมเดลปัจจุบันของ OmniProxy และ input ระบุว่าการกำหนดค่านี้ใช้การป้อนข้อมูลแบบข้อความ
คุณสามารถเขียน apiKey เป็นค่าตรง ๆ หรือเขียนเป็น $NAME หรือ ${NAME} เพื่อให้ Pi อ่านจากตัวแปรสภาพแวดล้อม ค่าที่ขึ้นต้นด้วย ! จะถือเป็นคำสั่งและถูกเรียกใช้ทุกครั้งที่ส่งคำขอ อย่าคอมมิตคีย์จริงลงในรีพอซิทอรี หากเกตเวย์ไม่ตรวจสอบคีย์ คุณสามารถกรอกสตริงตัวยึดตำแหน่งที่ใช้เฉพาะในเครื่องได้ เมื่อวันที่ 2026-10-09 Pi สามารถอ่านไฟล์ด้วยการกำหนดค่านี้ได้
การเปิด /model จะโหลดไฟล์นี้ใหม่ /model เป็นทางเข้าสำหรับดูและเลือกโมเดลใน Pi โมเดลแบบกำหนดเองจะไม่ปรากฏใน /model จนกว่า Pi จะแยกวิเคราะห์ข้อมูลรับรองได้ หลังจากเลือกโมเดลแล้ว ให้กด Ctrl+S เพื่อบันทึกเป็นโมเดลเริ่มต้นสำหรับเซสชันใหม่
ไฟล์
models.json
- ไดเรกทอรีเริ่มต้นคือ ~/.pi/agent
- เพิ่มหนึ่งรายการใน providers
- ใช้ completions สำหรับ api
ที่อยู่
baseUrl
- ระบุถึง /v1
- apiKey ใช้ตัวแปรได้
- id ของโมเดลต้องตรงทุกตัวอักษร
เลือกใช้
/model
- เมื่อเปิดแล้วจะโหลดไฟล์ใหม่
- เลือกโมเดลที่เพิ่งเพิ่ม
- ใช้ Ctrl+S เพื่อบันทึกเป็นค่าเริ่มต้น
ตรวจสอบด้วยงานจริง
หลังจากกำหนดค่าเสร็จแล้ว คุณสามารถตรวจสอบแบบไม่โต้ตอบภายในไดเรกทอรีที่มีไฟล์ได้ การทำงานแบบไม่โต้ตอบหมายถึง Pi จะไม่เข้าสู่การสนทนาต่อเนื่อง และจะสิ้นสุดการทำงานหลังจากทำงานนี้เสร็จ ให้แทนที่เนื้อหาหลัง --model ด้วย ID แบบเต็มจากรายการปัจจุบันของ OmniProxy:
pi -p --provider omniproxy --model gemini-3.8-flash --tools read "อ่านบรรทัดแรกของไฟล์ที่คุณระบุ และอย่าแก้ไขไฟล์"
ในที่นี้ --tools read เปิดให้ใช้เฉพาะเครื่องมืออ่าน และเนื้อหางานก็ระบุชัดเจนว่าอย่าแก้ไขไฟล์ เมื่อวันที่ 2026-10-09 การทดสอบด้วย Pi 1.1.0 สามารถอ่านเนื้อหาไฟล์ได้ การตอบกลับครั้งแรกใช้เวลาประมาณสองนาที
คุณยังสามารถใช้วิธีโต้ตอบได้ โดยเข้าไปในไดเรกทอรี เรียกใช้ pi แล้วเลือกโมเดลผ่าน /model ตัวอย่างงานหนึ่งใน Quickstart คือให้ Pi อธิบายว่ารีพอซิทอรีนี้จัดโครงสร้างอย่างไรและจะเรียกใช้การตรวจสอบอย่างไร สังเกตว่า Pi อ่านไฟล์และให้คำอธิบายหรือไม่ จากนั้นตรวจสอบแหล่งที่มาและ Model ID ในบันทึกการเรียกใช้ของ OmniProxy
เริ่มต้น
เปิด pi ได้
- cd ไปยังโฟลเดอร์ก่อน
- pi --version แสดงผลลัพธ์
- มีชื่อโมเดลที่ด้านล่างของอินเทอร์เฟซ
งาน
มันอ่านไดเรกทอรีแล้ว
- ถามว่ารีโพซิทอรีจัดโครงสร้างอย่างไร
- ดูไฟล์ที่มันแสดง
- อย่าดูเพียงว่าบันทึกการตั้งค่าสำเร็จ
บันทึก
มองเห็นได้ในเกตเวย์
- แหล่งที่มาคือ Pi
- ID โมเดลตรงกัน
- เก็บคีย์ไว้ในเครื่อง
ข้อผิดพลาดที่พบบ่อย
- ไม่พบ
pi: เปิดเทอร์มินัลใหม่แล้วลองpi --versionอีกครั้ง หากติดตั้งผ่าน npm ให้ยืนยันว่า global bin อยู่ใน PATH - ไม่มีโมเดลแบบกำหนดเองใน
/model: ยืนยันว่าmodels.jsonอยู่ใน~/.pi/agent/และสามารถแยกวิเคราะห์apiKeyได้ จากนั้นเปิด/modelใหม่ - Windows แจ้งว่าไม่พบ Bash: ติดตั้ง Git for Windows หรือตั้งค่า
shellPathใน~/.pi/agent/settings.jsonเครื่องหมายแบ็กสแลชใน JSON ต้องเขียนสองตัว - คำขอถูกปฏิเสธ: ตรวจสอบว่า
apiเป็นopenai-completionsและbaseUrlลงท้ายด้วย/v1หรือไม่ อย่าเปิดสวิตช์ความเข้ากันได้เพิ่มเติมเพียงเพราะอีกฝ่ายระบุว่าเข้ากันได้ - Model ID ไม่ถูกต้อง: คัดลอกใหม่จากรายการปัจจุบันของ OmniProxy
เอกสารอ้างอิงอย่างเป็นทางการ
ดูคำสั่งติดตั้งได้ที่ เว็บไซต์ Pi และ Quickstart ดูข้อมูลไฟล์โมเดลได้ที่ Choose a Model และ Configuration ดูข้อมูลสภาพแวดล้อมคำสั่งบน Windows ได้ที่ Run Pi on Windows ส่วน Model ID ที่ใช้เป็นตัวอย่างดูได้จาก รายการโมเดล Gemini และ หน้าโมเดล xAI
แทนที่ตัววางตำแหน่งทั้งหมดด้วยค่าจากการกำหนดค่า OmniProxy ของคุณ ห้ามเผยแพร่คีย์จริง
ผลลัพธ์ที่บันทึกหรือ HTTP 200 เพียงอย่างเดียวไม่พิสูจน์ความเข้ากันได้เต็มรูปแบบของเอเจนต์ ตรวจสอบแหล่งที่มาและโมเดลในบันทึกการเรียกใช้ของ OmniProxy