ThunderPhone 2.0 вече е тук.Започнете самостоятелно — от 2 цента/мин.Прочетете съобщението

Getting Started

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 work

THUNDERPHONE_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 или по-нова версия.