Communitygithub.com

sst

SST(Serverless Stack)를 사용하여 AWS에서 풀스택 서버리스 애플리케이션을 구축하고 배포합니다. Lambda 함수, API Gateway 라우트, DynamoDB 테이블, S3 버킷을 정의하거나 Next.js/Remix/Astro를 AWS에 SSR로 배포할 때 사용됩니다.

sst란 무엇인가요?

이 기술은 SST(Serverless Stack) 프레임워크를 사용하여 AWS에서 풀스택 서버리스 애플리케이션을 구축하고 배포하는 방법을 설명합니다. SST는 Lambda, API Gateway, DynamoDB, S3, 그리고 다양한 프론트엔드 프레임워크를 위한 고수준 추상화를 제공하여 인프라를 코드로 정의하고 관리할 수 있게 해줍니다. 주요 특징으로는 실제 AWS 서비스에 연결된 로컬 개발 환경('sst dev'), 타입에 안전한 리소스 연결(link), 그리고 별도의 추가 설정 없이 TypeScript를 지원합니다. 다양한 플랫폼(Claude Code, Cursor, Codex)과 호환되며, 개발자는 SST의 명령줄 도구와 구성 파일을 통해 생산성을 극대화할 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/TerminalSkills/skills/tree/HEAD/skills/sst

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

sst은(는) 무엇을 하나요?

개요

SST(Serverless Stack)는 Lambda, API Gateway, DynamoDB, S3 및 프론트엔드 프레임워크를 위한 고급 추상화를 제공하여 AWS에서 풀스택 애플리케이션을 구축하고 배포하기 위한 프레임워크입니다. 실제 AWS 서비스에 연결된 로컬 개발 환경, 타입에 안전한 리소스 연결, 제로 구성 TypeScript 지원이 특징입니다.

사용 방법

  • 인프라를 정의할 때는 sst.config.ts를 사용하며, sst.aws.Function, sst.aws.Api, sst.aws.Bucket, sst.aws.Dynamo와 같은 타입 기반 컴포넌트를 사용합니다.
  • 리소스를 연결할 때는 함수에 link 속성을 사용하여 IAM 권한을 자동으로 부여하고 환경 변수를 주입하며, 핸들러에서 Resource.Name을 통해 연결된 리소스에 접근합니다.
  • 로컬 개발 시에는 sst dev를 사용하는데, 이는 Lambda를 로컬에서 핫 리로드로 실행하면서 실제 AWS 서비스(DynamoDB, S3, SQS)에 연결하여 VS Code 중단점 디버깅을 지원합니다.
  • 배포 시에는 프로덕션 스테이지에 sst deploy --stage prod를, 프리뷰 환경에 sst deploy --stage pr-${PR_NUMBER}를, 제거 시에는 sst remove --stage dev를 사용합니다.
  • 프론트엔드 배포 시에는 sst.aws.Nextjs, sst.aws.Remix, 또는 sst.aws.Astro 컴포넌트를 사용하여 Lambda에서 SSR을 수행하고 정적 자산은 S3 + CloudFront에 배포합니다.
  • 시크릿 관리 시에는 sst secret set KEY value를 사용하여 암호화되고 스테이지별로 격리된 시크릿을 저장합니다.
  • 코드 구성 시, packages/functions/의 핸들러를 얇게 유지하여 오케스트레이터 역할을 하고 비즈니스 로직은 packages/core/에 배치합니다.

예시

예시 1: DynamoDB를 사용한 서버리스 API 구축

사용자 요청: "SST를 사용하여 AWS에 DynamoDB를 포함한 REST API를 만들어 주세요"

수행 단계:

  1. sst.config.ts에서 DynamoDB 테이블과 API Gateway를 정의합니다.
  2. 테이블을 API 핸들러 함수에 link하여 자동 권한을 부여합니다.
  3. Resource.MyTable.name에 접근하는 CRUD 핸들러를 구현합니다.
  4. sst dev를 실행하여 실제 AWS 서비스에 연결된 로컬 개발 환경에서 개발합니다.

