Agent skill

Twilio Sms

by steipete in steipete/agent-scripts

Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing.

MITAuto-check passed

Install Twilio Sms

skills CLI
$ npx skills add steipete/agent-scripts --skill twilio-sms -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install steipete/agent-scripts twilio-sms --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/steipete/agent-scripts.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/twilio-sms .claude/skills/twilio-sms && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
twilio-sms
GitHub stars
7.3k
Token cost
~1.1k tokens
SKILL.md length
327 words
Files
2
Skills in repo
45
Repo updated
First seen
Licence
MIT

At a glance

Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing.

  • Works in 6 steps: Check Twilio CLI/profile → Check exact env presence only → If only partial env exists, search… → …
  • SKILL.md covers Safety, Credential Route, CLI Setup and Numbers, plus 2 more sections
  • Calls npx, curl and jq; reaches api.twilio.com; needs TWILIO_AUTH_TOKEN and OP_SERVICE_ACCOUNT_TOKEN

What it does

Twilio Sms is an agent skill from steipete/agent-scripts. Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing.

Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `agents/openai.yaml`).

It works with Twilio. The repository describes itself as: Scripts for agents, shared between my repositories. The licence is MIT.

Example prompts

  • “/twilio-sms”

Requirements

  • Node.js
  • A credential in OP_SERVICE_ACCOUNT_TOKEN
  • A credential in TWILIO_AUTH_TOKEN

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Check Twilio CLI/profile
  2. Check exact env presence only
  3. If only partial env exists, search 1Password metadata first.
  4. Prefer an item with fields matching
  5. If op only sees a restricted vault, retry desktop-backed reads with env -u OP_SERVICE_ACCOUNT_TOKEN.
  6. Verify auth before any purchase/send

What it can do on your machine

Read from SKILL.md and the folder at commit 79150cf. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npx
    • curl
    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.twilio.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • TWILIO_AUTH_TOKEN
    • OP_SERVICE_ACCOUNT_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Twilio Sms loads about 1.1k tokens when it runs. Until then it costs about 23 tokens; SKILL.md has 327 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~23
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from steipete/agent-scripts at commit 79150cf, republished under its MIT licence (© steipete). 327 words, ~1,061 tokens.

Download SKILL.mdSave it as .claude/skills/twilio-sms/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
twilio-sms
description
Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing.
metadata.short-description
Twilio SMS numbers and messages

Twilio SMS

Use for Twilio phone-number and SMS work: create/buy numbers, list owned numbers, keep/label numbers, send texts, and check inbound/outbound messages.

Safety

  • Never print Account SIDs, auth tokens, API secrets, TOTP codes, or full 1Password item JSON.
  • Do not store real phone numbers, SIDs, names, or account-specific item IDs in this skill.
  • Use $one-password for secret reads. op stays tmux-only.
  • If desktop 1Password access is needed, unset service-account auth for those commands: env -u OP_SERVICE_ACCOUNT_TOKEN op ....
  • Print credential shape only: field present, length, prefix class if useful.
  • Public writes or logs: avoid leaking message bodies unless the user asked to read/check SMS.

Credential Route

  1. Check Twilio CLI/profile:
    • twilio --version or npx -y twilio-cli --version
    • twilio profiles:list or npx -y twilio-cli profiles:list
  2. Check exact env presence only:
    • TWILIO_ACCOUNT_SID
    • TWILIO_AUTH_TOKEN
    • optional API key/secret vars
  3. If only partial env exists, search 1Password metadata first.
  4. Prefer an item with fields matching:
    • TWILIO_ACCOUNT_SID
    • TWILIO_AUTH_TOKEN
    • optional TWILIO_FROM_NUMBER
  5. If op only sees a restricted vault, retry desktop-backed reads with env -u OP_SERVICE_ACCOUNT_TOKEN.
  6. Verify auth before any purchase/send:
bash
curl -sS -u "$TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN" \
  "https://api.twilio.com/2010-04-01/Accounts/$TWILIO_ACCOUNT_SID.json"

CLI Setup

Twilio CLI profile creation requires account auth token, not just API key creds:

bash
npx -y twilio-cli profiles:create "$TWILIO_ACCOUNT_SID" \
  --auth-token "$TWILIO_AUTH_TOKEN" \
  --profile default --force --silent
npx -y twilio-cli profiles:use default

Use npx -y twilio-cli when twilio is not installed.

Numbers

List owned:

bash
npx -y twilio-cli api:core:incoming-phone-numbers:list \
  --properties phoneNumber,friendlyName,capabilities

