sms

Send SMS messages via the @loyalty/sms package with GSM-7/UCS-2 segment calculation.

Updated May 7, 2026
One-click install
npx skills add https://github.com/johinsDev/loyalty-app --skill sms-johinsdev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: sms
Source: https://github.com/johinsDev/loyalty-app/tree/main/.claude/skills/sms
Command: npx skills add https://github.com/johinsDev/loyalty-app --skill sms-johinsdev

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It helps you send SMS notifications from the loyalty-app monorepo reliably while tracking GSM-7 vs UCS-2 segment costs for accurate delivery and auditing.

Core Features & Use Cases

  • Provider-agnostic SMS sending: Use the @loyalty/sms package with a strategy-based transport interface across environments.
  • GSM-7 / UCS-2 segment math: Automatically records encoding, character counts, and computed segments so you can reason about carrier billing.
  • Outbox + debugging views: Use the (dev)/sms-outbox UI and outbox persistence (via the outbox transport) to inspect sent messages, status, and provider ids.
  • Testing support: Use the built-in fake sender to assert sends and prevent unintended notifications in unit/integration tests.

Quick Start

Instruct the AI to send an OTP SMS by calling the monorepo’s SMS sender with your recipient phone number and message content.

Frequently Asked Questions about sms

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I send SMS notifications from a monorepo with accurate carrier billing?

You can send SMS notifications from a monorepo by using a provider-agnostic package that automatically calculates GSM-7 vs UCS-2 encoding segments. This ensures accurate delivery and provides reliable carrier billing tracking for transactional messages like OTPs and shipment updates.

What is GSM-7 segment calculation and why does it matter for SMS delivery?

GSM-7 segment calculation determines message encoding and character counts to compute the exact number of SMS segments sent. This mechanism is needed to accurately reason about carrier billing and audit delivery costs for transactional notifications.

How do I test SMS sending without triggering real notifications?

You can test SMS sending by using a built-in fake sender transport strategy. This allows you to assert sends in unit and integration tests, preventing unintended notifications while verifying the SMS delivery logic within your monorepo.

Can I inspect sent SMS messages and their delivery status during development?

Yes, you can inspect sent SMS messages by using outbox persistence with a dedicated debugging UI. This dev-only interface allows you to review sent messages, their delivery status, and provider IDs during local development.

Does this SMS package support multiple transport strategies across environments?

Yes, the SMS package supports environment-based transport selection using strategies like Twilio, log, folder, and outbox. This allows you to switch between actual SMS delivery, local logging, and outbox persistence depending on your environment.

What is the best way to send transactional SMS like OTPs and appointment reminders?

The best way to send transactional SMS is through a strategy-based transport interface that handles provider-agnostic delivery. This approach applies to OTPs, appointment reminders, and alerts while automatically tracking encoding and segment costs.