Open in
ThunderPhone CLI
เข้าสู่ระบบ จัดการเอเจนต์เสียงและการโทร กำหนดค่าไคลเอนต์ MCP และสร้างโครงร่างโปรเจ็กต์จากเทอร์มินัล
CLI ต้องใช้ Node.js 18.18 หรือใหม่กว่า เรียกใช้ด้วย npx หรือติดตั้งแบบโกลบอล:
npm install -g thunderphone
thunderphone --helpเข้าสู่ระบบ
npx thunderphone login
thunderphone whoami --jsonการเข้าสู่ระบบจะแสดงรหัสยืนยัน เปิดเบราว์เซอร์ และรอการอนุญาต
ใช้ --no-browser บนเครื่องแบบไม่มีหน้าจอ และเปิด URL ที่แสดงไว้จากที่อื่น
การเข้าสู่ระบบอุปกรณ์ต้องอาศัยการเปิดใช้ OAuth device flow ของ API คีย์ API ขององค์กรใน THUNDERPHONE_API_KEY ยังสามารถใช้ยืนยันคำสั่งได้ และมีลำดับความสำคัญเหนือข้อมูลรับรองการเข้าสู่ระบบที่จัดเก็บไว้
ข้อมูลรับรองจะจัดเก็บแยกตามโปรไฟล์ใน ~/.config/thunderphone/credentials.json
ด้วยโหมดไฟล์ 0600 โดย XDG_CONFIG_HOME และ THUNDERPHONE_CONFIG_DIR จะแทนที่ไดเรกทอรี
โทเค็นการเข้าถึงจะรีเฟรชโดยอัตโนมัติ และโทเค็นรีเฟรชแบบหมุนเวียนจะถูกบันทึกแบบอะตอมมิก ระบบจะไม่แสดงโทเค็นระหว่างการเข้าสู่ระบบ
thunderphone login --profile work
thunderphone agents list --profile work --json
thunderphone logout --profile workTHUNDERPHONE_PROFILE กำหนดโปรไฟล์เริ่มต้น การออกจากระบบจะลบข้อมูลรับรองในเครื่อง
แต่จะไม่เพิกถอนการอนุญาตบนเซิร์ฟเวอร์ API เริ่มต้นคือ https://api.thunderphone.com
ใช้ --api-base-url หรือ THUNDERPHONE_API_BASE_URL สำหรับ API อื่น โทเค็นของโปรไฟล์
ไม่สามารถส่งไปยัง URL ของ API ที่กำหนดค่าไว้ต่างกันได้ ให้เข้าสู่ระบบ URL นั้นด้วยโปรไฟล์แยกต่างหาก
คำสั่ง
ทุกคำสั่งรองรับ --json ข้อมูลที่สำเร็จจะส่งไปยัง stdout ส่วนข้อผิดพลาดจะส่งไปยัง stderr
พร้อมรหัสออกที่ไม่เป็นศูนย์ หากไม่ใช้ --json เอาต์พุตจะเป็นตารางหรือรายการฟิลด์แบบกระชับ
JSON จะคงโครงสร้างการตอบกลับของ API โดยปกปิดฟิลด์ข้อมูลรับรอง การให้บริการ MCP
จะสงวน stdout ไว้สำหรับโพรโทคอล MCP
| คำสั่ง | วัตถุประสงค์ |
|---|---|
login [--no-browser] [--scope "scopes"] | อนุญาตผ่านรหัสอุปกรณ์ |
logout, whoami | ลบข้อมูลรับรองในเครื่อง; แสดงรายการองค์กรที่เข้าถึงได้ |
agents list, agents get ID | อ่านข้อมูลเอเจนต์ |
agents create --file agent.json | สร้างเอเจนต์ |
agents update ID --file agent.json | บันทึกฉบับร่างเอเจนต์ |
agents deploy ID, agents delete ID | ปรับใช้ฉบับร่าง; ลบเอเจนต์ |
numbers list | อ่านข้อมูลหมายเลขโทรศัพท์ |
numbers provision --country US --area-code 415 | จัดเตรียมหมายเลขขาเข้าของสหรัฐอเมริกา |
numbers assign NUMBER_ID --agent ID | กำหนดเอเจนต์ขาเข้า |
call TO --agent ID --from FROM [--wait] | โทรออก; เลือกรอทรานสคริปต์ได้ |
calls list [--limit N] [--agent ID] | แสดงรายการสาย (จำกัด 1–200) |
calls get ID, calls transcript ID | อ่านข้อมูลสายหนึ่งหรือทรานสคริปต์ |
test run AGENT_ID [--scenario ID] --consent-to-charge | เรียกใช้สถานการณ์ที่บันทึกไว้และมีค่าใช้จ่ายผ่านช่องทางเว็บ |
test status RUN_ID [--agent ID] | ตรวจสอบแบตช์ พร้อมรายละเอียดสถานการณ์เมื่อระบุเอเจนต์ |
import VENDOR export.json | เตรียมการนำเข้า JSON จากผู้ให้บริการเพื่อตรวจสอบ |
imports get UUID, imports commit UUID | ตรวจสอบการนำเข้า; ยืนยันเอเจนต์ที่เลือกหลังตรวจสอบ |
mcp setup, mcp serve | กำหนดค่าไคลเอ็นต์; เริ่มสะพาน stdio |
init [directory] | สร้างโครงร่างโปรเจกต์ |
การโทรออกต้องมีหมายเลขผู้ให้บริการที่เชื่อมต่ออยู่ THUNDERPHONE_FROM_NUMBER สามารถ
ระบุค่าให้ --from ได้ หมายเลขที่ ThunderPhone จัดเตรียมให้ใช้สำหรับสายเข้าเท่านั้น --wait มีค่าเริ่มต้น
เป็นหมดเวลาหนึ่งชั่วโมง ตั้งค่า --timeout SECONDS เพื่อเปลี่ยนแปลง การหมดเวลาจะหยุดการรอ
โดยไม่วางสาย
การนำเข้ารองรับ vapi, retell, elevenlabs และ bland อาร์กิวเมนต์ที่สองคือ
พาธไปยังไฟล์ส่งออก JSON ของผู้ให้บริการ ไม่ใช่ ID ระยะไกลของผู้ให้บริการ API จะเตรียมการแมป
แบบอะซิงโครนัส ให้ตรวจสอบด้วย imports get UUID และยืนยันหลังจากพร้อมแล้วเท่านั้น
และหลังจากที่คุณตรวจสอบฟิลด์ที่แมปและคำเตือนแล้ว ดู การนำเข้าเอเจนต์
การตั้งค่า MCP
thunderphone mcp setup --client cursor --api-key-env THUNDERPHONE_API_KEY
thunderphone mcp setup --client codex --scope user --api-key-env THUNDERPHONE_API_KEY
thunderphone mcp setup --client claude-desktop --scope userไคลเอนต์ ได้แก่ claude-code, codex, cursor, vscode, gemini, claude-desktop และ
windsurf ขอบเขตโปรเจ็กต์เป็นค่าเริ่มต้น Desktop และ Windsurf ต้องใช้ขอบเขตผู้ใช้
ละเว้น --client เพื่อตรวจหาไคลเอนต์เดียวจากโปรเจ็กต์ การตรวจหาที่กำกวม
จะแสดงพรอมป์แบบโต้ตอบ หรือล้มเหลวพร้อมคำแนะนำในเซสชันแบบไม่โต้ตอบ
การตั้งค่าจะแสดงไฟล์ที่เขียนและคงเซิร์ฟเวอร์ที่ไม่เกี่ยวข้องไว้ JSON ที่มีอยู่
ต้องเป็น JSON แบบเคร่งครัดที่ถูกต้อง ค่า TOML ของ Codex จะถูกเก็บไว้ แต่ความคิดเห็นอาจถูกจัดรูปแบบใหม่
การตั้งค่าจะเลือกใช้ remote HTTP โดยตรงก่อน เมื่อใช้ --api-key-env ระบบจะเขียน
การอ้างอิงตัวแปร ไม่เขียนคีย์ หากไม่มีตัวเลือกนี้ HTTP โดยตรงจะอาศัยการรองรับ
OAuth ของไคลเอนต์ และจะไม่ใช้ไฟล์ข้อมูลรับรองของ CLI หากต้องการใช้ข้อมูลรับรองจาก thunderphone login
ซ้ำในไคลเอนต์ใดก็ตามที่รองรับ stdio ให้ใช้:
{
"mcpServers": {
"thunderphone": {
"command": "npx",
"args": ["-y", "@thunderphone/mcp"]
}
}
}ตัวหุ้มจะตรวจสอบ THUNDERPHONE_API_KEY จากนั้นตรวจสอบโปรไฟล์ CLI ปัจจุบัน (รีเฟรช
เมื่อจำเป็น) แล้วมอบหมาย OAuth ให้ mcp-remote THUNDERPHONE_MCP_URL จะแทนที่
ปลายทาง ระบบไม่ส่ง telemetry การตั้งค่าแบบสแตนด์อโลนยังทำได้ผ่าน
npx -y @thunderphone/mcp setup --client cursor หรือ thunderphone-mcp setup หลังจาก
ติดตั้ง @thunderphone/mcp แบบโกลบอล
สร้างโปรเจ็กต์
npx create-thunderphone-agent my-receptionist
npx create-thunderphone-agent my-outbound --template python --agent-type outbound
# Equivalent:
thunderphone init my-receptionist --template node --agent-type receptionistเทมเพลตคือ node และ python ประเภทเอเจนต์คือ receptionist, outbound และ
custom เอเจนต์เริ่มต้นคือพนักงานต้อนรับคลินิกทันตกรรมภาษาอังกฤษ/สเปนที่มี
ข้อมูลเดโมระบุไว้อย่างชัดเจน โปรเจ็กต์ประกอบด้วย agent.json, สคริปต์ปรับใช้,
การกำหนดค่า MCP สำหรับ Claude Code, Cursor และ VS Code, คำสั่งสำหรับเอเจนต์,
.env.example และ README การสร้างโครงร่างทำงานแบบออฟไลน์และจะไม่เขียนทับไดเรกทอรีที่ไม่ว่าง
แก้ไขข้อมูลธุรกิจก่อนปรับใช้ ส่งออกคีย์ API หมายเลขผู้โทรที่เชื่อมต่อ
และผู้รับการทดสอบของคุณตามที่ระบุไว้ใน README ที่สร้างขึ้น npm run deploy
หรือ python deploy.py จะสร้างหรืออัปเดตเอเจนต์ ปรับใช้ฉบับร่าง และโทรทดสอบที่มีค่าใช้จ่าย
สคริปต์ใช้การยืนยันตัวตนด้วยคีย์ API ส่วน CLI และตัวหุ้ม MCP แบบ stdio
ยังรองรับการเข้าสู่ระบบด้วยอุปกรณ์ สคริปต์ Python ต้องใช้ Python 3.9 หรือใหม่กว่า