เดโมส่วนใหญ่ที่เอเจนต์ซื้อเซิร์ฟเวอร์จะจบตอนคำสั่งซื้อผ่าน ซึ่งเป็นช่วงที่น่าสนใจน้อยที่สุด เซิร์ฟเวอร์มีอยู่แล้ว เอเจนต์ถือ id อย่าง 47HZ7YF และไม่มีใครบอกว่าต่อจากนั้นเกิดอะไรขึ้น
ต่อจากนั้นคือทุกอย่างที่แอดมินทำโดยไม่ต้องคิด: รอจน SSH ตอบจริง หารหัสผ่าน สังเกตว่าดิสก์กำลังเต็ม รีบูตหลังอัปเดตเคอร์เนล ต่ออายุก่อนหมดเดือน ถามซัพพอร์ตเมื่อมีอะไรแปลก ๆ ถ้าเอเจนต์จะเป็นเจ้าของโครงสร้างพื้นฐาน ส่วนนี้ก็เป็นหน้าที่ของมันด้วย นี่คือวิธีทำผ่านเซิร์ฟเวอร์ MCP ของเรา เราลองทุกขั้นตอนในสภาพแวดล้อมทดสอบก่อนเขียน
ถ้ายังไม่ได้เชื่อมต่อไคลเอนต์ ให้เริ่มจาก Claude Code และ Codex หรือ Claude Desktop และ Cursor
นาทีแรก: "active" ยังไม่ใช่ "พร้อม"
order_vps ตอบทันทีที่คำสั่งซื้อถูกชำระจากยอดเงิน เซิร์ฟเวอร์ถูกสร้างเบื้องหลัง โดยทั่วไปราวหนึ่งนาที การเรียกครั้งต่อไปของเอเจนต์คือ get_vps_status และเรียกซ้ำได้เรื่อย ๆ เพราะเครื่องมือนี้อ่านอย่างเดียว
มีสองฟิลด์ที่สำคัญ status เปลี่ยนเป็น active เมื่อเครื่องถูกสร้างแล้ว access มีทุกอย่างสำหรับล็อกอิน: ที่อยู่ พอร์ต และคำสั่ง SSH สำเร็จรูป ในแพ็กเกจที่มี IPv4 ของตัวเอง พอร์ตคือ 22 ในแพ็กเกจ NAT จะเป็นพอร์ตส่งต่อส่วนตัว และคำตอบบอกไว้ตรง ๆ พร้อมคำเตือนไม่ให้ล็อกตัวเองออกด้วยไฟร์วอลล์ที่อนุญาตเฉพาะพอร์ตภายนอก
ระหว่างสองช่วงนี้มีช่องว่างที่คนมักสะดุด การบูตครั้งแรกจะติดตั้งอัปเดต OS ซึ่งอาจใช้เวลาหลายนาที และระหว่างนั้น SSH อาจปฏิเสธการเชื่อมต่อ เอเจนต์ที่รอบคอบจะรอ access.ssh_ready แทนที่จะกระหน่ำพอร์ต 22
ถ้าคำสั่งซื้อไม่มีคีย์ SSH รหัสผ่าน root จะรออยู่ reveal_password ให้รหัสผ่านเพียงครั้งเดียว และหลังจาก VM บูตเสร็จเท่านั้น ถ้าถามเร็วเกินไปจะได้ password_pending โดยสิทธิ์ดูครั้งเดียวยังไม่ถูกใช้ เราทำแบบนี้หลังจากเอเจนต์คอยดึงรหัสผ่านที่ VM ซึ่งยังบูตอยู่ยังไม่ได้นำไปใช้ แต่พูดตรง ๆ ส่ง ssh_key ไปกับคำสั่งซื้อแล้วข้ามขั้นตอนนี้ไปเลยดีกว่า
วันที่สอง: เฝ้าดู
get_vps_metrics ส่ง CPU หน่วยความจำ เครือข่าย และดิสก์ เป็นอนุกรมเวลาของชั่วโมง วัน สัปดาห์ หรือเดือนล่าสุด เอเจนต์ที่ดูวันละครั้งจะเห็นรูปแบบที่ฆ่าเซิร์ฟเวอร์เล็ก ๆ: หน่วยความจำค่อย ๆ ไต่ขึ้นจน OOM killer เลือกเหยื่อ จากภายนอกมันแก้ต้นเหตุไม่ได้ แต่บอกคุณหรือเข้าไปดูผ่าน SSH ได้
power_vps ทำ start, stop และ reboot รายละเอียดจากการทดสอบ: ถ้าเซิร์ฟเวอร์ไม่ active (ยังสร้างอยู่ หรือถูกระงับเพราะไม่ได้ชำระค่าต่ออายุ) เครื่องมือจะตอบ 409 พร้อมคำแนะนำให้ตรวจสถานะก่อน เอเจนต์ที่ถือว่าทุกคำตอบที่ไม่ใช่ 200 คือ "ลองใหม่ไปเรื่อย ๆ" จะวนลูปตรงนี้ ข้อความผิดพลาดบอกเองว่าควรทำอะไร เพราะข้อความผิดพลาดของเราเขียนให้เอเจนต์อ่านพอ ๆ กับคน
set_hostname เปลี่ยนชื่อเครื่องผ่าน guest agent ที่รันอยู่ข้างใน บน Linux จึงมีผลโดยไม่ต้องรีบูต ถ้าถอด qemu-guest-agent ออก เครื่องมือจะใช้ไม่ได้: คืน agent_unavailable และไม่เปลี่ยนแปลงอะไร
วันที่สามสิบ: เงิน
ตรงนี้คือที่ที่โครงสร้างพื้นฐานของเอเจนต์มักตาย การต่ออายุอยู่ในปฏิทินของใครสักคน คนนั้นยุ่ง เซิร์ฟเวอร์ถูกระงับ
ที่เรา การต่ออายุไม่ขึ้นกับความจำของเอเจนต์ ทุกเซิร์ฟเวอร์ต่ออายุทุกเดือนจากยอดเงินที่เติมไว้ และอีเมลของบัญชีจะได้รับการแจ้งเตือนก่อนถึงกำหนด เอเจนต์แค่ต้องรักษายอดเงินให้สูงกว่าการหักครั้งถัดไป และ get_balance บอกได้ว่าสถานะเป็นอย่างไร
ไม่มีช่วงผ่อนผัน: ถ้าสิ้นงวดแล้วยอดเงินไม่พอต่ออายุ เซิร์ฟเวอร์จะถูกระงับ และ IP เฉพาะของมันจะกลับเข้าพูล
เมื่อยอดเงินเหลือน้อย topup_balance จะสร้างลิงก์ชำระเงินคริปโต: USDT, USDC หรือ ETH บน Base, Ethereum หรือ Polygon นี่คือจุดแรกที่เอเจนต์ต้องพึ่งคุณ มันสร้างใบแจ้งหนี้ได้ แต่เซ็นธุรกรรมไม่ได้เว้นแต่คุณให้วอลเล็ตแก่มัน ซึ่งเราจะคิดหนักก่อนทำ ในทางปฏิบัติคนมักเติมครั้งเดียวสำหรับหลายเดือนแล้วให้เอเจนต์ใช้จากตรงนั้น ถ้าคำสั่งซื้อหรือใบแจ้งหนี้ค้างชำระเพราะยอดเงินไม่พอ หลังคุณเติมเงินแล้วเอเจนต์จะเรียก pay_invoice และชำระจากยอดเงิน
ช่องว่างที่ต้องยอมรับ: เครื่องมือ MCP ไม่ต่ออายุล่วงหน้าหลายเดือนตามคำขอ การต่ออายุรายเดือนเป็นอัตโนมัติ ส่วนการจ่ายล่วงหน้า 3, 6 หรือ 12 เดือนทำได้ในแดชบอร์ดหรือด้วยคำขอ REST ครั้งเดียว ถ้าต้องการระยะยาวตั้งแต่แรก order_vps รับ months (1 ถึง 36) ตอนสั่งซื้อ
การขยายใช้ get_upgrade_options และ change_plan แพ็กเกจเปลี่ยนในที่เดิม ไฟล์และ OS อยู่ครบ เซิร์ฟเวอร์รีบูตครั้งเดียว และส่วนต่างราคาสำหรับช่วงที่เหลือจะหักจากยอดเงิน เอเจนต์ต้องส่ง confirm: true ซึ่งเป็นวิธีที่เราบอกว่า "คุณกำลังใช้เงิน แน่ใจนะ"
เมื่อมีปัญหา
การกระทำที่ทำลายข้อมูลถูกออกแบบให้ยุ่งยากโดยตั้งใจ reinstall_vps และ cancel_service แบบทันทีต้องใช้ hostname ที่ตรงของเซิร์ฟเวอร์ใน confirm และคำอธิบายบอกเอเจนต์ให้ถามคนก่อน นี่คือจุดที่สองที่เอเจนต์ต้องพึ่งคุณ และตั้งใจให้เป็นแบบนั้น
การยกเลิกแบบปลอดภัย end_of_period จะเก็บเซิร์ฟเวอร์ไว้จนหมดเวลาที่จ่ายแล้ว undo_cancel ดึงกลับ ซึ่งสำคัญกว่าที่คิด: เอเจนต์เปลี่ยนใจกลางงานบ่อยพอ ๆ กับคน
เมื่อเอเจนต์ติดขัด create_ticket เปิดทิกเก็ตที่ผูกกับเซิร์ฟเวอร์ และ reply_ticket ต่อบทสนทนา คนที่อ่านคือคนฝั่งเรา ไม่ใช่แชตบอตตอบแชตบอต
และเมื่อต้องให้คนเข้ามา delegate_service จะเชิญเขาทางอีเมลให้เป็นผู้ดูแลเซิร์ฟเวอร์เครื่องนั้นเครื่องเดียว เขาได้พลังงาน คอนโซล การติดตั้งใหม่ และ hostname ไม่ได้การเงิน การต่ออายุ หรือการยกเลิก และไม่มีวันเห็นโทเคนของเอเจนต์
สิ่งที่เอเจนต์ยังทำไม่ได้
เพื่อให้ขอบเขตชัดเจน:
- เติมเงินเข้ายอด มันสร้างใบแจ้งหนี้เติมเงินได้และจ่ายใบแจ้งหนี้จากยอดเงินด้วย
pay_invoiceแต่การนำคริปโตเข้ายอดเงินต้องใช้วอลเล็ต ซึ่งปกติคือคุณ - ทำงานภายใน OS ผ่าน MCP แพ็กเกจ การตั้งค่า และการดีพลอยผ่าน SSH MCP จัดการเครื่องจากภายนอก
- ยกเลิกการระงับเอง ถ้าเซิร์ฟเวอร์ถูกระงับเพราะการใช้งานในทางที่ผิด นั่นคือการคุยกับคน และควรเป็นแบบนั้น
สิ่งเหล่านี้ไม่ได้ทำให้เครื่องมือมีประโยชน์น้อยลง มันหมายความว่าควรออกแบบลูปของเอเจนต์รอบเครื่องมือเหล่านี้: ตรวจสถานะ รักษายอดเงินในระดับที่เหมาะ ยกระดับผ่านทิกเก็ต และรอคุณก่อนทำสิ่งที่ลบข้อมูล
ถ้างานของเอเจนต์สั้น ๆ เซิร์ฟเวอร์ทั้งเครื่องอาจไม่ใช่หน่วยที่เหมาะ VPS หรือ sandbox? อธิบายว่าเมื่อไร microVM ที่อยู่หนึ่งนาทีเหมาะกว่า นอกนั้น แพ็กเกจอยู่ที่นี่ และเอกสาร MCP แสดงทุกเครื่องมือพร้อมพารามิเตอร์
ความคิดเห็น
ยังไม่มีความคิดเห็น เป็นคนแรกสิ