SMS Gateway

ReviewAudited by ClawScan on May 10, 2026.

Overview

This is a coherent SMS gateway skill with clear allowlist controls, but it can send/read real texts and its setup uses a privileged remote installer.

Install only if you trust and have reviewed the SMS Gateway service setup, protect the API key, customize the allowlist before use, and confirm recipients/message text before sending SMS.

Findings (5)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

If invoked, the agent can send a text message to an allowlisted phone number, which may incur carrier costs or contact someone as the user.

Why it was flagged

The script sends real SMS messages through the configured gateway API. This matches the skill purpose and is constrained by an allowlist, but it is still an external communication action.

Skill content
-X POST "${SMS_GATEWAY_URL}/api/v1/sms/send"
Recommendation

Keep the allowlist small and review the exact recipient and message body before asking the agent to send texts.

What this means

Checking the inbox can change message status, so messages may no longer appear unread afterward.

Why it was flagged

After displaying unread messages, the receive script marks them as read. SKILL.md also discloses this behavior.

Skill content
curl -s -X PUT "${SMS_GATEWAY_URL}/api/v1/sms/${ID}/read"
Recommendation

Only run inbox checks when marking displayed unread messages as read is acceptable, or add a no-mark-read option if that workflow is needed.

What this means

Anyone with the gateway API key could potentially send or read SMS through the configured gateway.

Why it was flagged

The scripts require an API key for the SMS Gateway and later send it in the X-API-Key header. This is expected for the integration, and the artifacts do not show leakage to unrelated destinations.

Skill content
SMS_GATEWAY_API_KEY="${SMS_GATEWAY_API_KEY:-}"
Recommendation

Store the .env file securely, restrict file permissions, rotate the key if exposed, and prefer binding the gateway to localhost or a trusted network.

What this means

Following the setup gives the remote installer root-level authority on the device and installs a persistent service.

Why it was flagged

The documented gateway setup pulls an unpinned remote script from GitHub and runs it with sudo. It is a disclosed, user-directed prerequisite, but the installer code is outside the supplied artifacts.

Skill content
curl -fsSL https://raw.githubusercontent.com/mattboston/sms-gateway/main/install.sh | sudo bash
Recommendation

Inspect the install script first, prefer a pinned release or manual install, and run the gateway on a dedicated or low-risk machine where possible.

What this means

Private SMS content may be shown to the agent, and message text from other people could contain instructions or misleading content.

Why it was flagged

Inbound SMS bodies and phone numbers are brought into the agent's context. The default allowlist reduces exposure, but the -a option can include non-allowlisted senders.

Skill content
The script displays each message with its timestamp, sender number, status, body, and ID.
Recommendation

Treat SMS bodies as untrusted external text, avoid using the -a option unless needed, and do not let received messages override the user's instructions without confirmation.