---
title: "ThunderPhone CLI"
description: "Συνδεθείτε, διαχειριστείτε φωνητικούς πράκτορες και κλήσεις, ρυθμίστε προγράμματα-πελάτες MCP και δημιουργήστε τον βασικό σκελετό έργων από το τερματικό."
---

Το CLI απαιτεί Node.js 18.18 ή νεότερη έκδοση. Εκτελέστε το με `npx` ή εγκαταστήστε το καθολικά:

```bash
npm install -g thunderphone
thunderphone --help
```

## Συνδεθείτε

```bash
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` παρακάμπτουν τον
κατάλογο. Τα διακριτικά πρόσβασης ανανεώνονται αυτόματα και τα εναλλασσόμενα διακριτικά ανανέωσης
αποθηκεύονται ατομικά. Τα διακριτικά δεν εμφανίζονται ποτέ από τη σύνδεση.

```bash
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`. Τα επιτυχή δεδομένα αποστέλλονται στο 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 προμηθευτή, όχι απομακρυσμένο αναγνωριστικό προμηθευτή. Το API προετοιμάζει μια αντιστοίχιση
ασύγχρονα· επιθεωρήστε την με `imports get UUID` και οριστικοποιήστε μόνο αφού είναι έτοιμη
και έχετε ελέγξει τα αντιστοιχισμένα πεδία και τις προειδοποιήσεις. Δείτε τις [εισαγωγές πρακτόρων](/el/guides/import-agents).

## Ρύθμιση MCP

```bash
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, χρησιμοποιήστε:

```json
{
  "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`.

## Δημιουργία έργου

```bash
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 ή νεότερη έκδοση.
