An SMS channel for the Vellum assistant, backed by Twilio.
Makes the assistant reachable by text message. People text the configured
Twilio number, and the assistant answers over SMS. The assistant can also send
on request via the sms skill.
It does not read the user's personal text messages, history, or existing threads. Inbound arrives only on the configured Twilio line.
- Create or sign in to a Twilio account.
- Find the live Account SID and Auth Token in the Twilio Console.
- Ask the assistant to set up SMS. It securely collects those two credentials, checks the SMS-capable phone numbers already owned by the Twilio account, and helps choose one for the assistant.
- If the account has no SMS-capable number, the assistant can search Twilio's available inventory for a country and present choices. It asks for explicit confirmation before purchasing the selected number in that Twilio account.
The Twilio account, number ownership, and billing remain with the user. Do not paste credentials into chat or run a terminal command yourself.
When the assistant has a public ingress URL, the plugin programs the selected number's SMS webhook automatically. If there is no public ingress URL, inbound SMS cannot arrive until one is available.
For Twilio's account, number, and messaging setup, see Send SMS and MMS messages.
The auth token is also the webhook signing key.
- US traffic may need A2P 10DLC registration. Check Twilio's messaging compliance requirements if carriers do not deliver messages.
- Trial accounts can only text verified numbers added to the Twilio Console.
- Status callbacks are not messages. A delivery that has
MessageStatusbut noBodyis ignored rather than treated as a conversation turn. MessagingServiceSidnumbers are out of scope for v1. The webhook for a number in a messaging service is programmed on the service, not the number.
bun install
bun test
bunx tsc --noEmit