К основному содержанию
скилл CX Codex GP ChatGPT официальный · OpenAI

twilio-lookup-phone-intelligence — скилл для Codex: проверка номеров

Скилл для Codex и ChatGPT, который проверяет телефонные номера через Twilio Lookup v2 и оценивает риск мошенничества до отправки SMS или звонка.

Установить в Codex · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add openai/plugins --skill twilio-lookup-phone-intelligence -a codex
Открыть на GitHub

Что делает twilio-lookup-phone-intelligence

Скилл даёт агенту доступ к Twilio Lookup v2: базовая проверка показывает, валиден ли номер, его формат E.164, национальный формат и код страны. Если valid вернул false, в validationErrors лежит причина — можно обработать и не пытаться отправлять сообщение.

Платные пакеты данных подключаются через параметр fields, и их можно запросить несколько за один вызов: line_type_intelligence различает mobile, landline, VoIP, toll-free и другие типы, sim_swap ловит подмену SIM, caller_name показывает имя звонящего, identity_match сверяет владельца, sms_pumping_risk считает риск накрутки SMS. Есть и reassigned_number — проверка, не переиспользован ли номер. Скилл показывает примеры на Python и Node.js.

Заранее нужен аккаунт Twilio и переменные окружения TWILIO_ACCOUNT_SID и TWILIO_AUTH_TOKEN, плюс SDK: pip install twilio или npm install twilio. Учтите: caller_name работает только для номеров США, а sim_swap без регистрации у оператора вернёт ошибку 60606. Запросы к caller_name, не вернувшие данных, всё равно тарифицируются. Один вызов — один номер, для массовой проверки придётся писать цикл.

Какие задачи решает

  • проверить номер перед отправкой SMS
  • отсеять VoIP-номера при маршрутизации звонков
  • оценить риск накрутки SMS перед рассылкой
  • поймать подмену SIM при входе в аккаунт
  • сверить владельца номера с данными пользователя

Примеры запросов агенту

  • проверь номер +15108675310 и скажи, валиден ли он
  • запроси line_type_intelligence и sim_swap для этого номера
  • оцени sms_pumping_risk перед отправкой рассылки

Как установить twilio-lookup-phone-intelligence

1Через Skills CLI (Vercel)

npx skills add openai/plugins --skill twilio-lookup-phone-intelligence -a codex

2Вручную: положить файлы

.agents/skills/twilio-lookup-phone-intelligence/SKILL.md

Для всех проектов — ~/.agents/skills/

По шагам, с командами для каждой платформы: Скиллы Codex: как установить, где лежат и как вызвать

Вопросы о twilio-lookup-phone-intelligence

Как установить twilio-lookup-phone-intelligence в Claude?

Выполните npx skills add openai/plugins --skill twilio-lookup-phone-intelligence -a codex, затем файл скилла появится по пути .agents/skills/twilio-lookup-phone-intelligence/SKILL.md.

Что делает twilio-lookup-phone-intelligence?

Проверяет телефонные номера через Twilio Lookup v2 и по запросу подтягивает пакеты данных: тип линии, подмену SIM, имя звонящего, совпадение личности и риск накрутки SMS.

Какие пакеты данных доступны и где они не работают?

line_type_intelligence и sms_pumping_risk покрывают весь мир, caller_name и reassigned_number — только США, sim_swap и identity_match — отдельные регионы. Для sim_swap нужна регистрация у оператора, иначе вернётся ошибка 60606.

Исходный текст

SKILL.md · MIT
---
name: twilio-lookup-phone-intelligence
description: >
  Look up phone number intelligence via Twilio Lookup v2 API. Covers number
  validation, line type detection (mobile/landline/VoIP), SIM swap detection,
  caller name, identity match, and SMS pumping risk scoring. Use this skill
  to validate numbers or assess fraud risk before sending messages or calls.
---

## Overview

Twilio Lookup validates phone numbers and provides optional intelligence packages. Basic validation is free; data packages (line type, SIM swap, etc.) are paid per lookup.

---

## Prerequisites

