[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-aws-labs-bedrock":3,"mdc--db7n1x-key":37,"related-org-aws-labs-bedrock":1413,"related-repo-aws-labs-bedrock":1593},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":26,"repoUrl":27,"updatedAt":28,"license":29,"forks":30,"topics":31,"repo":32,"sourceUrl":35,"mdContent":36},"bedrock","build applications with Amazon Bedrock","Deep-dive into Amazon Bedrock — model selection, agents, knowledge bases, guardrails, prompt engineering, and cost modeling. This skill should be used when the user asks to \"build with Bedrock\", \"select a Bedrock model\", \"design a Bedrock agent\", \"set up a knowledge base\", \"configure guardrails\", \"estimate Bedrock costs\", \"optimize Bedrock pricing\", \"use prompt caching\", \"compare Bedrock models\", or mentions Amazon Bedrock, foundation models, RAG on AWS, or generative AI on AWS.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"aws-labs","AWS Labs","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Faws-labs.png","awslabs",[13,17,20,23],{"name":14,"slug":15,"type":16},"LLM","llm","tag",{"name":18,"slug":19,"type":16},"Agents","agents",{"name":21,"slug":22,"type":16},"AI Infrastructure","ai-infrastructure",{"name":24,"slug":25,"type":16},"AWS","aws",14,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fstartups","2026-07-12T08:40:07.320518",null,15,[],{"repoUrl":27,"stars":26,"forks":30,"topics":33,"description":34},[],"Official AWS Startups repository that hosts plugins, skills, tools and resources to support startup builders on AWS","https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fstartups\u002Ftree\u002FHEAD\u002Fsolution-architecture\u002Fplugins\u002Faws-dev-toolkit\u002Fskills\u002Fbedrock","---\nname: bedrock\ndescription: Deep-dive into Amazon Bedrock — model selection, agents, knowledge bases, guardrails, prompt engineering, and cost modeling. This skill should be used when the user asks to \"build with Bedrock\", \"select a Bedrock model\", \"design a Bedrock agent\", \"set up a knowledge base\", \"configure guardrails\", \"estimate Bedrock costs\", \"optimize Bedrock pricing\", \"use prompt caching\", \"compare Bedrock models\", or mentions Amazon Bedrock, foundation models, RAG on AWS, or generative AI on AWS.\n---\n\nSpecialist guidance for Amazon Bedrock. Covers model selection, agent design, knowledge bases, guardrails, prompt engineering, batch inference, and cost optimization.\n\n## Process\n\n1. Understand the workload: what is being built, who consumes it, and what quality bar is required\n2. Use the `awsknowledge` MCP tools (`mcp__plugin_aws-dev-toolkit_awsknowledge__aws___search_documentation`, `mcp__plugin_aws-dev-toolkit_awsknowledge__aws___read_documentation`, `mcp__plugin_aws-dev-toolkit_awsknowledge__aws___recommend`) to verify current Bedrock model availability, pricing, and features (these change frequently)\n3. Select the right model(s) based on task complexity, latency, and cost\n4. Design the architecture: direct invocation, RAG, agent, or multi-agent\n5. Configure guardrails for user-facing surfaces\n6. Estimate costs using the `references\u002Fcost-modeling.md` template\n7. Recommend monitoring and cost controls\n\n## Model Selection\n\nThe model choice is the single biggest cost and quality decision. Get this right first.\n\n| Need                                  | Recommended Model          | Why                                                   |\n| ------------------------------------- | -------------------------- | ----------------------------------------------------- |\n| Classification, routing, extraction   | Nova Micro or Claude Haiku | Fast, cheap, accurate for structured tasks            |\n| General Q&A, summarization            | Nova Lite or Nova Pro      | Strong quality-to-cost ratio                          |\n| Multimodal (image + text)             | Nova Lite                  | Cost-effective vision without Sonnet pricing          |\n| Complex reasoning, nuanced generation | Claude Sonnet              | Best balance of capability and cost                   |\n| Hardest problems, highest quality bar | Claude Opus                | Reserve for tasks where Sonnet falls short            |\n| Embeddings                            | Titan Embed v2             | Cheaper than Cohere, solid quality for most use cases |\n| Code generation                       | Claude Sonnet              | Strong code quality without Opus pricing              |\n\n**Note**: Model availability and pricing change frequently. Verify current options via `awsknowledge` MCP tools (`mcp__plugin_aws-dev-toolkit_awsknowledge__aws___search_documentation`, `mcp__plugin_aws-dev-toolkit_awsknowledge__aws___read_documentation`, `mcp__plugin_aws-dev-toolkit_awsknowledge__aws___recommend`) before making final recommendations.\n\n### Model Selection Principles\n\n- Start with the smallest model that could work. Upgrade only when evidence shows it falls short.\n- Benchmark on real data, not generic benchmarks. A smaller well-prompted model often beats a larger general one.\n- Use Bedrock's intelligent prompt routing to auto-route requests to the right model tier.\n- Evaluate the Nova family before defaulting to third-party models — Nova Pro offers comparable quality to Claude Sonnet for many tasks at significantly lower cost per token, and Nova Lite\u002FMicro provide sub-100ms latency for classification and routing tasks where you don't need full reasoning capability. Nova models also have no cross-provider data transfer fees and deeper native Bedrock integration (Guardrails, Knowledge Bases, Flows).\n\n## Bedrock Agents\n\n### Design Principles\n\n- One agent, one job. If the agent description contains \"and\", consider splitting.\n- Fewer tools = fewer reasoning steps = faster + cheaper. 3-5 tools is the sweet spot.\n- Use direct `InvokeModel` for simple tasks. Not everything needs an agent.\n\n### Architecture Patterns\n\n**Router + Specialists**: A lightweight classifier (Nova Micro) routes to specialized agents. Each specialist has a focused tool set and optimized prompt. This beats one mega-agent with 20 tools.\n\n**Knowledge Base + Guardrails**: For customer-facing Q&A — KB for retrieval, guardrails for safety, single model call for generation. No agent orchestration needed; use `RetrieveAndGenerate` API directly.\n\n**Agent with Session Memory**: For multi-turn conversations — use AgentCore sessions with memory. Let the agent maintain context across turns instead of stuffing history into the prompt each time.\n\n### Action Groups\n\n- Use Lambda-backed action groups for complex logic\n- Use Return Control for client-side tool execution (keeps agent stateless, avoids Lambda cost)\n- Define OpenAPI schemas tightly — vague schemas cause the model to guess (and guess wrong)\n\n## Knowledge Bases\n\n### Chunking Strategy\n\n- **Fixed-size chunking** (default): Good starting point. 300-500 tokens with 10-20% overlap.\n- **Semantic chunking**: Better quality, higher embedding cost. Use for high-value, heterogeneous documents.\n- **Hierarchical chunking**: Best for long documents with clear structure (manuals, legal docs).\n- Curate the data source — garbage in, garbage out applies doubly to RAG.\n\n### Vector Store Selection\n\n- **OpenSearch Serverless**: Default choice. Managed, scales, integrates natively. See `references\u002Fcost-modeling.md` for minimum costs.\n- **Aurora PostgreSQL (pgvector)**: Good if already running Aurora — consolidates infrastructure.\n- **Pinecone \u002F Redis**: If existing investments in these stores.\n- For PoCs, share a single OpenSearch Serverless collection across multiple KBs to minimize cost.\n\n### Retrieval Tuning\n\n- Start with hybrid search (semantic + keyword) — outperforms pure semantic for most workloads\n- Tune retrieved chunk count (default 5). More chunks = more context = more input tokens. Find the minimum that gives good answers.\n- Use metadata filtering to scope retrieval — avoid searching everything when the document category is known.\n\n## Prompt Engineering on Bedrock\n\n### Prompt Caching\n\n- Bedrock caches repeated system prompts automatically for supported models\n- Structure prompts: long, stable system prompt + short, variable user prompt\n- Cached input tokens are up to 90% cheaper — structure prompts to maximize cache hits\n\n### Prompt Management\n\n- Use Bedrock's Prompt Management to version and manage prompts\n- Treat prompts like code — version them, test them, review changes\n- Use prompt variables for dynamic content instead of string concatenation\n\n### Structured Output\n\n- Request JSON with explicit schemas to reduce output token waste\n- Use the Converse API with tool use for structured extraction — more reliable than asking for JSON in the prompt\n\n## Batch Inference\n\n- 50% cheaper than on-demand for supported models\n- Use for: document processing, bulk classification, dataset enrichment, eval runs\n- Not for: real-time user-facing requests (latency is minutes to hours)\n- Submit jobs via S3 input\u002Foutput — fits naturally into data pipelines\n\n## Guardrails\n\n- Apply to user-facing inputs and outputs. Skip for internal agent reasoning steps.\n- Content filters are cheaper than denied topic policies — use filters for broad categories, denied topics for specific restrictions.\n- Contextual grounding checks catch hallucination at inference time — useful for RAG apps.\n- PII detection\u002Fredaction is built in — use it instead of building custom regex.\n\n## Diagnostic CLI Commands\n\nResource creation belongs in IaC. Use the `iac-scaffold` skill for templates.\n\n```bash\n# List available models in the region\naws bedrock list-foundation-models \\\n  --query 'modelSummaries[].{id:modelId,name:modelName,provider:providerName}' --output table\n\n# Quick model test (Converse API — preferred over invoke-model)\naws bedrock-runtime converse \\\n  --model-id amazon.nova-micro-v1:0 \\\n  --messages '[{\"role\":\"user\",\"content\":[{\"text\":\"Hello\"}]}]'\n\n# List agents\naws bedrock-agent list-agents --output table\n\n# List knowledge bases\naws bedrock-agent list-knowledge-bases --output table\n\n# List guardrails\naws bedrock list-guardrails --output table\n\n# Check model invocation logging status\naws bedrock get-model-invocation-logging-configuration\n```\n\n## Anti-Patterns\n\n- **Defaulting to the biggest model \"just to be safe\"** — start small, upgrade with evidence\n- **Building an agent when a single InvokeModel call would do** — agents compound cost per turn\n- **Stuffing entire documents into prompts instead of using Knowledge Bases** — RAG is cheaper and more maintainable\n- **Ignoring prompt caching** — it is automatic for supported models, just structure prompts correctly\n- **Using on-demand for bulk processing that could be batch** — 50% savings left on the table\n- **One massive Knowledge Base instead of scoped, curated collections** — hurts retrieval quality and costs more\n- **Skipping guardrails on user-facing apps** — \"we'll add them later\" becomes a security incident\n- **Not monitoring token usage** — costs sneak up fast during iteration, especially with agents\n\n## Additional Resources\n\n### Reference Files\n\nFor detailed cost modeling and estimation, consult:\n\n- **`references\u002Fcost-modeling.md`** — Pricing model breakdown, cost modeling template, optimization strategies, monitoring setup, and cost estimation output format\n\n### Related Skills\n\n- **`cost-check`** — Broader AWS cost analysis beyond Bedrock\n- **`iac-scaffold`** — IaC templates for Bedrock resource creation\n- **`security-review`** — Security audit for Bedrock configurations and guardrail policies\n\n## Output Format\n\nWhen advising on a Bedrock solution:\n\n| Component              | Choice                               | Rationale                                                      |\n| ---------------------- | ------------------------------------ | -------------------------------------------------------------- |\n| Primary model          | Claude Sonnet                        | Complex reasoning required, cost-effective for the quality bar |\n| Routing model          | Nova Micro                           | Cheap classifier for request triage                            |\n| Architecture           | Router + Specialist agents           | 3 focused agents vs 1 mega-agent                               |\n| Knowledge Base         | OpenSearch Serverless, hybrid search | Best retrieval quality, managed infrastructure                 |\n| Guardrails             | Content filters + PII redaction      | Customer-facing surface                                        |\n| Estimated monthly cost | $X,XXX                               | See `references\u002Fcost-modeling.md` for breakdown                |\n\nInclude cost profile and watch-out-for items specific to the use case.\n",{"data":38,"body":39},{"name":4,"description":6},{"type":40,"children":41},"root",[42,50,57,137,143,148,306,342,349,373,379,385,411,417,427,445,455,461,479,485,491,529,535,580,586,604,610,616,634,640,658,664,677,683,706,712,735,741,754,1079,1085,1168,1174,1180,1185,1201,1207,1251,1257,1262,1402,1407],{"type":43,"tag":44,"props":45,"children":46},"element","p",{},[47],{"type":48,"value":49},"text","Specialist guidance for Amazon Bedrock. Covers model selection, agent design, knowledge bases, guardrails, prompt engineering, batch inference, and cost optimization.",{"type":43,"tag":51,"props":52,"children":54},"h2",{"id":53},"process",[55],{"type":48,"value":56},"Process",{"type":43,"tag":58,"props":59,"children":60},"ol",{},[61,67,104,109,114,119,132],{"type":43,"tag":62,"props":63,"children":64},"li",{},[65],{"type":48,"value":66},"Understand the workload: what is being built, who consumes it, and what quality bar is required",{"type":43,"tag":62,"props":68,"children":69},{},[70,72,79,81,87,89,95,96,102],{"type":48,"value":71},"Use the ",{"type":43,"tag":73,"props":74,"children":76},"code",{"className":75},[],[77],{"type":48,"value":78},"awsknowledge",{"type":48,"value":80}," MCP tools (",{"type":43,"tag":73,"props":82,"children":84},{"className":83},[],[85],{"type":48,"value":86},"mcp__plugin_aws-dev-toolkit_awsknowledge__aws___search_documentation",{"type":48,"value":88},", ",{"type":43,"tag":73,"props":90,"children":92},{"className":91},[],[93],{"type":48,"value":94},"mcp__plugin_aws-dev-toolkit_awsknowledge__aws___read_documentation",{"type":48,"value":88},{"type":43,"tag":73,"props":97,"children":99},{"className":98},[],[100],{"type":48,"value":101},"mcp__plugin_aws-dev-toolkit_awsknowledge__aws___recommend",{"type":48,"value":103},") to verify current Bedrock model availability, pricing, and features (these change frequently)",{"type":43,"tag":62,"props":105,"children":106},{},[107],{"type":48,"value":108},"Select the right model(s) based on task complexity, latency, and cost",{"type":43,"tag":62,"props":110,"children":111},{},[112],{"type":48,"value":113},"Design the architecture: direct invocation, RAG, agent, or multi-agent",{"type":43,"tag":62,"props":115,"children":116},{},[117],{"type":48,"value":118},"Configure guardrails for user-facing surfaces",{"type":43,"tag":62,"props":120,"children":121},{},[122,124,130],{"type":48,"value":123},"Estimate costs using the ",{"type":43,"tag":73,"props":125,"children":127},{"className":126},[],[128],{"type":48,"value":129},"references\u002Fcost-modeling.md",{"type":48,"value":131}," template",{"type":43,"tag":62,"props":133,"children":134},{},[135],{"type":48,"value":136},"Recommend monitoring and cost controls",{"type":43,"tag":51,"props":138,"children":140},{"id":139},"model-selection",[141],{"type":48,"value":142},"Model Selection",{"type":43,"tag":44,"props":144,"children":145},{},[146],{"type":48,"value":147},"The model choice is the single biggest cost and quality decision. Get this right first.",{"type":43,"tag":149,"props":150,"children":151},"table",{},[152,176],{"type":43,"tag":153,"props":154,"children":155},"thead",{},[156],{"type":43,"tag":157,"props":158,"children":159},"tr",{},[160,166,171],{"type":43,"tag":161,"props":162,"children":163},"th",{},[164],{"type":48,"value":165},"Need",{"type":43,"tag":161,"props":167,"children":168},{},[169],{"type":48,"value":170},"Recommended Model",{"type":43,"tag":161,"props":172,"children":173},{},[174],{"type":48,"value":175},"Why",{"type":43,"tag":177,"props":178,"children":179},"tbody",{},[180,199,217,235,253,271,289],{"type":43,"tag":157,"props":181,"children":182},{},[183,189,194],{"type":43,"tag":184,"props":185,"children":186},"td",{},[187],{"type":48,"value":188},"Classification, routing, extraction",{"type":43,"tag":184,"props":190,"children":191},{},[192],{"type":48,"value":193},"Nova Micro or Claude Haiku",{"type":43,"tag":184,"props":195,"children":196},{},[197],{"type":48,"value":198},"Fast, cheap, accurate for structured tasks",{"type":43,"tag":157,"props":200,"children":201},{},[202,207,212],{"type":43,"tag":184,"props":203,"children":204},{},[205],{"type":48,"value":206},"General Q&A, summarization",{"type":43,"tag":184,"props":208,"children":209},{},[210],{"type":48,"value":211},"Nova Lite or Nova Pro",{"type":43,"tag":184,"props":213,"children":214},{},[215],{"type":48,"value":216},"Strong quality-to-cost ratio",{"type":43,"tag":157,"props":218,"children":219},{},[220,225,230],{"type":43,"tag":184,"props":221,"children":222},{},[223],{"type":48,"value":224},"Multimodal (image + text)",{"type":43,"tag":184,"props":226,"children":227},{},[228],{"type":48,"value":229},"Nova Lite",{"type":43,"tag":184,"props":231,"children":232},{},[233],{"type":48,"value":234},"Cost-effective vision without Sonnet pricing",{"type":43,"tag":157,"props":236,"children":237},{},[238,243,248],{"type":43,"tag":184,"props":239,"children":240},{},[241],{"type":48,"value":242},"Complex reasoning, nuanced generation",{"type":43,"tag":184,"props":244,"children":245},{},[246],{"type":48,"value":247},"Claude Sonnet",{"type":43,"tag":184,"props":249,"children":250},{},[251],{"type":48,"value":252},"Best balance of capability and cost",{"type":43,"tag":157,"props":254,"children":255},{},[256,261,266],{"type":43,"tag":184,"props":257,"children":258},{},[259],{"type":48,"value":260},"Hardest problems, highest quality bar",{"type":43,"tag":184,"props":262,"children":263},{},[264],{"type":48,"value":265},"Claude Opus",{"type":43,"tag":184,"props":267,"children":268},{},[269],{"type":48,"value":270},"Reserve for tasks where Sonnet falls short",{"type":43,"tag":157,"props":272,"children":273},{},[274,279,284],{"type":43,"tag":184,"props":275,"children":276},{},[277],{"type":48,"value":278},"Embeddings",{"type":43,"tag":184,"props":280,"children":281},{},[282],{"type":48,"value":283},"Titan Embed v2",{"type":43,"tag":184,"props":285,"children":286},{},[287],{"type":48,"value":288},"Cheaper than Cohere, solid quality for most use cases",{"type":43,"tag":157,"props":290,"children":291},{},[292,297,301],{"type":43,"tag":184,"props":293,"children":294},{},[295],{"type":48,"value":296},"Code generation",{"type":43,"tag":184,"props":298,"children":299},{},[300],{"type":48,"value":247},{"type":43,"tag":184,"props":302,"children":303},{},[304],{"type":48,"value":305},"Strong code quality without Opus pricing",{"type":43,"tag":44,"props":307,"children":308},{},[309,315,317,322,323,328,329,334,335,340],{"type":43,"tag":310,"props":311,"children":312},"strong",{},[313],{"type":48,"value":314},"Note",{"type":48,"value":316},": Model availability and pricing change frequently. Verify current options via ",{"type":43,"tag":73,"props":318,"children":320},{"className":319},[],[321],{"type":48,"value":78},{"type":48,"value":80},{"type":43,"tag":73,"props":324,"children":326},{"className":325},[],[327],{"type":48,"value":86},{"type":48,"value":88},{"type":43,"tag":73,"props":330,"children":332},{"className":331},[],[333],{"type":48,"value":94},{"type":48,"value":88},{"type":43,"tag":73,"props":336,"children":338},{"className":337},[],[339],{"type":48,"value":101},{"type":48,"value":341},") before making final recommendations.",{"type":43,"tag":343,"props":344,"children":346},"h3",{"id":345},"model-selection-principles",[347],{"type":48,"value":348},"Model Selection Principles",{"type":43,"tag":350,"props":351,"children":352},"ul",{},[353,358,363,368],{"type":43,"tag":62,"props":354,"children":355},{},[356],{"type":48,"value":357},"Start with the smallest model that could work. Upgrade only when evidence shows it falls short.",{"type":43,"tag":62,"props":359,"children":360},{},[361],{"type":48,"value":362},"Benchmark on real data, not generic benchmarks. A smaller well-prompted model often beats a larger general one.",{"type":43,"tag":62,"props":364,"children":365},{},[366],{"type":48,"value":367},"Use Bedrock's intelligent prompt routing to auto-route requests to the right model tier.",{"type":43,"tag":62,"props":369,"children":370},{},[371],{"type":48,"value":372},"Evaluate the Nova family before defaulting to third-party models — Nova Pro offers comparable quality to Claude Sonnet for many tasks at significantly lower cost per token, and Nova Lite\u002FMicro provide sub-100ms latency for classification and routing tasks where you don't need full reasoning capability. Nova models also have no cross-provider data transfer fees and deeper native Bedrock integration (Guardrails, Knowledge Bases, Flows).",{"type":43,"tag":51,"props":374,"children":376},{"id":375},"bedrock-agents",[377],{"type":48,"value":378},"Bedrock Agents",{"type":43,"tag":343,"props":380,"children":382},{"id":381},"design-principles",[383],{"type":48,"value":384},"Design Principles",{"type":43,"tag":350,"props":386,"children":387},{},[388,393,398],{"type":43,"tag":62,"props":389,"children":390},{},[391],{"type":48,"value":392},"One agent, one job. If the agent description contains \"and\", consider splitting.",{"type":43,"tag":62,"props":394,"children":395},{},[396],{"type":48,"value":397},"Fewer tools = fewer reasoning steps = faster + cheaper. 3-5 tools is the sweet spot.",{"type":43,"tag":62,"props":399,"children":400},{},[401,403,409],{"type":48,"value":402},"Use direct ",{"type":43,"tag":73,"props":404,"children":406},{"className":405},[],[407],{"type":48,"value":408},"InvokeModel",{"type":48,"value":410}," for simple tasks. Not everything needs an agent.",{"type":43,"tag":343,"props":412,"children":414},{"id":413},"architecture-patterns",[415],{"type":48,"value":416},"Architecture Patterns",{"type":43,"tag":44,"props":418,"children":419},{},[420,425],{"type":43,"tag":310,"props":421,"children":422},{},[423],{"type":48,"value":424},"Router + Specialists",{"type":48,"value":426},": A lightweight classifier (Nova Micro) routes to specialized agents. Each specialist has a focused tool set and optimized prompt. This beats one mega-agent with 20 tools.",{"type":43,"tag":44,"props":428,"children":429},{},[430,435,437,443],{"type":43,"tag":310,"props":431,"children":432},{},[433],{"type":48,"value":434},"Knowledge Base + Guardrails",{"type":48,"value":436},": For customer-facing Q&A — KB for retrieval, guardrails for safety, single model call for generation. No agent orchestration needed; use ",{"type":43,"tag":73,"props":438,"children":440},{"className":439},[],[441],{"type":48,"value":442},"RetrieveAndGenerate",{"type":48,"value":444}," API directly.",{"type":43,"tag":44,"props":446,"children":447},{},[448,453],{"type":43,"tag":310,"props":449,"children":450},{},[451],{"type":48,"value":452},"Agent with Session Memory",{"type":48,"value":454},": For multi-turn conversations — use AgentCore sessions with memory. Let the agent maintain context across turns instead of stuffing history into the prompt each time.",{"type":43,"tag":343,"props":456,"children":458},{"id":457},"action-groups",[459],{"type":48,"value":460},"Action Groups",{"type":43,"tag":350,"props":462,"children":463},{},[464,469,474],{"type":43,"tag":62,"props":465,"children":466},{},[467],{"type":48,"value":468},"Use Lambda-backed action groups for complex logic",{"type":43,"tag":62,"props":470,"children":471},{},[472],{"type":48,"value":473},"Use Return Control for client-side tool execution (keeps agent stateless, avoids Lambda cost)",{"type":43,"tag":62,"props":475,"children":476},{},[477],{"type":48,"value":478},"Define OpenAPI schemas tightly — vague schemas cause the model to guess (and guess wrong)",{"type":43,"tag":51,"props":480,"children":482},{"id":481},"knowledge-bases",[483],{"type":48,"value":484},"Knowledge Bases",{"type":43,"tag":343,"props":486,"children":488},{"id":487},"chunking-strategy",[489],{"type":48,"value":490},"Chunking Strategy",{"type":43,"tag":350,"props":492,"children":493},{},[494,504,514,524],{"type":43,"tag":62,"props":495,"children":496},{},[497,502],{"type":43,"tag":310,"props":498,"children":499},{},[500],{"type":48,"value":501},"Fixed-size chunking",{"type":48,"value":503}," (default): Good starting point. 300-500 tokens with 10-20% overlap.",{"type":43,"tag":62,"props":505,"children":506},{},[507,512],{"type":43,"tag":310,"props":508,"children":509},{},[510],{"type":48,"value":511},"Semantic chunking",{"type":48,"value":513},": Better quality, higher embedding cost. Use for high-value, heterogeneous documents.",{"type":43,"tag":62,"props":515,"children":516},{},[517,522],{"type":43,"tag":310,"props":518,"children":519},{},[520],{"type":48,"value":521},"Hierarchical chunking",{"type":48,"value":523},": Best for long documents with clear structure (manuals, legal docs).",{"type":43,"tag":62,"props":525,"children":526},{},[527],{"type":48,"value":528},"Curate the data source — garbage in, garbage out applies doubly to RAG.",{"type":43,"tag":343,"props":530,"children":532},{"id":531},"vector-store-selection",[533],{"type":48,"value":534},"Vector Store Selection",{"type":43,"tag":350,"props":536,"children":537},{},[538,555,565,575],{"type":43,"tag":62,"props":539,"children":540},{},[541,546,548,553],{"type":43,"tag":310,"props":542,"children":543},{},[544],{"type":48,"value":545},"OpenSearch Serverless",{"type":48,"value":547},": Default choice. Managed, scales, integrates natively. See ",{"type":43,"tag":73,"props":549,"children":551},{"className":550},[],[552],{"type":48,"value":129},{"type":48,"value":554}," for minimum costs.",{"type":43,"tag":62,"props":556,"children":557},{},[558,563],{"type":43,"tag":310,"props":559,"children":560},{},[561],{"type":48,"value":562},"Aurora PostgreSQL (pgvector)",{"type":48,"value":564},": Good if already running Aurora — consolidates infrastructure.",{"type":43,"tag":62,"props":566,"children":567},{},[568,573],{"type":43,"tag":310,"props":569,"children":570},{},[571],{"type":48,"value":572},"Pinecone \u002F Redis",{"type":48,"value":574},": If existing investments in these stores.",{"type":43,"tag":62,"props":576,"children":577},{},[578],{"type":48,"value":579},"For PoCs, share a single OpenSearch Serverless collection across multiple KBs to minimize cost.",{"type":43,"tag":343,"props":581,"children":583},{"id":582},"retrieval-tuning",[584],{"type":48,"value":585},"Retrieval Tuning",{"type":43,"tag":350,"props":587,"children":588},{},[589,594,599],{"type":43,"tag":62,"props":590,"children":591},{},[592],{"type":48,"value":593},"Start with hybrid search (semantic + keyword) — outperforms pure semantic for most workloads",{"type":43,"tag":62,"props":595,"children":596},{},[597],{"type":48,"value":598},"Tune retrieved chunk count (default 5). More chunks = more context = more input tokens. Find the minimum that gives good answers.",{"type":43,"tag":62,"props":600,"children":601},{},[602],{"type":48,"value":603},"Use metadata filtering to scope retrieval — avoid searching everything when the document category is known.",{"type":43,"tag":51,"props":605,"children":607},{"id":606},"prompt-engineering-on-bedrock",[608],{"type":48,"value":609},"Prompt Engineering on Bedrock",{"type":43,"tag":343,"props":611,"children":613},{"id":612},"prompt-caching",[614],{"type":48,"value":615},"Prompt Caching",{"type":43,"tag":350,"props":617,"children":618},{},[619,624,629],{"type":43,"tag":62,"props":620,"children":621},{},[622],{"type":48,"value":623},"Bedrock caches repeated system prompts automatically for supported models",{"type":43,"tag":62,"props":625,"children":626},{},[627],{"type":48,"value":628},"Structure prompts: long, stable system prompt + short, variable user prompt",{"type":43,"tag":62,"props":630,"children":631},{},[632],{"type":48,"value":633},"Cached input tokens are up to 90% cheaper — structure prompts to maximize cache hits",{"type":43,"tag":343,"props":635,"children":637},{"id":636},"prompt-management",[638],{"type":48,"value":639},"Prompt Management",{"type":43,"tag":350,"props":641,"children":642},{},[643,648,653],{"type":43,"tag":62,"props":644,"children":645},{},[646],{"type":48,"value":647},"Use Bedrock's Prompt Management to version and manage prompts",{"type":43,"tag":62,"props":649,"children":650},{},[651],{"type":48,"value":652},"Treat prompts like code — version them, test them, review changes",{"type":43,"tag":62,"props":654,"children":655},{},[656],{"type":48,"value":657},"Use prompt variables for dynamic content instead of string concatenation",{"type":43,"tag":343,"props":659,"children":661},{"id":660},"structured-output",[662],{"type":48,"value":663},"Structured Output",{"type":43,"tag":350,"props":665,"children":666},{},[667,672],{"type":43,"tag":62,"props":668,"children":669},{},[670],{"type":48,"value":671},"Request JSON with explicit schemas to reduce output token waste",{"type":43,"tag":62,"props":673,"children":674},{},[675],{"type":48,"value":676},"Use the Converse API with tool use for structured extraction — more reliable than asking for JSON in the prompt",{"type":43,"tag":51,"props":678,"children":680},{"id":679},"batch-inference",[681],{"type":48,"value":682},"Batch Inference",{"type":43,"tag":350,"props":684,"children":685},{},[686,691,696,701],{"type":43,"tag":62,"props":687,"children":688},{},[689],{"type":48,"value":690},"50% cheaper than on-demand for supported models",{"type":43,"tag":62,"props":692,"children":693},{},[694],{"type":48,"value":695},"Use for: document processing, bulk classification, dataset enrichment, eval runs",{"type":43,"tag":62,"props":697,"children":698},{},[699],{"type":48,"value":700},"Not for: real-time user-facing requests (latency is minutes to hours)",{"type":43,"tag":62,"props":702,"children":703},{},[704],{"type":48,"value":705},"Submit jobs via S3 input\u002Foutput — fits naturally into data pipelines",{"type":43,"tag":51,"props":707,"children":709},{"id":708},"guardrails",[710],{"type":48,"value":711},"Guardrails",{"type":43,"tag":350,"props":713,"children":714},{},[715,720,725,730],{"type":43,"tag":62,"props":716,"children":717},{},[718],{"type":48,"value":719},"Apply to user-facing inputs and outputs. Skip for internal agent reasoning steps.",{"type":43,"tag":62,"props":721,"children":722},{},[723],{"type":48,"value":724},"Content filters are cheaper than denied topic policies — use filters for broad categories, denied topics for specific restrictions.",{"type":43,"tag":62,"props":726,"children":727},{},[728],{"type":48,"value":729},"Contextual grounding checks catch hallucination at inference time — useful for RAG apps.",{"type":43,"tag":62,"props":731,"children":732},{},[733],{"type":48,"value":734},"PII detection\u002Fredaction is built in — use it instead of building custom regex.",{"type":43,"tag":51,"props":736,"children":738},{"id":737},"diagnostic-cli-commands",[739],{"type":48,"value":740},"Diagnostic CLI Commands",{"type":43,"tag":44,"props":742,"children":743},{},[744,746,752],{"type":48,"value":745},"Resource creation belongs in IaC. Use the ",{"type":43,"tag":73,"props":747,"children":749},{"className":748},[],[750],{"type":48,"value":751},"iac-scaffold",{"type":48,"value":753}," skill for templates.",{"type":43,"tag":755,"props":756,"children":761},"pre",{"className":757,"code":758,"language":759,"meta":760,"style":760},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# List available models in the region\naws bedrock list-foundation-models \\\n  --query 'modelSummaries[].{id:modelId,name:modelName,provider:providerName}' --output table\n\n# Quick model test (Converse API — preferred over invoke-model)\naws bedrock-runtime converse \\\n  --model-id amazon.nova-micro-v1:0 \\\n  --messages '[{\"role\":\"user\",\"content\":[{\"text\":\"Hello\"}]}]'\n\n# List agents\naws bedrock-agent list-agents --output table\n\n# List knowledge bases\naws bedrock-agent list-knowledge-bases --output table\n\n# List guardrails\naws bedrock list-guardrails --output table\n\n# Check model invocation logging status\naws bedrock get-model-invocation-logging-configuration\n","bash","",[762],{"type":43,"tag":73,"props":763,"children":764},{"__ignoreMap":760},[765,777,803,838,848,857,879,897,920,928,937,963,971,980,1004,1011,1020,1045,1053,1062],{"type":43,"tag":766,"props":767,"children":770},"span",{"class":768,"line":769},"line",1,[771],{"type":43,"tag":766,"props":772,"children":774},{"style":773},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[775],{"type":48,"value":776},"# List available models in the region\n",{"type":43,"tag":766,"props":778,"children":780},{"class":768,"line":779},2,[781,786,792,797],{"type":43,"tag":766,"props":782,"children":784},{"style":783},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[785],{"type":48,"value":25},{"type":43,"tag":766,"props":787,"children":789},{"style":788},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[790],{"type":48,"value":791}," bedrock",{"type":43,"tag":766,"props":793,"children":794},{"style":788},[795],{"type":48,"value":796}," list-foundation-models",{"type":43,"tag":766,"props":798,"children":800},{"style":799},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[801],{"type":48,"value":802}," \\\n",{"type":43,"tag":766,"props":804,"children":806},{"class":768,"line":805},3,[807,812,818,823,828,833],{"type":43,"tag":766,"props":808,"children":809},{"style":788},[810],{"type":48,"value":811},"  --query",{"type":43,"tag":766,"props":813,"children":815},{"style":814},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[816],{"type":48,"value":817}," '",{"type":43,"tag":766,"props":819,"children":820},{"style":788},[821],{"type":48,"value":822},"modelSummaries[].{id:modelId,name:modelName,provider:providerName}",{"type":43,"tag":766,"props":824,"children":825},{"style":814},[826],{"type":48,"value":827},"'",{"type":43,"tag":766,"props":829,"children":830},{"style":788},[831],{"type":48,"value":832}," --output",{"type":43,"tag":766,"props":834,"children":835},{"style":788},[836],{"type":48,"value":837}," table\n",{"type":43,"tag":766,"props":839,"children":841},{"class":768,"line":840},4,[842],{"type":43,"tag":766,"props":843,"children":845},{"emptyLinePlaceholder":844},true,[846],{"type":48,"value":847},"\n",{"type":43,"tag":766,"props":849,"children":851},{"class":768,"line":850},5,[852],{"type":43,"tag":766,"props":853,"children":854},{"style":773},[855],{"type":48,"value":856},"# Quick model test (Converse API — preferred over invoke-model)\n",{"type":43,"tag":766,"props":858,"children":860},{"class":768,"line":859},6,[861,865,870,875],{"type":43,"tag":766,"props":862,"children":863},{"style":783},[864],{"type":48,"value":25},{"type":43,"tag":766,"props":866,"children":867},{"style":788},[868],{"type":48,"value":869}," bedrock-runtime",{"type":43,"tag":766,"props":871,"children":872},{"style":788},[873],{"type":48,"value":874}," converse",{"type":43,"tag":766,"props":876,"children":877},{"style":799},[878],{"type":48,"value":802},{"type":43,"tag":766,"props":880,"children":882},{"class":768,"line":881},7,[883,888,893],{"type":43,"tag":766,"props":884,"children":885},{"style":788},[886],{"type":48,"value":887},"  --model-id",{"type":43,"tag":766,"props":889,"children":890},{"style":788},[891],{"type":48,"value":892}," amazon.nova-micro-v1:0",{"type":43,"tag":766,"props":894,"children":895},{"style":799},[896],{"type":48,"value":802},{"type":43,"tag":766,"props":898,"children":900},{"class":768,"line":899},8,[901,906,910,915],{"type":43,"tag":766,"props":902,"children":903},{"style":788},[904],{"type":48,"value":905},"  --messages",{"type":43,"tag":766,"props":907,"children":908},{"style":814},[909],{"type":48,"value":817},{"type":43,"tag":766,"props":911,"children":912},{"style":788},[913],{"type":48,"value":914},"[{\"role\":\"user\",\"content\":[{\"text\":\"Hello\"}]}]",{"type":43,"tag":766,"props":916,"children":917},{"style":814},[918],{"type":48,"value":919},"'\n",{"type":43,"tag":766,"props":921,"children":923},{"class":768,"line":922},9,[924],{"type":43,"tag":766,"props":925,"children":926},{"emptyLinePlaceholder":844},[927],{"type":48,"value":847},{"type":43,"tag":766,"props":929,"children":931},{"class":768,"line":930},10,[932],{"type":43,"tag":766,"props":933,"children":934},{"style":773},[935],{"type":48,"value":936},"# List agents\n",{"type":43,"tag":766,"props":938,"children":940},{"class":768,"line":939},11,[941,945,950,955,959],{"type":43,"tag":766,"props":942,"children":943},{"style":783},[944],{"type":48,"value":25},{"type":43,"tag":766,"props":946,"children":947},{"style":788},[948],{"type":48,"value":949}," bedrock-agent",{"type":43,"tag":766,"props":951,"children":952},{"style":788},[953],{"type":48,"value":954}," list-agents",{"type":43,"tag":766,"props":956,"children":957},{"style":788},[958],{"type":48,"value":832},{"type":43,"tag":766,"props":960,"children":961},{"style":788},[962],{"type":48,"value":837},{"type":43,"tag":766,"props":964,"children":966},{"class":768,"line":965},12,[967],{"type":43,"tag":766,"props":968,"children":969},{"emptyLinePlaceholder":844},[970],{"type":48,"value":847},{"type":43,"tag":766,"props":972,"children":974},{"class":768,"line":973},13,[975],{"type":43,"tag":766,"props":976,"children":977},{"style":773},[978],{"type":48,"value":979},"# List knowledge bases\n",{"type":43,"tag":766,"props":981,"children":982},{"class":768,"line":26},[983,987,991,996,1000],{"type":43,"tag":766,"props":984,"children":985},{"style":783},[986],{"type":48,"value":25},{"type":43,"tag":766,"props":988,"children":989},{"style":788},[990],{"type":48,"value":949},{"type":43,"tag":766,"props":992,"children":993},{"style":788},[994],{"type":48,"value":995}," list-knowledge-bases",{"type":43,"tag":766,"props":997,"children":998},{"style":788},[999],{"type":48,"value":832},{"type":43,"tag":766,"props":1001,"children":1002},{"style":788},[1003],{"type":48,"value":837},{"type":43,"tag":766,"props":1005,"children":1006},{"class":768,"line":30},[1007],{"type":43,"tag":766,"props":1008,"children":1009},{"emptyLinePlaceholder":844},[1010],{"type":48,"value":847},{"type":43,"tag":766,"props":1012,"children":1014},{"class":768,"line":1013},16,[1015],{"type":43,"tag":766,"props":1016,"children":1017},{"style":773},[1018],{"type":48,"value":1019},"# List guardrails\n",{"type":43,"tag":766,"props":1021,"children":1023},{"class":768,"line":1022},17,[1024,1028,1032,1037,1041],{"type":43,"tag":766,"props":1025,"children":1026},{"style":783},[1027],{"type":48,"value":25},{"type":43,"tag":766,"props":1029,"children":1030},{"style":788},[1031],{"type":48,"value":791},{"type":43,"tag":766,"props":1033,"children":1034},{"style":788},[1035],{"type":48,"value":1036}," list-guardrails",{"type":43,"tag":766,"props":1038,"children":1039},{"style":788},[1040],{"type":48,"value":832},{"type":43,"tag":766,"props":1042,"children":1043},{"style":788},[1044],{"type":48,"value":837},{"type":43,"tag":766,"props":1046,"children":1048},{"class":768,"line":1047},18,[1049],{"type":43,"tag":766,"props":1050,"children":1051},{"emptyLinePlaceholder":844},[1052],{"type":48,"value":847},{"type":43,"tag":766,"props":1054,"children":1056},{"class":768,"line":1055},19,[1057],{"type":43,"tag":766,"props":1058,"children":1059},{"style":773},[1060],{"type":48,"value":1061},"# Check model invocation logging status\n",{"type":43,"tag":766,"props":1063,"children":1065},{"class":768,"line":1064},20,[1066,1070,1074],{"type":43,"tag":766,"props":1067,"children":1068},{"style":783},[1069],{"type":48,"value":25},{"type":43,"tag":766,"props":1071,"children":1072},{"style":788},[1073],{"type":48,"value":791},{"type":43,"tag":766,"props":1075,"children":1076},{"style":788},[1077],{"type":48,"value":1078}," get-model-invocation-logging-configuration\n",{"type":43,"tag":51,"props":1080,"children":1082},{"id":1081},"anti-patterns",[1083],{"type":48,"value":1084},"Anti-Patterns",{"type":43,"tag":350,"props":1086,"children":1087},{},[1088,1098,1108,1118,1128,1138,1148,1158],{"type":43,"tag":62,"props":1089,"children":1090},{},[1091,1096],{"type":43,"tag":310,"props":1092,"children":1093},{},[1094],{"type":48,"value":1095},"Defaulting to the biggest model \"just to be safe\"",{"type":48,"value":1097}," — start small, upgrade with evidence",{"type":43,"tag":62,"props":1099,"children":1100},{},[1101,1106],{"type":43,"tag":310,"props":1102,"children":1103},{},[1104],{"type":48,"value":1105},"Building an agent when a single InvokeModel call would do",{"type":48,"value":1107}," — agents compound cost per turn",{"type":43,"tag":62,"props":1109,"children":1110},{},[1111,1116],{"type":43,"tag":310,"props":1112,"children":1113},{},[1114],{"type":48,"value":1115},"Stuffing entire documents into prompts instead of using Knowledge Bases",{"type":48,"value":1117}," — RAG is cheaper and more maintainable",{"type":43,"tag":62,"props":1119,"children":1120},{},[1121,1126],{"type":43,"tag":310,"props":1122,"children":1123},{},[1124],{"type":48,"value":1125},"Ignoring prompt caching",{"type":48,"value":1127}," — it is automatic for supported models, just structure prompts correctly",{"type":43,"tag":62,"props":1129,"children":1130},{},[1131,1136],{"type":43,"tag":310,"props":1132,"children":1133},{},[1134],{"type":48,"value":1135},"Using on-demand for bulk processing that could be batch",{"type":48,"value":1137}," — 50% savings left on the table",{"type":43,"tag":62,"props":1139,"children":1140},{},[1141,1146],{"type":43,"tag":310,"props":1142,"children":1143},{},[1144],{"type":48,"value":1145},"One massive Knowledge Base instead of scoped, curated collections",{"type":48,"value":1147}," — hurts retrieval quality and costs more",{"type":43,"tag":62,"props":1149,"children":1150},{},[1151,1156],{"type":43,"tag":310,"props":1152,"children":1153},{},[1154],{"type":48,"value":1155},"Skipping guardrails on user-facing apps",{"type":48,"value":1157}," — \"we'll add them later\" becomes a security incident",{"type":43,"tag":62,"props":1159,"children":1160},{},[1161,1166],{"type":43,"tag":310,"props":1162,"children":1163},{},[1164],{"type":48,"value":1165},"Not monitoring token usage",{"type":48,"value":1167}," — costs sneak up fast during iteration, especially with agents",{"type":43,"tag":51,"props":1169,"children":1171},{"id":1170},"additional-resources",[1172],{"type":48,"value":1173},"Additional Resources",{"type":43,"tag":343,"props":1175,"children":1177},{"id":1176},"reference-files",[1178],{"type":48,"value":1179},"Reference Files",{"type":43,"tag":44,"props":1181,"children":1182},{},[1183],{"type":48,"value":1184},"For detailed cost modeling and estimation, consult:",{"type":43,"tag":350,"props":1186,"children":1187},{},[1188],{"type":43,"tag":62,"props":1189,"children":1190},{},[1191,1199],{"type":43,"tag":310,"props":1192,"children":1193},{},[1194],{"type":43,"tag":73,"props":1195,"children":1197},{"className":1196},[],[1198],{"type":48,"value":129},{"type":48,"value":1200}," — Pricing model breakdown, cost modeling template, optimization strategies, monitoring setup, and cost estimation output format",{"type":43,"tag":343,"props":1202,"children":1204},{"id":1203},"related-skills",[1205],{"type":48,"value":1206},"Related Skills",{"type":43,"tag":350,"props":1208,"children":1209},{},[1210,1224,1237],{"type":43,"tag":62,"props":1211,"children":1212},{},[1213,1222],{"type":43,"tag":310,"props":1214,"children":1215},{},[1216],{"type":43,"tag":73,"props":1217,"children":1219},{"className":1218},[],[1220],{"type":48,"value":1221},"cost-check",{"type":48,"value":1223}," — Broader AWS cost analysis beyond Bedrock",{"type":43,"tag":62,"props":1225,"children":1226},{},[1227,1235],{"type":43,"tag":310,"props":1228,"children":1229},{},[1230],{"type":43,"tag":73,"props":1231,"children":1233},{"className":1232},[],[1234],{"type":48,"value":751},{"type":48,"value":1236}," — IaC templates for Bedrock resource creation",{"type":43,"tag":62,"props":1238,"children":1239},{},[1240,1249],{"type":43,"tag":310,"props":1241,"children":1242},{},[1243],{"type":43,"tag":73,"props":1244,"children":1246},{"className":1245},[],[1247],{"type":48,"value":1248},"security-review",{"type":48,"value":1250}," — Security audit for Bedrock configurations and guardrail policies",{"type":43,"tag":51,"props":1252,"children":1254},{"id":1253},"output-format",[1255],{"type":48,"value":1256},"Output Format",{"type":43,"tag":44,"props":1258,"children":1259},{},[1260],{"type":48,"value":1261},"When advising on a Bedrock solution:",{"type":43,"tag":149,"props":1263,"children":1264},{},[1265,1286],{"type":43,"tag":153,"props":1266,"children":1267},{},[1268],{"type":43,"tag":157,"props":1269,"children":1270},{},[1271,1276,1281],{"type":43,"tag":161,"props":1272,"children":1273},{},[1274],{"type":48,"value":1275},"Component",{"type":43,"tag":161,"props":1277,"children":1278},{},[1279],{"type":48,"value":1280},"Choice",{"type":43,"tag":161,"props":1282,"children":1283},{},[1284],{"type":48,"value":1285},"Rationale",{"type":43,"tag":177,"props":1287,"children":1288},{},[1289,1306,1324,1342,1360,1377],{"type":43,"tag":157,"props":1290,"children":1291},{},[1292,1297,1301],{"type":43,"tag":184,"props":1293,"children":1294},{},[1295],{"type":48,"value":1296},"Primary model",{"type":43,"tag":184,"props":1298,"children":1299},{},[1300],{"type":48,"value":247},{"type":43,"tag":184,"props":1302,"children":1303},{},[1304],{"type":48,"value":1305},"Complex reasoning required, cost-effective for the quality bar",{"type":43,"tag":157,"props":1307,"children":1308},{},[1309,1314,1319],{"type":43,"tag":184,"props":1310,"children":1311},{},[1312],{"type":48,"value":1313},"Routing model",{"type":43,"tag":184,"props":1315,"children":1316},{},[1317],{"type":48,"value":1318},"Nova Micro",{"type":43,"tag":184,"props":1320,"children":1321},{},[1322],{"type":48,"value":1323},"Cheap classifier for request triage",{"type":43,"tag":157,"props":1325,"children":1326},{},[1327,1332,1337],{"type":43,"tag":184,"props":1328,"children":1329},{},[1330],{"type":48,"value":1331},"Architecture",{"type":43,"tag":184,"props":1333,"children":1334},{},[1335],{"type":48,"value":1336},"Router + Specialist agents",{"type":43,"tag":184,"props":1338,"children":1339},{},[1340],{"type":48,"value":1341},"3 focused agents vs 1 mega-agent",{"type":43,"tag":157,"props":1343,"children":1344},{},[1345,1350,1355],{"type":43,"tag":184,"props":1346,"children":1347},{},[1348],{"type":48,"value":1349},"Knowledge Base",{"type":43,"tag":184,"props":1351,"children":1352},{},[1353],{"type":48,"value":1354},"OpenSearch Serverless, hybrid search",{"type":43,"tag":184,"props":1356,"children":1357},{},[1358],{"type":48,"value":1359},"Best retrieval quality, managed infrastructure",{"type":43,"tag":157,"props":1361,"children":1362},{},[1363,1367,1372],{"type":43,"tag":184,"props":1364,"children":1365},{},[1366],{"type":48,"value":711},{"type":43,"tag":184,"props":1368,"children":1369},{},[1370],{"type":48,"value":1371},"Content filters + PII redaction",{"type":43,"tag":184,"props":1373,"children":1374},{},[1375],{"type":48,"value":1376},"Customer-facing surface",{"type":43,"tag":157,"props":1378,"children":1379},{},[1380,1385,1390],{"type":43,"tag":184,"props":1381,"children":1382},{},[1383],{"type":48,"value":1384},"Estimated monthly cost",{"type":43,"tag":184,"props":1386,"children":1387},{},[1388],{"type":48,"value":1389},"$X,XXX",{"type":43,"tag":184,"props":1391,"children":1392},{},[1393,1395,1400],{"type":48,"value":1394},"See ",{"type":43,"tag":73,"props":1396,"children":1398},{"className":1397},[],[1399],{"type":48,"value":129},{"type":48,"value":1401}," for breakdown",{"type":43,"tag":44,"props":1403,"children":1404},{},[1405],{"type":48,"value":1406},"Include cost profile and watch-out-for items specific to the use case.",{"type":43,"tag":1408,"props":1409,"children":1410},"style",{},[1411],{"type":48,"value":1412},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":1414,"total":1592},[1415,1434,1455,1465,1478,1491,1501,1511,1532,1547,1562,1577],{"slug":1416,"name":1416,"fn":1417,"description":1418,"org":1419,"tags":1420,"stars":1431,"repoUrl":1432,"updatedAt":1433},"agentcore-investigation","investigate Bedrock AgentCore runtime sessions","Investigate Bedrock AgentCore runtime sessions via CloudWatch Logs Insights — resolve session\u002Ftrace IDs, query OTEL spans, filter noise, build timelines. Use when debugging AgentCore agent sessions, tracing tool calls, or analyzing latency.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1421,1422,1425,1428],{"name":24,"slug":25,"type":16},{"name":1423,"slug":1424,"type":16},"Debugging","debugging",{"name":1426,"slug":1427,"type":16},"Logs","logs",{"name":1429,"slug":1430,"type":16},"Observability","observability",9427,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fmcp","2026-07-12T08:37:22.601527",{"slug":1435,"name":1436,"fn":1437,"description":1438,"org":1439,"tags":1440,"stars":1431,"repoUrl":1432,"updatedAt":1454},"amazon-aurora-dsql","amazon aurora dsql","build applications with Aurora DSQL","Build with Aurora DSQL — manage schemas, execute queries, handle migrations, diagnose query plans, load data, and develop applications with a serverless, distributed SQL database. Covers IAM auth, multi-tenant patterns, MySQL-to-DSQL and PostgreSQL-to-DSQL schema conversion, FK replacement code generation, OCC retry patterns, ORM migration (Django\u002FHibernate\u002FRails), DDL operations, query plan explainability, SQL compatibility validation, and bulk data loading. Triggers on phrases like: DSQL, Aurora DSQL, create DSQL table, DSQL schema, migrate to DSQL, distributed SQL database, serverless PostgreSQL-compatible database, DSQL query plan, DSQL EXPLAIN ANALYZE, why is my DSQL query slow, DSQL foreign key, DSQL OCC retry, DSQL multi-region, load into DSQL, load CSV into DSQL, bulk load DSQL, aurora-dsql-loader.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1441,1444,1445,1448,1451],{"name":1442,"slug":1443,"type":16},"Aurora","aurora",{"name":24,"slug":25,"type":16},{"name":1446,"slug":1447,"type":16},"Database","database",{"name":1449,"slug":1450,"type":16},"Serverless","serverless",{"name":1452,"slug":1453,"type":16},"SQL","sql","2026-07-12T08:36:45.053393",{"slug":1456,"name":1457,"fn":1437,"description":1438,"org":1458,"tags":1459,"stars":1431,"repoUrl":1432,"updatedAt":1464},"aurora-dsql","aurora dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1460,1461,1462,1463],{"name":24,"slug":25,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1449,"slug":1450,"type":16},{"name":1452,"slug":1453,"type":16},"2026-07-12T08:36:42.694299",{"slug":1466,"name":1467,"fn":1437,"description":1438,"org":1468,"tags":1469,"stars":1431,"repoUrl":1432,"updatedAt":1477},"aws-dsql","aws dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1470,1471,1472,1475,1476],{"name":24,"slug":25,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1473,"slug":1474,"type":16},"Migration","migration",{"name":1449,"slug":1450,"type":16},{"name":1452,"slug":1453,"type":16},"2026-07-12T08:36:38.584057",{"slug":1479,"name":1480,"fn":1437,"description":1438,"org":1481,"tags":1482,"stars":1431,"repoUrl":1432,"updatedAt":1490},"distributed-postgres","distributed postgres",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1483,1484,1485,1488,1489],{"name":24,"slug":25,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1486,"slug":1487,"type":16},"PostgreSQL","postgresql",{"name":1449,"slug":1450,"type":16},{"name":1452,"slug":1453,"type":16},"2026-07-12T08:36:46.530743",{"slug":1492,"name":1493,"fn":1437,"description":1438,"org":1494,"tags":1495,"stars":1431,"repoUrl":1432,"updatedAt":1500},"distributed-sql","distributed sql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1496,1497,1498,1499],{"name":24,"slug":25,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1449,"slug":1450,"type":16},{"name":1452,"slug":1453,"type":16},"2026-07-12T08:36:48.104182",{"slug":1502,"name":1502,"fn":1437,"description":1438,"org":1503,"tags":1504,"stars":1431,"repoUrl":1432,"updatedAt":1510},"dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1505,1506,1507,1508,1509],{"name":24,"slug":25,"type":16},{"name":1446,"slug":1447,"type":16},{"name":1473,"slug":1474,"type":16},{"name":1449,"slug":1450,"type":16},{"name":1452,"slug":1453,"type":16},"2026-07-12T08:36:36.374512",{"slug":1512,"name":1512,"fn":1513,"description":1514,"org":1515,"tags":1516,"stars":1529,"repoUrl":1530,"updatedAt":1531},"cost-efficiency-analyzer","analyze cost efficiency and expenses","Analyzes cost structure, cost efficiency, and expense management from P&L data. Use when the user asks about costs, expenses, COGS, operating expenses, cost ratios, cost control, spending efficiency, margin compression from cost side, or wants to understand where money is going. Also use for \"are we spending too much\", \"cost breakdown\", \"expense analysis\", or \"how efficient are our operations\". NOT for revenue or top-line analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1517,1520,1523,1526],{"name":1518,"slug":1519,"type":16},"Accounting","accounting",{"name":1521,"slug":1522,"type":16},"Analytics","analytics",{"name":1524,"slug":1525,"type":16},"Cost Optimization","cost-optimization",{"name":1527,"slug":1528,"type":16},"Finance","finance",3176,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fagentcore-samples","2026-07-12T08:40:03.29555",{"slug":1533,"name":1533,"fn":1534,"description":1535,"org":1536,"tags":1537,"stars":1529,"repoUrl":1530,"updatedAt":1546},"executive-financial-briefing","generate executive financial briefings","Generates a concise executive-level financial briefing or summary suitable for a CEO, CFO, or board presentation. Use when the user asks for a summary, briefing, executive summary, board update, financial overview, financial health check, or \"how is the business doing\". Covers the full P&L picture in one page. Also use for \"give me the highlights\", \"what do I need to know\", or \"quick financial update\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1538,1539,1540,1543],{"name":24,"slug":25,"type":16},{"name":1527,"slug":1528,"type":16},{"name":1541,"slug":1542,"type":16},"Management","management",{"name":1544,"slug":1545,"type":16},"Reporting","reporting","2026-07-12T08:40:02.066471",{"slug":1548,"name":1548,"fn":1549,"description":1550,"org":1551,"tags":1552,"stars":1529,"repoUrl":1530,"updatedAt":1561},"multi-quarter-trend-analysis","analyze multi-quarter financial trends","Analyzes financial trends across multiple quarters by comparing P&L metrics over time. Use when the user wants to see trends, patterns, trajectories, or directional movement across 3 or more quarters. Also use for \"how are we trending\", \"show me the trend\", \"track performance over time\", \"quarter over quarter comparison across all quarters\", or any multi-period longitudinal analysis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1553,1554,1555,1558],{"name":1521,"slug":1522,"type":16},{"name":1527,"slug":1528,"type":16},{"name":1556,"slug":1557,"type":16},"Financial Statements","financial-statements",{"name":1559,"slug":1560,"type":16},"Variance Analysis","variance-analysis","2026-07-12T08:40:00.79141",{"slug":1563,"name":1563,"fn":1564,"description":1565,"org":1566,"tags":1567,"stars":1529,"repoUrl":1530,"updatedAt":1576},"pdf","process and manipulate PDF documents","Use this skill whenever the user wants to do anything with PDF files. This includes reading or extracting text\u002Ftables from PDFs, combining or merging multiple PDFs into one, splitting PDFs apart, rotating pages, adding watermarks, creating new PDFs, filling PDF forms, encrypting\u002Fdecrypting PDFs, extracting images, and OCR on scanned PDFs to make them searchable. If the user mentions a .pdf file or asks to produce one, use this skill.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1568,1571,1574],{"name":1569,"slug":1570,"type":16},"Automation","automation",{"name":1572,"slug":1573,"type":16},"Documents","documents",{"name":1575,"slug":1563,"type":16},"PDF","2026-07-12T08:41:44.135656",{"slug":1578,"name":1578,"fn":1579,"description":1580,"org":1581,"tags":1582,"stars":1529,"repoUrl":1530,"updatedAt":1591},"quarterly-kpi-calculator","calculate quarterly financial KPIs","Calculates quarterly financial KPIs from P&L data. P&L figures can be provided directly by the user or fetched from the financial data MCP server. Use when the user wants KPI calculations such as Gross Margin %, EBITDA Margin %, Operating Expense Ratio, or Revenue Growth % QoQ. Also use for quarterly performance review, P&L analysis, or interpreting financial ratios against benchmarks.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1583,1584,1587,1588],{"name":1518,"slug":1519,"type":16},{"name":1585,"slug":1586,"type":16},"Data Analysis","data-analysis",{"name":1527,"slug":1528,"type":16},{"name":1589,"slug":1590,"type":16},"KPI","kpi","2026-07-12T08:39:59.54971",150,{"items":1594,"total":1684},[1595,1606,1619,1631,1643,1656,1669],{"slug":1596,"name":1596,"fn":1597,"description":1598,"org":1599,"tags":1600,"stars":26,"repoUrl":27,"updatedAt":1605},"agentcore","design Amazon Bedrock AgentCore architectures","Deep-dive into Amazon Bedrock AgentCore platform design, service selection, deployment, and production operations. This skill should be used when the user asks to \"design an AgentCore architecture\", \"deploy agents on AgentCore\", \"configure AgentCore Runtime\", \"set up AgentCore Memory\", \"use AgentCore Gateway\", \"configure AgentCore Identity\", \"set up AgentCore Policy\", \"plan agent observability\", \"evaluate agent quality\", \"move agent PoC to production\", or mentions AgentCore, AgentCore Runtime, AgentCore Memory, AgentCore Gateway, AgentCore Identity, AgentCore Policy, AgentCore Evaluations, AgentCore Code Interpreter, AgentCore Browser, A2A protocol, or multi-agent orchestration on AWS.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1601,1602,1604],{"name":18,"slug":19,"type":16},{"name":1331,"slug":1603,"type":16},"architecture",{"name":24,"slug":25,"type":16},"2026-07-12T08:40:11.108951",{"slug":1607,"name":1607,"fn":1608,"description":1609,"org":1610,"tags":1611,"stars":26,"repoUrl":27,"updatedAt":1618},"aidlc-lite","develop AI applications on AWS","Lightweight AI development lifecycle for building on AWS. A simplified take on the AI-DLC philosophy — think together, then build fast. Acts as a design partner that understands intent, proposes alternatives with trade-offs, and ships working code without the ceremony of full requirements\u002Fdesign\u002Fspec documents. Use when a founder says \"build X on AWS\", \"add Y to my stack\", \"scaffold an API\", or \"write the CDK for Z\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1612,1613,1614,1615],{"name":18,"slug":19,"type":16},{"name":21,"slug":22,"type":16},{"name":24,"slug":25,"type":16},{"name":1616,"slug":1617,"type":16},"Engineering","engineering","2026-07-12T08:40:40.204103",{"slug":1620,"name":1620,"fn":1621,"description":1622,"org":1623,"tags":1624,"stars":26,"repoUrl":27,"updatedAt":1630},"architect-for-startups","advise on AWS architecture for startups","AWS architecture advisor tailored specifically for startups. Alters AWS architecture recommendations based on startup stage (pre-revenue through Series B+), team size, runway, and credits. ALWAYS use when asked about building on AWS, choosing services, planning infrastructure, managing costs with credits, or preparing architecture for fundraising.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1625,1626,1627],{"name":1331,"slug":1603,"type":16},{"name":24,"slug":25,"type":16},{"name":1628,"slug":1629,"type":16},"Strategy","strategy","2026-07-12T08:41:33.557354",{"slug":1632,"name":1632,"fn":1633,"description":1634,"org":1635,"tags":1636,"stars":26,"repoUrl":27,"updatedAt":1642},"aws-architect","design and review AWS architectures","Design and review AWS architectures following Well-Architected Framework principles. Use when planning new infrastructure, reviewing existing architectures, evaluating trade-offs between AWS services, or when asked about AWS best practices.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1637,1638,1639],{"name":1331,"slug":1603,"type":16},{"name":24,"slug":25,"type":16},{"name":1640,"slug":1641,"type":16},"Infrastructure","infrastructure","2026-07-12T08:40:57.630086",{"slug":1644,"name":1644,"fn":1645,"description":1646,"org":1647,"tags":1648,"stars":26,"repoUrl":27,"updatedAt":1655},"aws-compare","compare AWS architecture options","Compare 2-3 AWS architecture options side-by-side across cost, complexity, performance, security, and operational burden. Use when evaluating trade-offs between approaches or when the user is deciding between options.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1649,1650,1651,1652],{"name":1331,"slug":1603,"type":16},{"name":24,"slug":25,"type":16},{"name":1524,"slug":1525,"type":16},{"name":1653,"slug":1654,"type":16},"Security","security","2026-07-12T08:40:23.960287",{"slug":1657,"name":1657,"fn":1658,"description":1659,"org":1660,"tags":1661,"stars":26,"repoUrl":27,"updatedAt":1668},"aws-debug","debug AWS infrastructure and deployment failures","Debug AWS infrastructure issues, deployment failures, and runtime errors. Use when troubleshooting CloudFormation stack failures, Lambda errors, ECS task failures, permission issues, networking problems, or any AWS service misbehavior.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1662,1663,1664,1667],{"name":24,"slug":25,"type":16},{"name":1423,"slug":1424,"type":16},{"name":1665,"slug":1666,"type":16},"Deployment","deployment",{"name":1429,"slug":1430,"type":16},"2026-07-12T08:40:16.767171",{"slug":1670,"name":1670,"fn":1671,"description":1672,"org":1673,"tags":1674,"stars":26,"repoUrl":27,"updatedAt":1683},"aws-diagram","generate AWS architecture diagrams","Generate AWS architecture diagrams in Mermaid or ASCII from a description, existing IaC, or conversation context. Use when the user wants to visualize an architecture.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1675,1676,1677,1680],{"name":1331,"slug":1603,"type":16},{"name":24,"slug":25,"type":16},{"name":1678,"slug":1679,"type":16},"Diagrams","diagrams",{"name":1681,"slug":1682,"type":16},"Visualization","visualization","2026-07-12T08:40:43.26341",42]