Harness ของเอเจนต์
Perch รัน harness ของเอเจนต์เต็มรูปแบบบนเดสก์ท็อปและ CLI ได้แก่ เชลล์ การค้นหา การแก้ไขไฟล์ งานเบื้องหลัง แซนด์บ็อกซ์แบบปิด โหมด Plan และสิทธิ์ที่แบ่งตามระดับความเสี่ยง หน้านี้รวมชุดเครื่องมือทั้งหมดและตัวควบคุมที่กำกับเครื่องมือเหล่านั้น
ภายใต้งานเอกสารและงานตรวจสอบ Perch คือ harness ของเอเจนต์แบบอเนกประสงค์ตัวหนึ่ง มันรันคำสั่ง ค้นหาและแก้ไขไฟล์ สร้างเอเจนต์ผู้ช่วย และรันโค้ดในแซนด์บ็อกซ์ กลไกเดียวกับที่ใช้กระทบยอดบัญชีแยกประเภทก็ใช้รีแฟกเตอร์โมดูลได้ เพราะมันคือกลไกเดียวกัน
หน้านี้เป็นข้อมูลอ้างอิงว่า Perch ทำอะไรบนเครื่องของคุณได้จริงบ้าง และตัวควบคุมใดที่กำหนดว่างานส่วนไหนเกิดขึ้นได้โดยไม่ต้องถามคุณก่อน
เฉพาะเดสก์ท็อปและ CLI
เชลล์และการค้นหา
| เครื่องมือ | หน้าที่ |
|---|---|
bash | รันคำสั่งเชลล์ในเวิร์กสเปซ |
grep | ค้นหาเนื้อหาในไฟล์ทั่วทั้งโฟลเดอร์ |
glob | หาไฟล์ตามรูปแบบชื่อ |
การค้นหาใช้ grep และ glob จริง ไม่ใช่การเดาเชิงความหมาย ดังนั้นการหาจุดเรียกใช้ทุกจุดก็หมายถึงได้ทุกจุดจริงๆ
การอ่านและเขียนไฟล์
| เครื่องมือ | หน้าที่ |
|---|---|
readLocalFile | อ่านไฟล์เข้ามาในบริบท |
writeLocalFile | เขียนไฟล์ |
editLocalFile | แก้ไขบางส่วนของไฟล์ในที่เดิม |
moveLocalFile, copyLocalFile | ย้ายหรือคัดลอก |
createDirectory, deleteLocalFile | สร้างไดเรกทอรี ลบไฟล์ |
statPath | ตรวจดูพาธโดยไม่อ่านเนื้อหา |
ทุกการเรียกใช้จะถูกตรวจสอบกับโฟลเดอร์รากที่อนุมัติไว้สำหรับเวิร์กสเปซของคุณ Perch จึงเข้าถึงนอกโฟลเดอร์ที่คุณเปิดไม่ได้
งานเบื้องหลัง
งานที่ใช้เวลานานไม่จำเป็นต้องขวางบทสนทนา Perch เริ่มคำสั่งในเบื้องหลังแล้วทำงานอื่นต่อได้
| เครื่องมือ | หน้าที่ |
|---|---|
run_in_background | เริ่มคำสั่งเป็นงานที่แยกออกไปทำงานเอง |
check_background_task | ตรวจสถานะงาน |
list_background_tasks | แสดงรายการงานที่กำลังรัน |
wait_for_background_task | รอจนกว่างานจะเสร็จ |
kill_background_task | หยุดงาน |
นี่คือสิ่งที่ทำให้ชุดทดสอบ การบิลด์ หรือการติดตั้งที่ใช้เวลานาน เป็นสิ่งที่ Perch คอยดูแลได้ แทนที่จะต้องติดอยู่รอข้างใน
แซนด์บ็อกซ์
สำหรับงานที่ต้องคำนวณจริงแทนการใช้เหตุผลกับตัวเลข Perch จะเขียนโค้ดและรันในแซนด์บ็อกซ์แบบปิดด้วย run_sandbox_code ยอดรวมจึงได้มาจากการคำนวณ ไม่ใช่การเดา
แซนด์บ็อกซ์ถูกเสริมความปลอดภัยไว้โดยเจตนา
- ปิดเครือข่าย แซนด์บ็อกซ์ไม่มีการเชื่อมต่อออกไปภายนอก
- macOS seatbelt การรันโค้ดทำงานภายใต้โปรไฟล์
sandbox-execแยกจากส่วนอื่นของเครื่องคุณ - บันทึกที่มาของผลลัพธ์ การรันในแซนด์บ็อกซ์ถูกบันทึกไว้ ตัวเลขที่คำนวณได้จึงย้อนกลับไปหาโค้ดที่สร้างมันได้
การวางแผนและติดตามงาน
Perch มีระบบวางแผนในตัว ไม่ใช่แค่คำสั่งให้ "คิดทีละขั้นตอน"
- โหมด Plan ให้ Perch ตรวจดูเวิร์กสเปซและร่างแผน โดยบล็อกเครื่องมือที่เปลี่ยนแปลงข้อมูลไว้จนกว่าคุณจะอนุมัติ คุณจะได้การ์ดแผนงาน และไม่มีอะไรถูกเขียนระหว่างที่คุณอ่าน
- รายการสิ่งที่ต้องทำ (Todos) ให้ Perch เก็บรายการงานที่มองเห็นได้ตลอดการรันที่ยาวนาน คุณจึงดูความคืบหน้าได้แทนที่จะต้องเดา
- คำถาม เมื่อ Perch ติดอยู่กับการตัดสินใจที่เป็นของคุณจริงๆ มันจะถาม แทนที่จะเลือกแทนคุณ
โหมดแชต
ช่องพิมพ์ข้อความมีสามโหมด และแต่ละโหมดเปลี่ยนสิ่งที่เทิร์นหนึ่งได้รับอนุญาตให้ทำ
| โหมด | พฤติกรรม |
|---|---|
| Ask | การสนทนา ถามเกี่ยวกับโฟลเดอร์ ไฟล์ที่อัปโหลด หรือสิ่งที่ควรทำต่อ |
| Plan | Perch ตรวจดู ร่างแผน และรอการอนุมัติก่อนลงมือ |
| Agents | Perch วางแผนและลงมือทำงาน |
โหมดสิทธิ์
นอกจากโหมดแชตแล้ว ยังมีการตั้งค่าสิทธิ์ที่กำหนดว่างานส่วนไหนรันได้โดยไม่ต้องขออนุมัติ โดยแบ่งตามระดับความเสี่ยง ไม่ใช่สวิตช์เปิดปิดตัวเดียว
| โหมด | สิ่งที่รันได้โดยไม่ต้องถาม |
|---|---|
| Default | ไม่มีอะไรที่มีความเสี่ยง การเขียน คำสั่ง การส่ง การลบ และการกระทำอื่นที่ย้อนกลับไม่ได้ ต้องได้รับการอนุมัติทั้งหมด |
| Auto Review | งานความเสี่ยงต่ำและปานกลางที่ย้อนกลับได้จะรันเอง ส่วนการกระทำที่มีผลตามมาเกินกว่านั้นแต่ละครั้งจะถูกตรวจโดยผู้รีวิวที่แยกต่างหาก ซึ่งจะถามคุณก็ต่อเมื่อไม่แน่ใจ |
| Take the Wheel | อิสระเต็มที่ Perch เขียน ลบ ส่ง และทำการกระทำในโลกจริงที่ย้อนกลับไม่ได้ได้โดยไม่ต้องถาม |
| Plan | อ่านอย่างเดียว เครื่องมือที่เปลี่ยนแปลงข้อมูลจะถูกบล็อกไว้จนกว่าแผนจะได้รับการอนุมัติ |
Auto Review ทำงานได้โดยไม่ต้องคอยดูแล แต่ไม่ได้ทำงานแบบปิดตา การแก้ไขที่ย้อนกลับได้และคำสั่งของโปรเจกต์เองจะดำเนินต่อไป การกระทำที่มีผลตามมาจะถูกรีวิวก่อนรัน และการกระทำที่เสี่ยงที่สุด (force push การลบจำนวนมาก) จะหยุดรอคุณเสมอ เส้นแบ่งที่มันใช้คือย้อนกลับได้กับย้อนกลับไม่ได้ ไม่ใช่ง่ายกับยาก การแก้ไขไฟล์ที่คุณย้อนกลับได้จึงถูกจัดการต่างจากการส่งอีเมล ดูโหมดสิทธิ์ ว่าผู้รีวิวตัดสินใจอย่างไร
Effort
ตัวควบคุม effort กำหนดว่าโมเดลจะทุ่มเทกับเทิร์นหนึ่งมากแค่ไหน เป็นแถบเดียวที่มีห้าช่อง คือระดับ effort สี่ระดับ ตามด้วยช่องแยกสำหรับ Flock
| ค่า | ความหมาย |
|---|---|
| Off | ไม่มีการคิด เร็วที่สุด และสิ้นเปลืองการใช้งานของคุณน้อยที่สุด |
| Low | ให้เหตุผลแบบตื้น เหมาะกับงานสั้นที่มีขอบเขตชัดและต้องการความเร็ว |
| Medium | สมดุล เรียกใช้เครื่องมือน้อยครั้งลงและรวบงานมากขึ้น |
| High | ค่าเริ่มต้น การให้เหตุผลที่ซับซ้อนและงานแบบเอเจนต์ |
| Flock | ไม่ใช่ระดับ effort แต่วางแผนทีมเวิร์กเกอร์และรันพร้อมกันแบบขนาน เหมาะที่สุดกับงานใหญ่ที่แบ่งย่อยได้ |
ส่วนที่น่าสนใจอยู่ข้างใต้ ผู้ให้บริการแต่ละรายแสดงการให้เหตุผลด้วยวิธีที่ต่างกันโดยสิ้นเชิง บางโมเดลไม่สนใจพารามิเตอร์การให้เหตุผลเลย บางโมเดลรับแค่สวิตช์เปิดปิดตัวเดียว และบางโมเดลมีขั้นระดับที่ตั้งชื่อไว้เอง แต่ละโมเดลในคลังโมเดลจะระบุว่าตัวเองเป็นแบบไหน และ effort ที่คุณเลือกจะถูกแปลงให้เข้ากับโมเดลที่ถูกเลือกใช้จริงในเทิร์นนั้น
นั่นหมายความว่าตัวควบคุมเดียวทำงานได้สม่ำเสมอ ไม่ว่า Roost จะ routing คุณไปที่โมเดลไหน หรือคุณปักหมุดโมเดลไหนเอง แถบนี้ไม่เคยสัญญาสิ่งที่โมเดลทำไม่ได้
Claude Opus 5.5 บน Pro เป็นโมเดลที่มีขั้นระดับของตัวเอง effort ของมันมี low, medium, high, xhigh และ max และการคิดเปิดอยู่เสมอ จึงไม่มี Off
Gemini 4 Argon บน Pro รองรับ Low, Medium และ High โมเดลนี้คิดอยู่เสมอ ดังนั้น Off จะทำงานเป็น Low
ซับเอเจนต์
Perch สร้างเอเจนต์ผู้ช่วยระหว่างเทิร์นได้ และคุณเลือกได้ว่าจะให้รันบนโมเดลใด ค่าเริ่มต้นคือ Inherit ซึ่งใช้โมเดลเดียวกับที่ทำงานหลัก การระบุโมเดลอื่นคือวิธีให้โมเดลหนึ่งตรวจงานของอีกโมเดล แทนที่จะให้คะแนนงานตัวเอง
การตั้งค่านี้ครอบคลุมงานที่มอบหมายไปทำในเบื้องหลังด้วย การระบุชื่อโมเดลมีค่าใช้จ่ายมากกว่าการปล่อยให้ routing ทำงานอัตโนมัติ
ดูภาพรวมทั้งหมดได้ที่ซับเอเจนต์ และดูว่าโหมดหลายเอเจนต์ทั้งสี่ต่างกันอย่างไรที่ Operator และเอเจนต์
สกิล
Perch มีชุดสกิลสำหรับ operator ที่จะโหลดเฉพาะเมื่อเกี่ยวข้อง ได้แก่ การนำทางเวิร์กสเปซ, GitHub และ git, เอกสาร, สเปรดชีต, งานนำเสนอ, PDF, แผนภาพ, งานวิจัย, คุณภาพข้อมูล และการควบคุมเบราว์เซอร์ แต่ละสกิลคือชุดคำแนะนำพร้อมเครื่องมือที่แนะนำสำหรับงานประเภทหนึ่ง เมทาดาทาสแกนได้โดยใช้ทรัพยากรน้อย ส่วนคำแนะนำฉบับเต็มจะโหลดเมื่อตรงกันเท่านั้น
แต่ละสกิลยังมีมาตรฐานการตรวจสอบ คือสิ่งที่ต้องยืนยันให้ได้ก่อนส่งผลลัพธ์ให้คุณ ดูชุดสกิลทั้งหมดและวิธีเลือกสกิลได้ที่สกิล
กฎของโปรเจกต์
Perch อ่านคำสั่งประจำจากโฟลเดอร์ของคุณทุกเทิร์น จาก .perch/PERCH.md และ .perch/rules/ รวมถึงคู่มือระดับ global ที่ ~/Documents/Perch/PERCH.md กฎที่คุณใส่ไว้ตรงนั้นจะมีผลเหนือค่าเริ่มต้นของ Perch
ดูหน่วยความจำ ว่าไฟล์โปรเจกต์ หน่วยความจำระยะยาว และการเรียนรู้จากการแก้ไขของคุณทำงานร่วมกันอย่างไร
Perch ทำงานอย่างไร
Perch อ่านเนื้อหาของคุณก่อน ตอบโดยอิงจากสิ่งที่พบ และแสดงแหล่งที่มาของทุกข้อความกล่าวอ้าง
สกิล
Perch มีชุดสกิลสำหรับ operator ที่จะโหลดเฉพาะเมื่อเกี่ยวข้อง แต่ละสกิลคือชุดกฎการทำงาน เครื่องมือที่แนะนำ และมาตรฐานการตรวจสอบสำหรับงานประเภทหนึ่ง หน้านี้บอกว่ามีสกิลอะไรมาให้บ้าง และระบบเลือกสกิลอย่างไร