Search US local SMS-capable inventory:

bash
npx -y twilio-cli api:core:available-phone-numbers:local:list \
  --country-code US --sms-enabled --voice-enabled --limit 5

If the CLI shape is awkward or missing flags, use REST:

bash
curl -sS -u "$TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN" \
  "https://api.twilio.com/2010-04-01/Accounts/$TWILIO_ACCOUNT_SID/AvailablePhoneNumbers/US/Local.json?SmsEnabled=true&VoiceEnabled=true&PageSize=5"

Buy one candidate:

bash
curl -sS -u "$TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN" \
  -X POST "https://api.twilio.com/2010-04-01/Accounts/$TWILIO_ACCOUNT_SID/IncomingPhoneNumbers.json" \
  --data-urlencode "PhoneNumber=$PHONE_NUMBER"

Verify ownership/capabilities after purchase. Twilio JSON uses lowercase keys:

text
capabilities.sms
capabilities.mms
capabilities.voice

Mark numbers the user wants to keep:

bash
npx -y twilio-cli api:core:incoming-phone-numbers:update \
  --sid "$PHONE_NUMBER_SID" \
  --friendly-name "KEEP - <purpose>"

Retention rule: a number is kept while it remains in the Twilio account and billing is healthy. Do not release/delete unless explicitly asked.

SMS

Send:

bash
npx -y twilio-cli api:core:messages:create \
  --from "$FROM_NUMBER" \
  --to "$TO_NUMBER" \
  --body "$BODY" \
  -o json

Fetch status:

bash
npx -y twilio-cli api:core:messages:fetch --sid "$MESSAGE_SID" -o json

Check inbound to a number:

bash
npx -y twilio-cli api:core:messages:list \
  --to "$NUMBER" --limit 20 -o json

Check outbound from a number:

bash
npx -y twilio-cli api:core:messages:list \
  --from "$NUMBER" --limit 20 -o json

Twilio CLI JSON can return an array for single-resource commands. Parse defensively:

bash
jq 'if type=="array" then .[0] else . end'

Notes

  • International SMS may show an alphanumeric or carrier sender instead of the purchased US number.
  • US SMS can be compliance-gated. If sending to US recipients fails, check A2P/10DLC registration state before retrying blindly.
  • Trial accounts may restrict recipients.

© steipete, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/twilio-sms of steipete/agent-scripts.

  • SKILL.md
  • agents/openai.yaml

Open the folder on GitHubat commit 79150cf

Compare with similar skills

Twilio Sms next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Twilio Sms compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Twilio Sms this skillsteipete/agent-scripts7.3k—~1.1kAutomated safety check: PassMIT
PhoneBlockRunAI/ClawRouter6.6k—~2.4kAutomated safety check: PassMIT
Smscoreyhaines31/marketingskills54k1 repos~4.6kAutomated safety check: PassMIT
Breach Patternsbriiirussell/cybersecurity-skills413—~3.5kAutomated safety check: NotesMIT
Brigade Voice Callsspinabot/brigade11k—~288Automated safety check: PassMIT
Twilio Communicationsdavila7/claude-code-templates32k5 repos~2.3kAutomated safety check: PassMIT

Similar skills

  • Phone

    BlockRunAI/ClawRouter

    Verify phone numbers (carrier + SIM-swap fraud signals) and place AI-powered outbound voice calls via BlockRun's gateway (Twilio + Bland.ai).

    6.6k GitHub stars~2.4k tokensUpdated 4 days ago
    Auto-check passed
  • Sms

    coreyhaines31/marketingskills

    When the user wants to plan, build, or optimize SMS, MMS, or WhatsApp marketing — including welcome flows, abandoned cart texts, post-purchase, win-back, promotional sends, or transactional/auth SMS.

    54k GitHub starsUsed in 1 repo~4.6k tokens
    Marketing & SEOAuto-check passed
  • Breach Patterns

    briiirussell/cybersecurity-skills

    Learn from public breach disclosures — extract the audit question each one implies and check your own stack.

    413 GitHub stars~3.5k tokensUpdated 4 mo ago
    DatabasesAuto-check: notes
  • Brigade Voice Calls

    spinabot/brigade

    Starts and inspects phone calls through the Brigade voice-call plugin, using a CLI command or the voice_call tool, with Twilio, Telnyx, Plivo or a mock provider.

    11k GitHub stars~288 tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Twilio Communications

    davila7/claude-code-templates

    Build communication features with Twilio: SMS messaging, voice calls, WhatsApp Business API, and user verification (2FA).

    32k GitHub starsUsed in 5 repos~2.3k tokens
    Backend & APIsAuto-check passed
  • Voice Call

    trpc-group/trpc-agent-go

    Start voice calls via the OpenClaw voice-call plugin. An agent skill from trpc-group/trpc-agent-go.

    1.9k GitHub starsUsed in 4 repos~290 tokens
    Auto-check passed

