Skills & Workflows
Claude Code skills for creating, validating, and deploying sequences.
Claude Code skills are structured prompts that guide Claude through multi-step workflows. They turn complex operations into single commands.
Available skills
/setup-env
Interactive wizard that configures the .env file by discovering real AWS resources.
/setup-envWhat it does:
- Lists AWS profiles, lets you pick one
- Queries STS for account ID and region
- Discovers verified SES identities (domains and email addresses)
- Walks you through choosing sender details
- Discovers existing SES configuration sets
- Generates resource names from a prefix
- Generates a random HMAC secret for unsubscribe tokens
- Writes the
.envfile - Verifies the output
When to use: First-time setup, switching AWS accounts, or reconfiguring sender details.
/create-sequence
Generates a complete email sequence from a natural language description.
/create-sequence A trial expiring sequence triggered by trial.expiring — send a
"trial ending soon" email immediately, then a "last chance" email after 2 days,
then a "trial expired" email after 3 more daysWhat it generates:
sequences/<sequenceId>/sequence.config.ts— Step definitionssequences/<sequenceId>/src/emails/*.tsx— React Email templatessequences/<sequenceId>/src/render.ts— Build scriptsequences/<sequenceId>/package.jsonandtsconfig.json
What you don't need to edit:
- No CDK changes needed. The CDK auto-discovers sequences from
sequences/*/sequence.config.tsat deploy time.
Step types it supports:
send— Email with template and subjectwait— Delay (days, hours, minutes)choice— Branch on subscriber attributes (native Step Functions)condition— Lambda-based DynamoDB check (has_been_sent, field_exists, field_equals)events— Fire-and-forget emails triggered during the sequence
/validate-sequence
Validates a sequence config is correct and deployable.
/validate-sequence # validates all sequences
/validate-sequence onboarding # validates oneValidation checks (in order):
- Config file exists
- Required fields present (id, trigger, timeoutMinutes, steps)
- All steps valid (type-specific validation, recursive through branches)
- Collects all templateKeys
- Verifies template HTML files exist in
build/ - TypeCheck passes (
pnpm --filter @mailshot/cdk typecheck) - CDK synth succeeds
Stops at the first failure with a clear error message and file path.
/deploy
Full deployment pipeline with validation, build, and deploy.
/deployPhases:
- Validate all sequences (
/validate-sequence) - Build shared package
- Build all sequences (render templates to HTML)
- Generate Mermaid diagrams
- Verify all template HTML files exist
- Build CDK
- CDK synth
- Show build artifacts and ask for confirmation
cdk deployto AWS- Report stack outputs
Always asks for confirmation before the actual deploy step.
The AI-native workflow
These skills, combined with the MCP server, enable a complete AI-driven email operations workflow:
Describe a sequence in English
│
▼
/create-sequence ──→ generates all code
│
▼
/validate-sequence ──→ catches errors before deploy
│
▼
/deploy ──→ builds, verifies, deploys to AWS
│
▼
MCP tools ──→ manage subscribers, query engagement, preview templatesNo code editor needed. No AWS console needed. No email SaaS dashboard needed. You describe what you want, Claude generates the code, validates it, deploys it, and then manages it — all through conversation.
How skills work
Skills are markdown files in .claude/skills/. Each contains:
- A description of what the skill does
- Step-by-step instructions for Claude to follow
- File templates and validation rules
When you type /create-sequence, Claude Code loads the skill's SKILL.md and follows the instructions as a structured workflow. The skill provides the domain knowledge (file structure, types, conventions) so Claude can generate correct code without you knowing the framework internals.