[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-aws-labs-model-deployment":3,"mdc-usn33j-key":42,"related-org-aws-labs-model-deployment":797,"related-repo-aws-labs-model-deployment":977},{"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":37,"sourceUrl":40,"mdContent":41},"model-deployment","deploy fine-tuned models to SageMaker endpoints","Generates code that deploys fine-tuned models from SageMaker Serverless Model Customization to SageMaker endpoints or Bedrock. Use when the user says \"deploy my model\", \"create an endpoint\", \"make it available\", or asks about deployment options. Identifies the correct deployment pathway (Nova vs OSS), generates deployment code, and handles endpoint configuration.",{"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},"Machine Learning","machine-learning",{"name":21,"slug":22,"type":16},"Deployment","deployment",{"name":24,"slug":25,"type":16},"AWS","aws",831,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fagent-plugins","2026-07-12T08:39:15.526001",null,127,[32,33,34,25,35,36],"agent-plugins","agent-skills","agents","coding-agent-skills","coding-agents",{"repoUrl":27,"stars":26,"forks":30,"topics":38,"description":39},[32,33,34,25,35,36],"Agent Plugins for AWS equip AI coding agents with the skills to help you architect, deploy, and operate on AWS.","https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fagent-plugins\u002Ftree\u002FHEAD\u002Fplugins\u002Fsagemaker-ai\u002Fskills\u002Fmodel-deployment","---\nname: model-deployment\ndescription: Generates code that deploys fine-tuned models from SageMaker Serverless Model Customization to SageMaker endpoints or Bedrock. Use when the user says \"deploy my model\", \"create an endpoint\", \"make it available\", or asks about deployment options. Identifies the correct deployment pathway (Nova vs OSS), generates deployment code, and handles endpoint configuration.\nmetadata:\n  version: \"1.0.0\"\n---\n\n# Model Deployment\n\nIdentifies the correct deployment pathway based on model characteristics and generates deployment code.\n\n## Scope\n\nThis skill supports deploying Nova and OSS models that were fine-tuned through **SageMaker Serverless Model Customization** only.\n\n**Not supported:**\n\n- Base models (not fine-tuned)\n- Models fine-tuned through other processes\n- Full Fine-Tuning (FFT) — only LoRA fine-tuned models are supported\n\n## Prerequisites\n\n- The SDK environment has been verified (SDK version, region, execution role). If not done, activate the `sdk-getting-started` skill first.\n\n---\n\n## Principles\n\n1. **One thing at a time.** Each response advances exactly one decision.\n2. **Confirm before proceeding.** Wait for the user to agree before moving on. But don't re-ask questions already answered in the conversation — use what you know.\n3. **Don't read files until you need them.** Only read pathway references after the pathway is confirmed.\n4. **Use what you know.** If conversation history or artifacts already answer a question, confirm your understanding instead of asking again.\n\n## Workflow\n\n### Step 1: Identify the Training Job\n\nYou need the training job name or ARN. Check the conversation history first — the user may have already mentioned it, or it may be available from earlier steps in the workflow (e.g., fine-tuning). If not, ask the user.\n\nOnce you have the training job name or ARN, use the AWS MCP tool to look it up:\n\n1. Use the AWS MCP tool `describe-training-job` and extract:\n   - **S3 output path** (from `ModelArtifacts.S3ModelArtifacts` or `OutputDataConfig.S3OutputPath`)\n   - **IAM role ARN** (from `RoleArn`)\n   - **Region**\n2. Use the AWS MCP tool `list-tags` on the training job ARN and extract:\n   - **Model ID** from the `sagemaker-studio:jumpstart-model-id` tag\n3. Determine the **model type** from the model ID:\n   - Contains \"nova\" (nova-micro, nova-lite, nova-pro) → **Nova**\n   - Llama, Mistral, Qwen, GPT-OSS, DeepSeek, etc. → **OSS**\n\n**Unsupported models:** This skill only supports OSS and Nova models that were LoRA fine-tuned through SageMaker Serverless Model Customization. If the model doesn't match, tell the user this skill can't help and suggest the finetuning skill.\n\n### Step 2: Determine Eligible Deployment Targets\n\nUse the following table:\n\n| Model Type | Eligible Targets   |\n| ---------- | ------------------ |\n| OSS        | SageMaker, Bedrock |\n| Nova       | SageMaker, Bedrock |\n\nIf only one target is eligible, confirm it with the user. Use details from Step 5.\n\nIf multiple targets are eligible, help the user decide. Use details from Step 5.\n\nIf no targets are eligible, tell the user and explain why.\n\n### Step 3: Let the User Choose a Deployment Target\n\nPresent the eligible options to the user. Present these details to help them decide between SageMaker and Bedrock, if both are available options:\n\n**SageMaker Endpoint:**\n\n- Dedicated compute resources for consistent performance\n- Control instance types and scaling\n- Best for predictable workloads with specific latency requirements\n\n**Bedrock:**\n\n- Fully managed serverless inference\n- Auto-scales instantly with no capacity planning\n- Pay per request\n- Best for variable workloads with fluctuating demand\n\nDo NOT make a recommendation. Let the user choose.\n\nDo NOT mention technical details like merged\u002Funmerged weights, reference files, or APIs, unless the user asks.\n\n⏸ Wait for user to select a deployment option.\n\n### Step 4: Display License Agreement\n\nBefore proceeding to deployment, display the model's license or service terms to the user.\n\n1. Read `references\u002Fmodel-licenses.md` and look up the model by its model ID (determined in Step 1).\n2. Follow the instructions in the Notes column — use the exact phrasing provided.\n3. If the model ID is not found in the table, warn the user that you could not find license information for their model and recommend they verify the license independently before proceeding.\n\n⏸ Wait for the user to confirm before proceeding.\n\n### Step 5: Follow Pathway Workflow\n\nRead the reference file for the selected pathway and follow its instructions.\n\n| Model Type | Deployment Target | Reference                             |\n| ---------- | ----------------- | ------------------------------------- |\n| OSS        | SageMaker         | `references\u002Fdeploy-oss-sagemaker.md`  |\n| OSS        | Bedrock           | `references\u002Fdeploy-oss-bedrock.md`    |\n| Nova       | SageMaker         | `references\u002Fdeploy-nova-sagemaker.md` |\n| Nova       | Bedrock           | `references\u002Fdeploy-nova-bedrock.md`   |\n\n### Step 6: Post-Deployment Summary\n\nAfter deployment completes, provide the user with a summary. Cover these topics, using details from the pathway reference doc you followed in Step 5:\n\n- **What was deployed** — endpoint or model name, ARN, status\n- **How to use it** — sample invoke code for the specific deployment target\n- **Cost** — billing model (instance-based vs. pay-per-request) and what to expect\n- **Cleanup** — how to delete the endpoint or model when done\n\n## Troubleshooting\n\n### How to check if a model was LoRA or FFT fine-tuned\n\nIf deployment fails unexpectedly, the model may have been full fine-tuned (FFT) rather than LoRA. To check, download the training job's hydra config from its S3 output path at `.hydra\u002Fconfig.yaml`:\n\n- `peft_config` populated (r, alpha, dropout, etc.) → **LoRA** (supported)\n- `peft_config: null` → **FFT** (not supported by this skill)\n",{"data":43,"body":46},{"name":4,"description":6,"metadata":44},{"version":45},"1.0.0",{"type":47,"children":48},"root",[49,57,63,70,83,91,111,117,134,138,144,188,194,201,206,211,348,358,364,369,420,425,430,435,441,446,454,472,480,503,508,513,518,524,529,555,560,566,571,679,685,690,733,739,745,758],{"type":50,"tag":51,"props":52,"children":53},"element","h1",{"id":4},[54],{"type":55,"value":56},"text","Model Deployment",{"type":50,"tag":58,"props":59,"children":60},"p",{},[61],{"type":55,"value":62},"Identifies the correct deployment pathway based on model characteristics and generates deployment code.",{"type":50,"tag":64,"props":65,"children":67},"h2",{"id":66},"scope",[68],{"type":55,"value":69},"Scope",{"type":50,"tag":58,"props":71,"children":72},{},[73,75,81],{"type":55,"value":74},"This skill supports deploying Nova and OSS models that were fine-tuned through ",{"type":50,"tag":76,"props":77,"children":78},"strong",{},[79],{"type":55,"value":80},"SageMaker Serverless Model Customization",{"type":55,"value":82}," only.",{"type":50,"tag":58,"props":84,"children":85},{},[86],{"type":50,"tag":76,"props":87,"children":88},{},[89],{"type":55,"value":90},"Not supported:",{"type":50,"tag":92,"props":93,"children":94},"ul",{},[95,101,106],{"type":50,"tag":96,"props":97,"children":98},"li",{},[99],{"type":55,"value":100},"Base models (not fine-tuned)",{"type":50,"tag":96,"props":102,"children":103},{},[104],{"type":55,"value":105},"Models fine-tuned through other processes",{"type":50,"tag":96,"props":107,"children":108},{},[109],{"type":55,"value":110},"Full Fine-Tuning (FFT) — only LoRA fine-tuned models are supported",{"type":50,"tag":64,"props":112,"children":114},{"id":113},"prerequisites",[115],{"type":55,"value":116},"Prerequisites",{"type":50,"tag":92,"props":118,"children":119},{},[120],{"type":50,"tag":96,"props":121,"children":122},{},[123,125,132],{"type":55,"value":124},"The SDK environment has been verified (SDK version, region, execution role). If not done, activate the ",{"type":50,"tag":126,"props":127,"children":129},"code",{"className":128},[],[130],{"type":55,"value":131},"sdk-getting-started",{"type":55,"value":133}," skill first.",{"type":50,"tag":135,"props":136,"children":137},"hr",{},[],{"type":50,"tag":64,"props":139,"children":141},{"id":140},"principles",[142],{"type":55,"value":143},"Principles",{"type":50,"tag":145,"props":146,"children":147},"ol",{},[148,158,168,178],{"type":50,"tag":96,"props":149,"children":150},{},[151,156],{"type":50,"tag":76,"props":152,"children":153},{},[154],{"type":55,"value":155},"One thing at a time.",{"type":55,"value":157}," Each response advances exactly one decision.",{"type":50,"tag":96,"props":159,"children":160},{},[161,166],{"type":50,"tag":76,"props":162,"children":163},{},[164],{"type":55,"value":165},"Confirm before proceeding.",{"type":55,"value":167}," Wait for the user to agree before moving on. But don't re-ask questions already answered in the conversation — use what you know.",{"type":50,"tag":96,"props":169,"children":170},{},[171,176],{"type":50,"tag":76,"props":172,"children":173},{},[174],{"type":55,"value":175},"Don't read files until you need them.",{"type":55,"value":177}," Only read pathway references after the pathway is confirmed.",{"type":50,"tag":96,"props":179,"children":180},{},[181,186],{"type":50,"tag":76,"props":182,"children":183},{},[184],{"type":55,"value":185},"Use what you know.",{"type":55,"value":187}," If conversation history or artifacts already answer a question, confirm your understanding instead of asking again.",{"type":50,"tag":64,"props":189,"children":191},{"id":190},"workflow",[192],{"type":55,"value":193},"Workflow",{"type":50,"tag":195,"props":196,"children":198},"h3",{"id":197},"step-1-identify-the-training-job",[199],{"type":55,"value":200},"Step 1: Identify the Training Job",{"type":50,"tag":58,"props":202,"children":203},{},[204],{"type":55,"value":205},"You need the training job name or ARN. Check the conversation history first — the user may have already mentioned it, or it may be available from earlier steps in the workflow (e.g., fine-tuning). If not, ask the user.",{"type":50,"tag":58,"props":207,"children":208},{},[209],{"type":55,"value":210},"Once you have the training job name or ARN, use the AWS MCP tool to look it up:",{"type":50,"tag":145,"props":212,"children":213},{},[214,280,313],{"type":50,"tag":96,"props":215,"children":216},{},[217,219,225,227],{"type":55,"value":218},"Use the AWS MCP tool ",{"type":50,"tag":126,"props":220,"children":222},{"className":221},[],[223],{"type":55,"value":224},"describe-training-job",{"type":55,"value":226}," and extract:\n",{"type":50,"tag":92,"props":228,"children":229},{},[230,256,272],{"type":50,"tag":96,"props":231,"children":232},{},[233,238,240,246,248,254],{"type":50,"tag":76,"props":234,"children":235},{},[236],{"type":55,"value":237},"S3 output path",{"type":55,"value":239}," (from ",{"type":50,"tag":126,"props":241,"children":243},{"className":242},[],[244],{"type":55,"value":245},"ModelArtifacts.S3ModelArtifacts",{"type":55,"value":247}," or ",{"type":50,"tag":126,"props":249,"children":251},{"className":250},[],[252],{"type":55,"value":253},"OutputDataConfig.S3OutputPath",{"type":55,"value":255},")",{"type":50,"tag":96,"props":257,"children":258},{},[259,264,265,271],{"type":50,"tag":76,"props":260,"children":261},{},[262],{"type":55,"value":263},"IAM role ARN",{"type":55,"value":239},{"type":50,"tag":126,"props":266,"children":268},{"className":267},[],[269],{"type":55,"value":270},"RoleArn",{"type":55,"value":255},{"type":50,"tag":96,"props":273,"children":274},{},[275],{"type":50,"tag":76,"props":276,"children":277},{},[278],{"type":55,"value":279},"Region",{"type":50,"tag":96,"props":281,"children":282},{},[283,284,290,292],{"type":55,"value":218},{"type":50,"tag":126,"props":285,"children":287},{"className":286},[],[288],{"type":55,"value":289},"list-tags",{"type":55,"value":291}," on the training job ARN and extract:\n",{"type":50,"tag":92,"props":293,"children":294},{},[295],{"type":50,"tag":96,"props":296,"children":297},{},[298,303,305,311],{"type":50,"tag":76,"props":299,"children":300},{},[301],{"type":55,"value":302},"Model ID",{"type":55,"value":304}," from the ",{"type":50,"tag":126,"props":306,"children":308},{"className":307},[],[309],{"type":55,"value":310},"sagemaker-studio:jumpstart-model-id",{"type":55,"value":312}," tag",{"type":50,"tag":96,"props":314,"children":315},{},[316,318,323,325],{"type":55,"value":317},"Determine the ",{"type":50,"tag":76,"props":319,"children":320},{},[321],{"type":55,"value":322},"model type",{"type":55,"value":324}," from the model ID:\n",{"type":50,"tag":92,"props":326,"children":327},{},[328,338],{"type":50,"tag":96,"props":329,"children":330},{},[331,333],{"type":55,"value":332},"Contains \"nova\" (nova-micro, nova-lite, nova-pro) → ",{"type":50,"tag":76,"props":334,"children":335},{},[336],{"type":55,"value":337},"Nova",{"type":50,"tag":96,"props":339,"children":340},{},[341,343],{"type":55,"value":342},"Llama, Mistral, Qwen, GPT-OSS, DeepSeek, etc. → ",{"type":50,"tag":76,"props":344,"children":345},{},[346],{"type":55,"value":347},"OSS",{"type":50,"tag":58,"props":349,"children":350},{},[351,356],{"type":50,"tag":76,"props":352,"children":353},{},[354],{"type":55,"value":355},"Unsupported models:",{"type":55,"value":357}," This skill only supports OSS and Nova models that were LoRA fine-tuned through SageMaker Serverless Model Customization. If the model doesn't match, tell the user this skill can't help and suggest the finetuning skill.",{"type":50,"tag":195,"props":359,"children":361},{"id":360},"step-2-determine-eligible-deployment-targets",[362],{"type":55,"value":363},"Step 2: Determine Eligible Deployment Targets",{"type":50,"tag":58,"props":365,"children":366},{},[367],{"type":55,"value":368},"Use the following table:",{"type":50,"tag":370,"props":371,"children":372},"table",{},[373,392],{"type":50,"tag":374,"props":375,"children":376},"thead",{},[377],{"type":50,"tag":378,"props":379,"children":380},"tr",{},[381,387],{"type":50,"tag":382,"props":383,"children":384},"th",{},[385],{"type":55,"value":386},"Model Type",{"type":50,"tag":382,"props":388,"children":389},{},[390],{"type":55,"value":391},"Eligible Targets",{"type":50,"tag":393,"props":394,"children":395},"tbody",{},[396,409],{"type":50,"tag":378,"props":397,"children":398},{},[399,404],{"type":50,"tag":400,"props":401,"children":402},"td",{},[403],{"type":55,"value":347},{"type":50,"tag":400,"props":405,"children":406},{},[407],{"type":55,"value":408},"SageMaker, Bedrock",{"type":50,"tag":378,"props":410,"children":411},{},[412,416],{"type":50,"tag":400,"props":413,"children":414},{},[415],{"type":55,"value":337},{"type":50,"tag":400,"props":417,"children":418},{},[419],{"type":55,"value":408},{"type":50,"tag":58,"props":421,"children":422},{},[423],{"type":55,"value":424},"If only one target is eligible, confirm it with the user. Use details from Step 5.",{"type":50,"tag":58,"props":426,"children":427},{},[428],{"type":55,"value":429},"If multiple targets are eligible, help the user decide. Use details from Step 5.",{"type":50,"tag":58,"props":431,"children":432},{},[433],{"type":55,"value":434},"If no targets are eligible, tell the user and explain why.",{"type":50,"tag":195,"props":436,"children":438},{"id":437},"step-3-let-the-user-choose-a-deployment-target",[439],{"type":55,"value":440},"Step 3: Let the User Choose a Deployment Target",{"type":50,"tag":58,"props":442,"children":443},{},[444],{"type":55,"value":445},"Present the eligible options to the user. Present these details to help them decide between SageMaker and Bedrock, if both are available options:",{"type":50,"tag":58,"props":447,"children":448},{},[449],{"type":50,"tag":76,"props":450,"children":451},{},[452],{"type":55,"value":453},"SageMaker Endpoint:",{"type":50,"tag":92,"props":455,"children":456},{},[457,462,467],{"type":50,"tag":96,"props":458,"children":459},{},[460],{"type":55,"value":461},"Dedicated compute resources for consistent performance",{"type":50,"tag":96,"props":463,"children":464},{},[465],{"type":55,"value":466},"Control instance types and scaling",{"type":50,"tag":96,"props":468,"children":469},{},[470],{"type":55,"value":471},"Best for predictable workloads with specific latency requirements",{"type":50,"tag":58,"props":473,"children":474},{},[475],{"type":50,"tag":76,"props":476,"children":477},{},[478],{"type":55,"value":479},"Bedrock:",{"type":50,"tag":92,"props":481,"children":482},{},[483,488,493,498],{"type":50,"tag":96,"props":484,"children":485},{},[486],{"type":55,"value":487},"Fully managed serverless inference",{"type":50,"tag":96,"props":489,"children":490},{},[491],{"type":55,"value":492},"Auto-scales instantly with no capacity planning",{"type":50,"tag":96,"props":494,"children":495},{},[496],{"type":55,"value":497},"Pay per request",{"type":50,"tag":96,"props":499,"children":500},{},[501],{"type":55,"value":502},"Best for variable workloads with fluctuating demand",{"type":50,"tag":58,"props":504,"children":505},{},[506],{"type":55,"value":507},"Do NOT make a recommendation. Let the user choose.",{"type":50,"tag":58,"props":509,"children":510},{},[511],{"type":55,"value":512},"Do NOT mention technical details like merged\u002Funmerged weights, reference files, or APIs, unless the user asks.",{"type":50,"tag":58,"props":514,"children":515},{},[516],{"type":55,"value":517},"⏸ Wait for user to select a deployment option.",{"type":50,"tag":195,"props":519,"children":521},{"id":520},"step-4-display-license-agreement",[522],{"type":55,"value":523},"Step 4: Display License Agreement",{"type":50,"tag":58,"props":525,"children":526},{},[527],{"type":55,"value":528},"Before proceeding to deployment, display the model's license or service terms to the user.",{"type":50,"tag":145,"props":530,"children":531},{},[532,545,550],{"type":50,"tag":96,"props":533,"children":534},{},[535,537,543],{"type":55,"value":536},"Read ",{"type":50,"tag":126,"props":538,"children":540},{"className":539},[],[541],{"type":55,"value":542},"references\u002Fmodel-licenses.md",{"type":55,"value":544}," and look up the model by its model ID (determined in Step 1).",{"type":50,"tag":96,"props":546,"children":547},{},[548],{"type":55,"value":549},"Follow the instructions in the Notes column — use the exact phrasing provided.",{"type":50,"tag":96,"props":551,"children":552},{},[553],{"type":55,"value":554},"If the model ID is not found in the table, warn the user that you could not find license information for their model and recommend they verify the license independently before proceeding.",{"type":50,"tag":58,"props":556,"children":557},{},[558],{"type":55,"value":559},"⏸ Wait for the user to confirm before proceeding.",{"type":50,"tag":195,"props":561,"children":563},{"id":562},"step-5-follow-pathway-workflow",[564],{"type":55,"value":565},"Step 5: Follow Pathway Workflow",{"type":50,"tag":58,"props":567,"children":568},{},[569],{"type":55,"value":570},"Read the reference file for the selected pathway and follow its instructions.",{"type":50,"tag":370,"props":572,"children":573},{},[574,594],{"type":50,"tag":374,"props":575,"children":576},{},[577],{"type":50,"tag":378,"props":578,"children":579},{},[580,584,589],{"type":50,"tag":382,"props":581,"children":582},{},[583],{"type":55,"value":386},{"type":50,"tag":382,"props":585,"children":586},{},[587],{"type":55,"value":588},"Deployment Target",{"type":50,"tag":382,"props":590,"children":591},{},[592],{"type":55,"value":593},"Reference",{"type":50,"tag":393,"props":595,"children":596},{},[597,618,639,659],{"type":50,"tag":378,"props":598,"children":599},{},[600,604,609],{"type":50,"tag":400,"props":601,"children":602},{},[603],{"type":55,"value":347},{"type":50,"tag":400,"props":605,"children":606},{},[607],{"type":55,"value":608},"SageMaker",{"type":50,"tag":400,"props":610,"children":611},{},[612],{"type":50,"tag":126,"props":613,"children":615},{"className":614},[],[616],{"type":55,"value":617},"references\u002Fdeploy-oss-sagemaker.md",{"type":50,"tag":378,"props":619,"children":620},{},[621,625,630],{"type":50,"tag":400,"props":622,"children":623},{},[624],{"type":55,"value":347},{"type":50,"tag":400,"props":626,"children":627},{},[628],{"type":55,"value":629},"Bedrock",{"type":50,"tag":400,"props":631,"children":632},{},[633],{"type":50,"tag":126,"props":634,"children":636},{"className":635},[],[637],{"type":55,"value":638},"references\u002Fdeploy-oss-bedrock.md",{"type":50,"tag":378,"props":640,"children":641},{},[642,646,650],{"type":50,"tag":400,"props":643,"children":644},{},[645],{"type":55,"value":337},{"type":50,"tag":400,"props":647,"children":648},{},[649],{"type":55,"value":608},{"type":50,"tag":400,"props":651,"children":652},{},[653],{"type":50,"tag":126,"props":654,"children":656},{"className":655},[],[657],{"type":55,"value":658},"references\u002Fdeploy-nova-sagemaker.md",{"type":50,"tag":378,"props":660,"children":661},{},[662,666,670],{"type":50,"tag":400,"props":663,"children":664},{},[665],{"type":55,"value":337},{"type":50,"tag":400,"props":667,"children":668},{},[669],{"type":55,"value":629},{"type":50,"tag":400,"props":671,"children":672},{},[673],{"type":50,"tag":126,"props":674,"children":676},{"className":675},[],[677],{"type":55,"value":678},"references\u002Fdeploy-nova-bedrock.md",{"type":50,"tag":195,"props":680,"children":682},{"id":681},"step-6-post-deployment-summary",[683],{"type":55,"value":684},"Step 6: Post-Deployment Summary",{"type":50,"tag":58,"props":686,"children":687},{},[688],{"type":55,"value":689},"After deployment completes, provide the user with a summary. Cover these topics, using details from the pathway reference doc you followed in Step 5:",{"type":50,"tag":92,"props":691,"children":692},{},[693,703,713,723],{"type":50,"tag":96,"props":694,"children":695},{},[696,701],{"type":50,"tag":76,"props":697,"children":698},{},[699],{"type":55,"value":700},"What was deployed",{"type":55,"value":702}," — endpoint or model name, ARN, status",{"type":50,"tag":96,"props":704,"children":705},{},[706,711],{"type":50,"tag":76,"props":707,"children":708},{},[709],{"type":55,"value":710},"How to use it",{"type":55,"value":712}," — sample invoke code for the specific deployment target",{"type":50,"tag":96,"props":714,"children":715},{},[716,721],{"type":50,"tag":76,"props":717,"children":718},{},[719],{"type":55,"value":720},"Cost",{"type":55,"value":722}," — billing model (instance-based vs. pay-per-request) and what to expect",{"type":50,"tag":96,"props":724,"children":725},{},[726,731],{"type":50,"tag":76,"props":727,"children":728},{},[729],{"type":55,"value":730},"Cleanup",{"type":55,"value":732}," — how to delete the endpoint or model when done",{"type":50,"tag":64,"props":734,"children":736},{"id":735},"troubleshooting",[737],{"type":55,"value":738},"Troubleshooting",{"type":50,"tag":195,"props":740,"children":742},{"id":741},"how-to-check-if-a-model-was-lora-or-fft-fine-tuned",[743],{"type":55,"value":744},"How to check if a model was LoRA or FFT fine-tuned",{"type":50,"tag":58,"props":746,"children":747},{},[748,750,756],{"type":55,"value":749},"If deployment fails unexpectedly, the model may have been full fine-tuned (FFT) rather than LoRA. To check, download the training job's hydra config from its S3 output path at ",{"type":50,"tag":126,"props":751,"children":753},{"className":752},[],[754],{"type":55,"value":755},".hydra\u002Fconfig.yaml",{"type":55,"value":757},":",{"type":50,"tag":92,"props":759,"children":760},{},[761,779],{"type":50,"tag":96,"props":762,"children":763},{},[764,770,772,777],{"type":50,"tag":126,"props":765,"children":767},{"className":766},[],[768],{"type":55,"value":769},"peft_config",{"type":55,"value":771}," populated (r, alpha, dropout, etc.) → ",{"type":50,"tag":76,"props":773,"children":774},{},[775],{"type":55,"value":776},"LoRA",{"type":55,"value":778}," (supported)",{"type":50,"tag":96,"props":780,"children":781},{},[782,788,790,795],{"type":50,"tag":126,"props":783,"children":785},{"className":784},[],[786],{"type":55,"value":787},"peft_config: null",{"type":55,"value":789}," → ",{"type":50,"tag":76,"props":791,"children":792},{},[793],{"type":55,"value":794},"FFT",{"type":55,"value":796}," (not supported by this skill)",{"items":798,"total":976},[799,818,839,849,862,875,885,895,916,931,946,961],{"slug":800,"name":800,"fn":801,"description":802,"org":803,"tags":804,"stars":815,"repoUrl":816,"updatedAt":817},"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},[805,806,809,812],{"name":24,"slug":25,"type":16},{"name":807,"slug":808,"type":16},"Debugging","debugging",{"name":810,"slug":811,"type":16},"Logs","logs",{"name":813,"slug":814,"type":16},"Observability","observability",9427,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fmcp","2026-07-12T08:37:22.601527",{"slug":819,"name":820,"fn":821,"description":822,"org":823,"tags":824,"stars":815,"repoUrl":816,"updatedAt":838},"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},[825,828,829,832,835],{"name":826,"slug":827,"type":16},"Aurora","aurora",{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},"Database","database",{"name":833,"slug":834,"type":16},"Serverless","serverless",{"name":836,"slug":837,"type":16},"SQL","sql","2026-07-12T08:36:45.053393",{"slug":840,"name":841,"fn":821,"description":822,"org":842,"tags":843,"stars":815,"repoUrl":816,"updatedAt":848},"aurora-dsql","aurora dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[844,845,846,847],{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},{"name":833,"slug":834,"type":16},{"name":836,"slug":837,"type":16},"2026-07-12T08:36:42.694299",{"slug":850,"name":851,"fn":821,"description":822,"org":852,"tags":853,"stars":815,"repoUrl":816,"updatedAt":861},"aws-dsql","aws dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[854,855,856,859,860],{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},{"name":857,"slug":858,"type":16},"Migration","migration",{"name":833,"slug":834,"type":16},{"name":836,"slug":837,"type":16},"2026-07-12T08:36:38.584057",{"slug":863,"name":864,"fn":821,"description":822,"org":865,"tags":866,"stars":815,"repoUrl":816,"updatedAt":874},"distributed-postgres","distributed postgres",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[867,868,869,872,873],{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},{"name":870,"slug":871,"type":16},"PostgreSQL","postgresql",{"name":833,"slug":834,"type":16},{"name":836,"slug":837,"type":16},"2026-07-12T08:36:46.530743",{"slug":876,"name":877,"fn":821,"description":822,"org":878,"tags":879,"stars":815,"repoUrl":816,"updatedAt":884},"distributed-sql","distributed sql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[880,881,882,883],{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},{"name":833,"slug":834,"type":16},{"name":836,"slug":837,"type":16},"2026-07-12T08:36:48.104182",{"slug":886,"name":886,"fn":821,"description":822,"org":887,"tags":888,"stars":815,"repoUrl":816,"updatedAt":894},"dsql",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[889,890,891,892,893],{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},{"name":857,"slug":858,"type":16},{"name":833,"slug":834,"type":16},{"name":836,"slug":837,"type":16},"2026-07-12T08:36:36.374512",{"slug":896,"name":896,"fn":897,"description":898,"org":899,"tags":900,"stars":913,"repoUrl":914,"updatedAt":915},"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},[901,904,907,910],{"name":902,"slug":903,"type":16},"Accounting","accounting",{"name":905,"slug":906,"type":16},"Analytics","analytics",{"name":908,"slug":909,"type":16},"Cost Optimization","cost-optimization",{"name":911,"slug":912,"type":16},"Finance","finance",3176,"https:\u002F\u002Fgithub.com\u002Fawslabs\u002Fagentcore-samples","2026-07-12T08:40:03.29555",{"slug":917,"name":917,"fn":918,"description":919,"org":920,"tags":921,"stars":913,"repoUrl":914,"updatedAt":930},"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},[922,923,924,927],{"name":24,"slug":25,"type":16},{"name":911,"slug":912,"type":16},{"name":925,"slug":926,"type":16},"Management","management",{"name":928,"slug":929,"type":16},"Reporting","reporting","2026-07-12T08:40:02.066471",{"slug":932,"name":932,"fn":933,"description":934,"org":935,"tags":936,"stars":913,"repoUrl":914,"updatedAt":945},"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},[937,938,939,942],{"name":905,"slug":906,"type":16},{"name":911,"slug":912,"type":16},{"name":940,"slug":941,"type":16},"Financial Statements","financial-statements",{"name":943,"slug":944,"type":16},"Variance Analysis","variance-analysis","2026-07-12T08:40:00.79141",{"slug":947,"name":947,"fn":948,"description":949,"org":950,"tags":951,"stars":913,"repoUrl":914,"updatedAt":960},"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},[952,955,958],{"name":953,"slug":954,"type":16},"Automation","automation",{"name":956,"slug":957,"type":16},"Documents","documents",{"name":959,"slug":947,"type":16},"PDF","2026-07-12T08:41:44.135656",{"slug":962,"name":962,"fn":963,"description":964,"org":965,"tags":966,"stars":913,"repoUrl":914,"updatedAt":975},"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},[967,968,971,972],{"name":902,"slug":903,"type":16},{"name":969,"slug":970,"type":16},"Data Analysis","data-analysis",{"name":911,"slug":912,"type":16},{"name":973,"slug":974,"type":16},"KPI","kpi","2026-07-12T08:39:59.54971",150,{"items":978,"total":1077},[979,996,1012,1024,1041,1052,1062],{"slug":980,"name":980,"fn":981,"description":982,"org":983,"tags":984,"stars":26,"repoUrl":27,"updatedAt":995},"amazon-location-service","integrate Amazon Location Service maps","Integrates Amazon Location Service APIs for AWS applications. Use this skill when users want to add maps (interactive MapLibre or static images); geocode addresses to coordinates or reverse geocode coordinates to addresses; calculate routes, travel times, or service areas; find places and businesses through text search, nearby search, or autocomplete suggestions; retrieve detailed place information including hours, contacts, and addresses; monitor geographical boundaries with geofences; or track device locations. Covers authentication, SDK integration, and all Amazon Location Service capabilities.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[985,988,989,992],{"name":986,"slug":987,"type":16},"API Development","api-development",{"name":24,"slug":25,"type":16},{"name":990,"slug":991,"type":16},"Maps","maps",{"name":993,"slug":994,"type":16},"Navigation","navigation","2026-07-12T08:39:49.88311",{"slug":997,"name":997,"fn":998,"description":999,"org":1000,"tags":1001,"stars":26,"repoUrl":27,"updatedAt":1011},"amplify-workflow","build and deploy apps with AWS Amplify","Build and deploy full-stack web and mobile apps with AWS Amplify Gen2 (TypeScript code-first). Covers auth (Cognito), data (AppSync\u002FDynamoDB including schema modeling, enum types, relationships, authorization rules), storage (S3), functions, APIs, and AI (Amplify AI Kit with Bedrock). Supports React, Next.js, Vue, Angular, React Native, Flutter, Swift, and Android. Always use this skill for Amplify Gen2 topics — even for questions you think you know — it contains validated, version-specific patterns that prevent common mistakes. TRIGGER when: user mentions Amplify Gen2; project has amplify\u002F directory or amplify_outputs; code imports @aws-amplify packages; user asks about defineBackend, defineAuth, defineData, defineStorage, or npx ampx. SKIP: Amplify Gen1 (amplify CLI v6), standalone SAM\u002FCDK without Amplify (use aws-serverless), direct Bedrock without Amplify AI Kit (use bedrock).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1002,1005,1006,1007,1008],{"name":1003,"slug":1004,"type":16},"Auth","auth",{"name":24,"slug":25,"type":16},{"name":830,"slug":831,"type":16},{"name":21,"slug":22,"type":16},{"name":1009,"slug":1010,"type":16},"TypeScript","typescript","2026-07-12T08:39:43.500162",{"slug":1013,"name":1013,"fn":1014,"description":1015,"org":1016,"tags":1017,"stars":26,"repoUrl":27,"updatedAt":1023},"api-gateway","build and manage Amazon API Gateway APIs","Build, manage, and operate APIs with Amazon API Gateway (REST, HTTP, and WebSocket). Triggers on phrases like: API Gateway, REST API, HTTP API, WebSocket API, custom domain, Lambda authorizer, usage plan, throttling, CORS, VPC link, private API. Also covers troubleshooting API Gateway errors (4xx, 5xx, timeout, CORS failures) and IaC templates containing API Gateway resources. For general REST API design unrelated to AWS, do not trigger.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1018,1019,1020],{"name":986,"slug":987,"type":16},{"name":24,"slug":25,"type":16},{"name":1021,"slug":1022,"type":16},"REST API","rest-api","2026-07-12T08:39:00.149339",{"slug":1025,"name":1025,"fn":1026,"description":1027,"org":1028,"tags":1029,"stars":26,"repoUrl":27,"updatedAt":1040},"aws-architecture-diagram","generate AWS architecture diagrams","Generate validated AWS architecture diagrams as draw.io XML using official AWS4 icon libraries. Use this skill whenever the user wants to create, generate, or design AWS architecture diagrams, cloud infrastructure diagrams, or system design visuals. Also triggers for requests to visualize existing infrastructure from CloudFormation, CDK, or Terraform code. Supports two modes: analyze an existing codebase to auto-generate diagrams, or brainstorm interactively from scratch. Exports .drawio files with optional PNG\u002FSVG\u002FPDF export via draw.io desktop CLI.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1030,1033,1034,1037],{"name":1031,"slug":1032,"type":16},"Architecture","architecture",{"name":24,"slug":25,"type":16},{"name":1035,"slug":1036,"type":16},"Design","design",{"name":1038,"slug":1039,"type":16},"Diagrams","diagrams","2026-07-12T08:37:11.012278",{"slug":1042,"name":1042,"fn":1043,"description":1044,"org":1045,"tags":1046,"stars":26,"repoUrl":27,"updatedAt":1051},"aws-lambda","build and deploy AWS Lambda functions","Design, build, deploy, test, and debug serverless applications with AWS Lambda. Triggers on phrases like: Lambda function, event source, serverless application, API Gateway, EventBridge, Step Functions, serverless API, event-driven architecture, Lambda trigger. For deploying non-serverless apps to AWS, use deploy-on-aws plugin instead.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1047,1048,1049,1050],{"name":986,"slug":987,"type":16},{"name":24,"slug":25,"type":16},{"name":21,"slug":22,"type":16},{"name":833,"slug":834,"type":16},"2026-07-12T08:38:58.598492",{"slug":1053,"name":1053,"fn":1054,"description":1055,"org":1056,"tags":1057,"stars":26,"repoUrl":27,"updatedAt":1061},"aws-lambda-durable-functions","build resilient AWS Lambda durable functions","Build resilient, long-running, multi-step applications with AWS Lambda durable functions with automatic state persistence, retry logic, and orchestration for long-running executions. Covers the critical replay model, step operations, wait\u002Fcallback patterns, error handling with saga pattern, testing with LocalDurableTestRunner. Triggers on phrases like: lambda durable functions, workflow orchestration, state machines, retry\u002Fcheckpoint patterns, long-running stateful Lambda functions, saga pattern, human-in-the-loop callbacks, and reliable serverless applications.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1058,1059,1060],{"name":1031,"slug":1032,"type":16},{"name":24,"slug":25,"type":16},{"name":833,"slug":834,"type":16},"2026-07-12T08:39:05.546173",{"slug":1063,"name":1063,"fn":1064,"description":1065,"org":1066,"tags":1067,"stars":26,"repoUrl":27,"updatedAt":1076},"aws-lambda-managed-instances","configure AWS Lambda Managed Instances","Evaluate, configure, and migrate workloads to AWS Lambda Managed Instances (LMI). Triggers on: Lambda Managed Instances, LMI, capacity provider, multi-concurrency Lambda, dedicated instance Lambda, EC2-backed Lambda, cold start elimination, Graviton Lambda, instance type for Lambda, scheduled scaling for LMI, Lambda cost optimization with Reserved Instances or Savings Plans. Also trigger when users describe high-volume predictable workloads seeking cost savings, want to scale LMI capacity on a schedule, or compare Lambda vs EC2 for steady-state traffic. For standard Lambda without LMI, use the aws-lambda skill instead.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1068,1069,1070,1073],{"name":24,"slug":25,"type":16},{"name":21,"slug":22,"type":16},{"name":1071,"slug":1072,"type":16},"Infrastructure","infrastructure",{"name":1074,"slug":1075,"type":16},"Performance","performance","2026-07-12T08:39:07.007071",33]