More from steipete/agent-scripts

All 45 skills in this repo
  • Mac Fleet Maintenance

    steipete/agent-scripts

    Inventories and maintains a fleet of Macs from a desired-state file: package updates, repo and Xcode sync, and disk, backup and security health reports.

    7.3k GitHub stars~4.8k tokensUpdated 5 days ago
    Auto-check passed
  • Agent Transcript for PRs

    steipete/agent-scripts

    Finds a coding agent's session log, trims and redacts it, and inserts it into a GitHub PR or issue only when the user has asked for a transcript.

    7.3k GitHub starsUsed in 1 repo~698 tokens
    Auto-check passed
  • Parallels macOS VM Lab

    steipete/agent-scripts

    Uses a clean Parallels macOS VM to test GUI automation, TCC permission prompts and screenshot tools like Peekaboo, verifying results from outside the guest.

    7.3k GitHub stars~1.8k tokensUpdated 5 days ago
    Auto-check passed
  • ClawSweeper Status

    steipete/agent-scripts

    Reports ClawSweeper's status with a bundled script: workflow health, active workers, queue health and recently merged, reviewed, commented and closed items.

    7.3k GitHub stars~972 tokensUpdated 5 days ago
    Auto-check passed
  • GitHub Project Triage

    steipete/agent-scripts

    Produces maintainer-facing triage cards for a project's GitHub issues and pull requests, each with its URL, risk, test state, blockers and a next action.

    7.3k GitHub stars~4k tokensUpdated 5 days ago
    Auto-check passed
  • Nano Banana Image Generation

    steipete/agent-scripts

    Generates and edits images with Google's Nano Banana 2 (Gemini 3.1 Flash Image) through a uv script, with a draft-then-final workflow and sizes from 512 to 4K.

    7.3k GitHub stars~1.4k tokensUpdated 5 days ago
    Auto-check passed

Works with

Questions about Twilio Sms

What does Twilio Sms do?

Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing. Twilio Sms is an agent skill from steipete/agent-scripts. Twilio SMS CLI: buy/list/keep numbers, send/check messages, credential routing.

How do I install Twilio Sms in Claude Code?

Run `npx skills add steipete/agent-scripts --skill twilio-sms -a claude-code`. Or copy the skill folder (skills/twilio-sms in steipete/agent-scripts) into .claude/skills/twilio-sms in your project. Claude Code loads it when a task matches its description.

How do I install Twilio Sms in Codex?

Run `npx skills add steipete/agent-scripts --skill twilio-sms -a codex`. Or copy the skill folder (skills/twilio-sms in steipete/agent-scripts) into .agents/skills/twilio-sms in your project. Codex loads it when a task matches its description.

Can I use Twilio Sms in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add steipete/agent-scripts --skill twilio-sms -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/twilio-sms, .gemini/skills/twilio-sms, .github/skills/twilio-sms and .opencode/skills/twilio-sms in your project.

What does Twilio Sms need to run?

Going by SKILL.md and its folder, Twilio Sms needs the command-line tools its instructions call (npx, curl and jq) and credentials named TWILIO_AUTH_TOKEN and OP_SERVICE_ACCOUNT_TOKEN. Our summary lists: Node.js; A credential in OP_SERVICE_ACCOUNT_TOKEN; A credential in TWILIO_AUTH_TOKEN.

Does Twilio Sms access the network?

SKILL.md names 1 domain. In commands or code: api.twilio.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Twilio Sms safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Twilio Sms use?

Twilio Sms is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Twilio Sms use?

About 1.1k tokens (SKILL.md is roughly 4.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Twilio Sms?

Skills that share tags, products or a category with Twilio Sms: Phone (BlockRunAI/ClawRouter, 6.6k stars), Sms (coreyhaines31/marketingskills, 54k stars), Breach Patterns (briiirussell/cybersecurity-skills, 413 stars) and Brigade Voice Calls (spinabot/brigade, 11k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Twilio Sms?

steipete (a GitHub user) maintains it in steipete/agent-scripts, which has 7,313 GitHub stars. The repository holds 45 skills in this directory. The repository was last updated on October 4, 2026.

Source: steipete/agent-scripts on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.