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 потока за устройства на 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. Успешните данни се изпращат към стандартния изход; грешките се изпращат към стандартния изход за грешки
с код за изход, различен от нула. Без --json изходът е компактна таблица или списък с полета.
JSON запазва структурата на отговора на API, като полетата за идентификационни данни са редактирани. Обслужването на MCP
запазва стандартния изход за протокола 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 експорт от доставчик, а не отдалечен идентификатор на доставчик. 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 се запазват, но коментарите може да бъдат преформатирани.
Настройването предпочита директен отдалечен 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 заменя
крайната точка. Не изпраща телеметрия. Самостоятелно настройване е налично и чрез
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 и stdio MCP
обвивката също поддържат вход от устройство. Python скриптовете изискват Python 3.9 или по-нова версия.