Production-grade agent skills for SMS, WhatsApp, and RCS builders on Sent.
A Claude Code plugin that packages domain skills for the messy parts of running multi-channel business messaging on Sent — SMS 10DLC/TCR registration, WhatsApp template authoring and classification, RCS RBM agent onboarding, delivery-report analysis, multi-tenant Sender Profile architecture, the tenant template-builder UI, and Meta Embedded Signup.
Seven domain skills, matching slash commands, and the references they cite — packaged as an installable Claude Code plugin. Each skill encodes the decisions a senior messaging engineer makes in their head so an agent (Claude, Cursor, Gemini CLI, OpenCode, …) follows the same playbook consistently across all three channels Sent supports.
These skills are product-domain, not engineering-lifecycle. They compose cleanly with general engineering skills (e.g. addyosmani/agent-skills) — install both for full coverage.
| Skill | Channel | Use it when… | Slash command |
|---|---|---|---|
sender-profile-architect |
all | Designing tenancy around Sender Profiles; webhook routing; rate limits across channels | /sender-plan |
messaging-performance-analyzer |
all | Investigating a delivery drop; finding the leak in a sales funnel across SMS/WhatsApp/RCS | /mdr-analyze |
sms-10dlc-registration |
SMS | Registering a brand + campaign with The Campaign Registry; debugging a TCR rejection | /sms-register |
waba-template-author |
Drafting a template; classifying utility vs marketing; investigating a rejection | /waba-template |
|
waba-embedded-signup |
Integrating Meta Embedded Signup; debugging a stuck signup | /waba-auth |
|
rcs-agent-onboarding |
RCS | Creating + verifying an RBM agent with Google; defining agent capabilities + fallback | /rcs-onboard |
template-builder-ui |
Building the tenant-facing template editor; live preview; submission feedback | /template-ui |
Plus /sent — a meta dispatcher that lists the skills and routes by intent.
| Slash command | Skill |
|---|---|
/mdr-analyze |
messaging-performance-analyzer |
/rcs-onboard |
rcs-agent-onboarding |
/sender-plan |
sender-profile-architect |
/sms-register |
sms-10dlc-registration |
/template-ui |
template-builder-ui |
/waba-auth |
waba-embedded-signup |
/waba-template |
waba-template-author |
/sent |
sent (meta-dispatcher) |
/plugin marketplace add sentdm/agent-skills
/plugin install sent-skills@sent-skillsIf marketplace clone fails due to SSH config, use the explicit HTTPS form:
/plugin marketplace add https://github.com/sentdm/agent-skills.git /plugin install sent-skills@sent-skills
git clone https://github.com/sentdm/agent-skills.git ~/dev/sent-agent-skills
# In Claude Code:
/plugin marketplace add file:///Users/$USER/dev/sent-agent-skills
/plugin install sent-skills@sent-skills# Zip an individual skill from the repo
cd skills && zip -r waba-template-author.zip waba-template-author/
# Then upload the .zip in claude.ai → Settings → Features → SkillsRepeat for each skill you want available.
In a fresh session:
- Run
/sent— the dispatcher should list every skill. - Ask "How do I classify a shipping-update template?" — the
waba-template-authorskill should auto-activate. - Ask "How do I register a 10DLC campaign?" — the
sms-10dlc-registrationskill should auto-activate.
Skills are loaded by progressive disclosure (spec):
- Discovery — at startup, only the skill
name+descriptionis in context (~100 tokens each). - Activation — when your request matches a skill's triggers, its
SKILL.mdbody loads (under ~5k tokens). - Resources — referenced files (
references/*.md) load only when the skill cites them.
This is why each skill's description aggressively includes trigger phrases — that's what the agent matches against.
See CONTRIBUTING.md for the quality bar and docs/skill-anatomy.md for the format.
In short:
- One directory per skill under
skills/<kebab-case-name>/ - One required file:
SKILL.mdwithname+descriptionfrontmatter - Description ≤ 1024 chars and must include both what + when
- Body ≤ 500 lines; push detail into
references/ - Run
bash scripts/validate-skills.shbefore opening a PR
.claude-plugin/ Plugin + marketplace manifests
.claude/commands/ Slash command shims
skills/ Seven domain skills (one SKILL.md per directory)
<name>/
├── SKILL.md
├── references/ ← per-skill reference docs
└── scripts/ ← per-skill executable utilities (Python, stdlib only)
references/ Cross-cutting only (currently: sent-glossary.md)
docs/ Authoring + setup guides
scripts/ Repo tooling (skill validator)
.github/ Issue + PR templates, validate-skills workflow
Each skill directory is self-contained, so it can be zipped and uploaded to claude.ai as a standalone bundle.
Every skill follows the open Agent Skills format and works across any compatible agent — Claude Code, Cursor, Gemini CLI, OpenCode, and others. See AGENTS.md for cross-tool guidance.
MIT — see LICENSE.
Pull requests welcome. Start with CONTRIBUTING.md. Bugs and proposals go in Issues.