결과: 타입 안전한 리소스 접근과 실시간 디버깅이 가능한 서버리스 REST API가 생성됩니다.

예시 2: 프리뷰 환경을 갖춘 Next.js 앱 배포

사용자 요청: "AWS에 PR별 프리뷰 환경을 포함하여 내 Next.js 앱을 배포해 주세요"

수행 단계:

  1. 사용자 정의 도메인과 연결된 리소스를 가지는 sst.aws.Nextjs 컴포넌트를 구성합니다.
  2. 각 풀 리퀘스트마다 sst deploy --stage pr-${PR_NUMBER}를 실행하도록 CI를 설정합니다.
  3. 백엔드 리소스(API, 데이터베이스)를 Next.js 배포에 연결합니다.
  4. PR이 닫힐 때 sst remove로 정리하는 단계를 추가합니다.

결과: 각 PR에 대해 격리된 프리뷰 환경을 갖춘 프로덕션 Next.js 배포가 AWS에 생성됩니다.

지침

  • 수동 IAM 정책 대신 link를 사용하십시오. SST가 자동으로 최소 권한 권한을 생성합니다.
  • 핸들러에서 Resource.Name을 통해 연결된 리소스에 접근하십시오. 테이블 이름이나 버킷 ARN을 하드코딩하지 마십시오.
  • 일상적인 개발에는 sst dev를 사용하십시오. AWS에 매번 배포하는 것보다 훨씬 빠릅니다.
  • 개발자별 스테이지(sst dev --stage alice)를 생성하여 각 개발자가 격리된 AWS 리소스를 사용할 수 있도록 하십시오.
  • 핸들러는 얇게 유지하십시오: 비즈니스 로직은 packages/core/, 핸들러는 packages/functions/에 배치하십시오.
  • API 키와 자격 증명에는 sst secret을 사용하십시오. 이들은 암호화되고 스테이지별로 격리됩니다.
  • CI에서 sst deploy --stage pr-${PR_NUMBER}를 설정하여 모든 풀 리퀘스트에 대해 프리뷰 환경을 구성하십시오.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

TerminalSkills/skills

>- Run GitHub Actions locally with act. Use when a user asks to test GitHub Actions workflows locally, debug CI pipelines without pushing, or run workflows offline.

TerminalSkills/skills

>- You are an expert in AG2 (formerly AutoGen), the open-source multi-agent conversation framework. You help developers build systems where multiple AI agents collaborate through structured conversations — with tool use, human-in-the-loop, code execution, group chat orchestration, and nested conversations — for complex tasks like software development, research, and data analysis.

TerminalSkills/skills

>- Generate short-form videos with AI — script writing, text-to-speech narration, stock footage selection, subtitle generation, and video assembly. Use when: creating TikTok/YouTube Shorts/Reels content, automating video production, building content pipelines.

TerminalSkills/skills

>- Animate 3D objects and characters in Blender with Python. Use when the user wants to keyframe properties, create armatures and rigs, set up IK/FK chains, animate shape keys for facial animation, edit F-Curves, use the NLA editor to blend actions, add drivers for expression-based animation, or script any animation workflow in Blender.

TerminalSkills/skills

>- Automate motion capture and tracking workflows in Blender with Python. Use when the user wants to import BVH or FBX mocap data, retarget motion to armatures, track camera or object motion from video, solve camera motion, clean up motion capture data, or script any tracking pipeline in Blender.

TerminalSkills/skills

>- You are an expert in Bolt.new by StackBlitz, the AI-powered full-stack development environment that runs entirely in the browser. You help developers go from idea to deployed app in minutes using natural language prompts — Bolt generates complete applications with frontend, backend, database, and deployment, all running in a WebContainer without local setup.

TerminalSkills/skills

