Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/ziniman/ai-instruct/aws-spa-deploynpx skills add ziniman/ai-instruct --skill aws-spa-deploygit clone --depth 1 https://github.com/ziniman/ai-instructWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/ziniman/ai-instruct/aws-spa-deploy)<a href="https://agentmods.dev/skills/ziniman/ai-instruct/aws-spa-deploy"><img src="https://agentmods.dev/badge/skills/ziniman/ai-instruct/aws-spa-deploy.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00110 | $0.03718 |
| Opus 5 | $0.00055 | $0.01859 |
| Sonnet 5 | $0.00022 | $0.00744 |
| Haiku 4.5 | $0.00011 | $0.00372 |
Grade A, and why
aws-spa-deploy scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 331 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Deploying a Static SPA on AWS
Applies to: React/Vite SPAs on AWS (Amplify + CDK) | Updated: February 2026
A focused guide for deploying a React/Vite single-page app on AWS with optional API backend using CDK (Cloud Development Kit). Covers Amplify hosting, Lambda + API Gateway, and SES email.
Contents
- Before you start
- Architecture
- Costs at a glance
- Amplify Hosting
- CDK Backend
- SES Email
- Common problems
Before you start
Answer these questions before generating any code. Each has a default assumption - confirm or override before proceeding.
Q: Do you need a backend API, or is this a static site with no server logic? Default: static only - if yes, skip the entire CDK section.
Q: Do you have a custom domain name you want to use? Default: no - skip the domain and SSL subsections.
Q: What is your target AWS region, and does it match your default AWS CLI region?
Default: us-east-1. Check with aws configure get region. If they differ, pass --region explicitly to every CLI command and use the explicit bootstrap form (see CDK section).
Q: Do you need to send emails from the site (contact forms, notifications)? Default: no - skip the SES section entirely.
Q: Is this a brand new AWS account? Default: no (existing account). If new: SES starts in sandbox mode (can only send to verified addresses), and CDK bootstrap is required before any deploy.
Q: What is the expected traffic? Default: low (a few visitors per day) - free tier covers this entirely. See cost table below.
AI assistant: If the user only needs static hosting, generate only the Amplify Hosting section. Only include CDK/Lambda/SES content if they confirm they need a backend.
Architecture
Static Site (Amplify = S3 + CloudFront)
|
+--> API Gateway (HTTP API) --> Lambda --> SES / DynamoDB / etc.
OR
+--> Lambda Function URL --> Lambda --> SES / DynamoDB / etc.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 331 lines · 110 tokens per session scan A f46269634f66
aws-spa-deploy is a skill published in the GitHub repository ziniman/ai-instruct (28 stars, last pushed 3mo ago), licensed Apache-2.0. It adds 110 tokens to every session and 3,718 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
chrome-ext-ui-react
This skill should be used when building React UI for Chrome extensions or when the user asks about UI patterns in extensions. Trigger when: "React in extension", "extension popup React", "side panel React", "Shadow DOM React", "content script UI", "createShadowRootUi", "extension accessibility", "rem to px extension"…
terraform-bumping-terraform
Use when Terraform or OpenTofu provider constraints, CLI pins, or lockfiles are stale across repository root modules.
latchbio-integration
Build, register, debug, and operate bioinformatics workflows on Latch using the Python SDK, CLI, Latch Data and Registry, Nextflow, Snakemake, programmatic execution, and Latch MCP. Use when authoring or deploying Latch workflows, configuring resources or interfaces, moving data, integrating Registry, or launching and…
cloud-architect
Designs cloud architectures, creates migration plans, generates cost optimization recommendations, and produces disaster recovery strategies across AWS, Azure, and GCP. Use when designing cloud architectures, planning migrations, or optimizing multi-cloud deployments. Invoke for Well-Architected Framework, cost…
django-storages-s3
Use when configuring Django to store static and media files on AWS S3 with django-storages. Invoke when working with the STORAGES setting, S3 buckets, presigned URLs, CloudFront, or boto3-backed file storage in settings.py. Configures the Django 4.2+ STORAGES dict, public/private custom backends, presigned GET/POST…
extract-source-sample
Given the path to a finished content-goose ad-run folder, extract everything that defines that ad — recipe shot list, VO script, characters, voices, world, atom-skills, master mp4 — and emit a source-sample.json in the exact shape the upload-ad-sample skill writes to the Goose Ads library. Also links every character…