- Twilio account (free trial works for basic lookups)
  — New to Twilio? See `twilio-account-setup`
- Environment variables:
  - `TWILIO_ACCOUNT_SID`
  - `TWILIO_AUTH_TOKEN`
  — See `twilio-iam-auth-setup` for credential setup and best practices
- SDK: `pip install twilio` / `npm install twilio`

---

## Quickstart

**Python**
```python
import os
from twilio.rest import Client

client = Client(os.environ["TWILIO_ACCOUNT_SID"], os.environ["TWILIO_AUTH_TOKEN"])

phone = client.lookups.v2.phone_numbers("+15108675310").fetch()

print(phone.valid)            # True / False
print(phone.phone_number)     # +15108675310 (E.164)
print(phone.national_format)  # (510) 867-5310
print(phone.country_code)     # US
```

**Node.js**
```node
const twilio = require("twilio");
const client = twilio(process.env.TWILIO_ACCOUNT_SID, process.env.TWILIO_AUTH_TOKEN);

const phone = await client.lookups.v2.phoneNumbers("+15108675310").fetch();

console.log(phone.valid);
console.log(phone.phoneNumber);
console.log(phone.nationalFormat);
```

If `valid` is `false`, check `phone.validationErrors` for the reason.

---

## Key Patterns

### Line Type Intelligence (paid)

Identifies mobile, landline, VoIP, toll-free, etc.

**Python**
```python
phone = client.lookups.v2.phone_numbers("+15108675310").fetch(
    fields="line_type_intelligence"
)
print(phone.line_type_intelligence)
# {'type': 'mobile', 'carrier_name': 'T-Mobile USA', ...}
```

**Node.js**
```node
const phone = await client.lookups.v2.phoneNumbers("+15108675310").fetch({
    fields: "line_type_intelligence",
});
console.log(phone.lineTypeIntelligence);
```

Line types: `mobile`, `landline`, `voip`, `toll-free`, `fixedVoip`, `nonFixedVoip`, `personal`, `payphone`, `unknown`

### Multiple Packages in One Request

**Python**
```python
phone = client.lookups.v2.phone_numbers("+15108675310").fetch(
    fields="line_type_intelligence,sim_swap,caller_name"
)
```

**Node.js**
```node
const phone = await client.lookups.v2.phoneNumbers("+15108675310").fetch({
    fields: "line_type_intelligence,sim_swap,caller_name",
});
```

### Validate Before Sending

**Python**
```python
phone = client.lookups.v2.phone_numbers("+invalid").fetch()
if not phone.valid:
    print(f"Invalid number: {phone.validation_errors}")
    # Handle gracefully — do not attempt to send
```

**Node.js**
```node
const phone = await client.lookups.v2.phoneNumbers("+invalid").fetch();
if (!phone.valid) {
    console.log("Invalid number:", phone.validationErrors);
}
```

### Available Data Packages

| Package | `fields` value | Coverage | Use case |
|---------|---------------|----------|----------|
| Line Type Intelligence | `line_type_intelligence` | Worldwide | Route by line type; block VoIP |
| Caller Name | `caller_name` | US only | Show caller ID |
| SIM Swap | `sim_swap` | Select regions | Fraud detection |
| Identity Match | `identity_match` | Select regions | Verify ownership |
| SMS Pumping Risk | `sms_pumping_risk` | Worldwide | Fraud prevention |
| Reassigned Number | `reassigned_number` | US only | Check if recycled |

---

## Common Errors

| Code | Meaning | Fix |
|------|---------|-----|
| 20404 | Phone number not found | Number may be invalid or unsupported format |
| 60601 | Data package not available for this region | Check regional coverage before requesting package |

---

## CANNOT