>- Assists with using Bun as an all-in-one JavaScript/TypeScript runtime, package manager, bundler, and test runner. Use when building HTTP servers, managing packages, running tests, or migrating from Node.js. Trigger words: bun, bun serve, bun install, bun test, bun build, javascript runtime, bun runtime.

TerminalSkills/skills

>- Self-host customer support with Chatwoot. Use when a user asks to set up open-source customer support, add live chat without SaaS costs, build a multi-channel inbox, or deploy a free Intercom alternative.

TerminalSkills/skills

>- You are an expert in Chi, the lightweight, idiomatic Go HTTP router built on `net/http`. You help developers build composable HTTP services using Chi's middleware stack, route groups, URL parameters, sub-routers, and context-based request scoping — providing Express-like ergonomics while staying 100% compatible with Go's standard library.

TerminalSkills/skills

When the user wants to edit, review, or improve existing marketing copy. Also use when the user mentions 'edit this copy,' 'review my copy,' 'copy feedback,' 'proofread,' 'polish this,' 'make this better,' or 'copy sweep.' This skill provides a systematic approach to editing marketing copy through multiple focused passes.

TerminalSkills/skills

>- Add live chat and customer support with Crisp. Use when a user asks to add a chat widget, implement live customer support, set up a help desk, create a knowledge base, or add a chatbot to a website.

TerminalSkills/skills

>- Assists with building custom interactive data visualizations using D3.js. Use when creating charts, graphs, maps, force layouts, or hierarchical diagrams that require fine-grained control beyond what charting libraries provide. Trigger words: d3, data visualization, chart, svg, scales, force graph, treemap, choropleth.

TerminalSkills/skills

dbt (data build tool) transforms data in your warehouse using SQL SELECT statements. Learn project setup, models, tests, documentation, incremental materializations, and integration with data warehouses like PostgreSQL, BigQuery, and Snowflake.

TerminalSkills/skills

>- You are an expert in dlt, the open-source Python library for building data pipelines. You help developers load data from any API, file, or database into warehouses and lakes using simple Python decorators — with automatic schema inference, incremental loading, and built-in data contracts. dlt is the "requests library for data pipelines.

TerminalSkills/skills

Data Version Control for ML projects. Track large datasets and models alongside Git, build reproducible ML pipelines, and run experiments with metric comparison. Works with any storage backend including S3, GCS, Azure, and local filesystems.

TerminalSkills/skills

>- You are an expert in E2B, the cloud platform for running AI-generated code in secure sandboxes. You help developers give AI agents the ability to execute code, install packages, read/write files, and run long processes in isolated cloud environments — each sandbox is a lightweight VM that boots in ~150ms with full Linux, filesystem, and networking.

TerminalSkills/skills

>- Transcode, convert, edit, and process audio and video with FFmpeg. Use when a user asks to convert video formats (webm to mp4, mkv to mp4), extract audio from video, compress video files, trim or cut clips, concatenate videos, add subtitles, create thumbnails, apply filters, change resolution or bitrate, re-encode media, create GIFs from video, add watermarks, normalize audio, stream media, or build automated media processing pipelines.

TerminalSkills/skills

>- Create advanced animations with GSAP. Use when building complex timelines, scroll-driven animations, SVG morphing, text animations, or high-performance web animations beyond CSS capabilities.

TerminalSkills/skills

>- Generate deterministic MP4 videos from HTML, CSS, media, and seekable animations using HeyGen's HyperFrames framework. Use when someone asks to "render HTML to video", "make a video with HyperFrames", "create a programmatic video", "turn an animation into MP4", "build a launch/product video from HTML", "render GSAP/Lottie/Three.js to video", or set up an agent-driven video pipeline. Covers init/preview/render/add/lint/inspect commands, data-* timing attributes, animation adapters, and the component catalog.

TerminalSkills/skills

When the user wants to perform load testing, stress testing, or performance testing of APIs and websites using k6. Also use when the user mentions "k6," "load test," "performance test," "stress test," "spike test," "soak test," "thresholds," "virtual users," or "VUs." For browser-based testing, see selenium.

관련 스킬