Skip to content

Add Twilio SMS adapter to ty-email extension#435

Open
bborn wants to merge 1 commit intomainfrom
task/970-add-smstwilio-adapter-to-ty-email-extens
Open

Add Twilio SMS adapter to ty-email extension#435
bborn wants to merge 1 commit intomainfrom
task/970-add-smstwilio-adapter-to-ty-email-extens

Conversation

@bborn
Copy link
Owner

@bborn bborn commented Feb 9, 2026

Summary

  • Adds Twilio SMS as a new adapter type for the ty-email extension, making it a general messaging gateway
  • Inbound SMS received via webhook server, outbound sent via Twilio REST API
  • Reuses existing LLM classifier, bridge, and state management pipeline unchanged
  • SMS threading by sender phone number ensures conversation continuity
  • Interactive init wizard updated with Twilio setup flow
  • 13 tests covering webhook handling, HMAC validation, threading, and lifecycle

Test plan

  • All 13 Twilio adapter tests pass (go test ./internal/adapter/ -run Twilio)
  • Full build succeeds (go build ./...)
  • Manual test: configure with real Twilio account and send/receive SMS
  • Verify webhook receives inbound SMS and creates tasks via classifier
  • Verify outbound SMS replies are sent via Twilio API

🤖 Generated with Claude Code

Adds SMS support via Twilio as a new adapter type alongside IMAP and Gmail.
The adapter receives inbound SMS via webhook and sends outbound via Twilio
REST API, reusing the existing classifier, bridge, and state pipeline.

- New adapter: internal/adapter/twilio.go implementing the Adapter interface
- Webhook server for inbound SMS with optional HMAC signature validation
- SMS threading via sender phone number for conversation continuity
- Synthetic subject generation from SMS body for classifier compatibility
- Interactive init wizard support for Twilio configuration
- Config example with Twilio section
- 13 tests covering webhook handling, threading, validation, and lifecycle

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant