sst
Assists with building and deploying full-stack serverless applications on AWS using SST. Use when defining Lambda functions, API Gateway routes, DynamoDB tables, S3 buckets, or deploying Next.js/Remix/Astro with SSR on AWS. Trigger words: sst, serverless stack, sst dev, sst deploy, aws lambda, sst ion, resource linking.
Usage
Getting Started
- Install the skill using the command above
- Open your AI coding agent (Claude Code, Codex, Gemini CLI, or Cursor)
- Reference the skill in your prompt
- The AI will use the skill's capabilities automatically
Example Prompts
- "Deploy the latest build to the staging environment and run smoke tests"
- "Check the CI pipeline status and summarize any recent failures"
Documentation
Overview
SST (Serverless Stack) is a framework for building and deploying full-stack applications on AWS with high-level constructs for Lambda, API Gateway, DynamoDB, S3, and frontend frameworks. It features live local development connected to real AWS services, type-safe resource linking, and zero-config TypeScript support.
Instructions
- When defining infrastructure, use
sst.config.tswith typed components likesst.aws.Function,sst.aws.Api,sst.aws.Bucket, andsst.aws.Dynamo. - When connecting resources, use the
linkproperty on Functions to automatically grant IAM permissions and inject environment variables, and access linked resources viaResource.Namein handlers. - When developing locally, use
sst devwhich runs Lambda locally with hot reload while connected to real AWS services (DynamoDB, S3, SQS), with support for VS Code breakpoint debugging. - When deploying, use
sst deploy --stage prodfor named stages,sst deploy --stage pr-${PR_NUMBER}for preview environments, andsst remove --stage devfor teardown. - When deploying frontends, use
sst.aws.Nextjs,sst.aws.Remix, orsst.aws.Astrocomponents for SSR on Lambda with static assets on S3 + CloudFront. - When managing secrets, use
sst secret set KEY valuefor encrypted, stage-specific secret storage. - When organizing code, keep handlers thin in
packages/functions/as orchestrators, and place business logic inpackages/core/.
Examples
Example 1: Build a serverless API with DynamoDB
User request: "Create a REST API on AWS with DynamoDB using SST"
Actions:
- Define DynamoDB table and API Gateway in
sst.config.ts - Link the table to API handler functions for automatic permissions
- Implement CRUD handlers accessing
Resource.MyTable.name - Run
sst devfor live local development against real AWS services
Output: A serverless REST API with type-safe resource access and live debugging.
Example 2: Deploy a Next.js app with preview environments
User request: "Deploy my Next.js app on AWS with per-PR preview environments"
Actions:
- Configure
sst.aws.Nextjscomponent with custom domain and linked resources - Set up CI to run
sst deploy --stage pr-${PR_NUMBER}for each pull request - Link backend resources (API, database) to the Next.js deployment
- Add cleanup step with
sst removewhen PR is closed
Output: A production Next.js deployment on AWS with isolated preview environments for each PR.
Guidelines
- Use
linkinstead of manual IAM policies; SST generates least-privilege permissions automatically. - Access linked resources via
Resource.Namein handlers; never hardcode table names or bucket ARNs. - Use
sst devfor daily development; it is faster than deploying to AWS on every change. - Create per-developer stages (
sst dev --stage alice) so each developer gets isolated AWS resources. - Keep handlers thin: business logic in
packages/core/, handlers inpackages/functions/. - Use
sst secretfor API keys and credentials; they are encrypted and stage-specific. - Set up
sst deploy --stage pr-${PR_NUMBER}in CI for preview environments on every pull request.
Information
- Version
- 1.0.0
- Author
- terminal-skills
- Category
- DevOps
- License
- Apache-2.0