- **Cannot look up by name or address** — Input is always a phone number. No reverse search.
- **Cannot get caller_name for non-US numbers** — Returns error 60600 (out of coverage).
- **Cannot detect conditional call forwarding** — Only unconditional forwarding is detected, and only for UK carriers.
- **Cannot guarantee SIM swap data without carrier registration** — Returns error 60606 until carrier approval is in place.
- **Cannot use Reassigned Number outside the US** — US-only dataset with monthly update cadence.
- **Cannot get real-time SMS pumping scores** — Scores are statistical models, not live traffic analysis.
- **Cannot write data** — Lookup v2 is read-only (GET only). The one exception is Line Type Override (POST/DELETE).
- **Cannot batch multiple phone numbers in one request** — One number per API call. Loop for bulk lookups.
- **Cannot avoid billing on caller_name requests that return no data** — Billed per request regardless of whether data is returned.
- **Cannot use Phone Number Quality Score or Pre-fill without provisioning** — Returns 60606. Contact Twilio sales to enable.
- **Cannot guarantee deliverability from a valid lookup** — A valid number may still be unreachable (carrier issues, ported, etc.)

---

## Next Steps

- **Send SMS after validation:** `twilio-sms-send-message`
- **Send OTP after validation:** `twilio-verify-send-otp`

© Twilio · MIT · openai/plugins

Похожие скиллы

Всё по теме «Бэкенд и API» →
connector-twilio caffeinelabs Скилл для отправки SMS и MMS из Caffeine-канистры через пакет twilio-client. Экспериментальный: ни один вызов ещё не проверяли на живом Twilio. CX Codex +1 11 200установок Twilio SMS Automation Claude Office Skills Скилл для автоматизации SMS-рассылок, двусторонних переписок, кодов подтверждения и голосовых сценариев через Twilio. CX Codex +1 5 400установок twilio-communications sickn33 Скилл помогает настроить отправку сообщений, голосовые вызовы и двухфакторную верификацию через Twilio. Пригодится при создании IVR-меню или защите входа через одноразовые коды. CX Codex +1 994установок build-zoom-phone-integration официальный anthropics Справочный скилл для интеграции Zoom Phone: OAuth, REST API, вебхуки, Smart Embed, URI-схемы, CRM и CTI. Используется после маршрутизации в workflow телефонии. CX Codex +1 2 100установок sms-10dlc-registration sentdm Готовит и проверяет заявку на регистрацию бренда и кампании US A2P 10DLC в Sent: доказательства согласия, сценарии использования, примеры сообщений. CX Codex +1 2 900установок sent-profile-provisioning sentdm Скилл проводит создание, правку и удаление Sender Profiles в Sent через MCP-инструменты и REST-жизненный цикл профиля. Пригодится, когда нужно завести тенанта и довести профиль до состояния, в котором он может отправлять. CX Codex +1 2 700установок

Из того же набора304

Весь набор →
twilio-sendgrid-email-send Скилл учит агента отправлять письма через SendGrid v3 Mail Send API: одиночные, пакетные с шаблонами, отложенные и с вложениями. Нужен ключ SendGrid с префиксом SG. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-security-api-auth Помогает выбрать способ аутентификации Twilio и подключить его правильно, чтобы Auth Token не утёк в продакшен. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-rcs-messaging Скилл для Codex и ChatGPT, который ведёт от онбординга RCS-отправителя до отправки карточек и каруселей через Twilio. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-notifications-alerts-advisor Помогает выбрать архитектуру транзакционных уведомлений: канал, срочность, подтверждение доставки и запасные варианты. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-debugging-observability Разбирает, почему не доходят SMS и падают звонки, и помогает настроить мониторинг Twilio в продакшене. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-conversations-classic-api Скилл для Codex и ChatGPT, который помогает собирать многоканальные переписки на Twilio Conversations (classic) API: SMS, WhatsApp и веб-чат в одном треде. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-content-template-builder Создаёт и отправляет шаблоны сообщений через Twilio Content API: WhatsApp, SMS, RCS и MMS с переменными и одобрением Meta. CX Codex GP ChatGPT ★ 7 596звёзд репо twilio-compliance-onboarding Скилл объясняет, какие регистрации нужны до того, как пойдёт трафик Twilio: A2P 10DLC, toll-free, WhatsApp, RCS, голосовые trust-программы. CX Codex GP ChatGPT ★ 7 596звёзд репо

Спонсоры проекта

Компании, которые помогают держать аналитику открытой