agentic-actions-audito…
Audit GitHub Actions that run AI agents for prompt injection, unsafe interpolation, sandbox gaps, and permissive actor rules. Use…
Implement a production SageMaker endpoint with autoscaling, CloudWatch alarms, and tags. Use after the serving image and IAM role are known; use the deployment planner first when architecture is undecided.
$ npx -y skills add waybarrios/opencode-power-pack --skill hf-cloud-sagemaker-production-defaults --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/hf-cloud-sagemaker-production-defaultsContext preview
The summary Claude sees to decide when to auto-load this skill.
Implement a production SageMaker endpoint with autoscaling, CloudWatch alarms, and tags. Use after the serving image and IAM role are known; use the deployment planner first when architecture is undecided.
name: hf-cloud-sagemaker-production-defaults description: "Implement a production SageMaker endpoint with autoscaling, CloudWatch alarms, and tags. Use after the serving image and IAM role are known; use the deployment planner first when architecture is undecided." license: Apache-2.0 (modified; see UPSTREAMS.json)
The difference between a demo endpoint and one you can leave running is: it scales with traffic, it tells you when it breaks, and you can debug it later. This skill makes those three the default rather than optional extras.
By the time this skill runs, the planner has chosen a real-time endpoint, IAM has a usable role, and image-selection has resolved a container URI + AMI version. This skill turns those into an actual deployment.
For every endpoint, the skill creates these as a unit:
1. **SageMaker Model** — image + env vars + execution role + S3 artifacts 2. **Endpoint config** — instance type, initial count, optional data capture 3. **Endpoint** — the real-time endpoint serving inference 4. **Autoscaling target + policy** — target tracking on invocations per instance 5. **CloudWatch alarms** — latency, errors, platform overhead
Data capture (logging requests/responses to S3) is **off by default** — useful for debugging but creates ongoing S3 costs the user didn't necessarily ask for. Enable with `--enable-data-capture`.
All resources get a consistent tag set including `CreatedBy=agentic-deploy-skills` for later cleanup.
Defaults and reasoning in `references/deployment-template.md`.
For a text-generation LLM (vLLM):
python scripts/deploy.py \
--model-name qwen3-medical \
--image-uri "$IMAGE_URI" \
--inference-ami-version "$AMI" \
--role-arn "$ROLE_ARN" \
--instance-type ml.g5.xlarge \
--region "$REGION" \
--env SM_VLLM_MODEL=Qwen/Qwen3-0.6B \
--env SM_VLLM_HOST=0.0.0.0 \
--env SM_VLLM_TRUST_REMOTE_CODE=true \
--env SM_VLLM_MAX_MODEL_LEN=4096For an embedding model (TEI, often on CPU):
python scripts/deploy.py \
--model-name bge-large-embeddings \
--image-uri "$IMAGE_URI" \
--role-arn "$ROLE_ARN" \
--instance-type ml.c6i.2xlarge \
--region "$REGION" \
--env HF_MODEL_ID=BAAI/bge-large-en-v1.5Note: TEI deployments **do not** need `--inference-ami-version`. That flag is vLLM-specific. TEI env vars are also simpler (`HF_MODEL_ID` instead of `SM_VLLM_*`, no host or trust-remote-code to configure).
Where each value comes from:
| Parameter | Source | |---|---| | `--image-uri` | `hf-cloud-serving-image-selection` — agent reads from the AWS DLC catalog page | | `--inference-ami-version` | `hf-cloud-serving-image-selection` — required for vLLM tags containing cu130+ | | `--role-arn` | `hf-cloud-sagemaker-iam-preflight` (`check_role.py`) | | `--region` | `hf-cloud-aws-context-discovery` | | `--instance-type` | User input or planner recommendation | | `--env` | Model-specific; see `hf-cloud-serving-image-selection` for required `SM_VLLM_*` vars | | `--model-s3-uri` | Optional — S3 path to model artifacts; omit if loading from HF Hub |
The script creates resources in order with error handling, waits for `InService` (up to 30 min), surfaces failure reasons, registers autoscaling and alarms, and prints a summary including the teardown command. Outputs a JSON blob on stdout with endpoint/config/model names for downstream scripting.
The scripts ship with this skill. If the installed copy is missing the `scripts/` directory (some harnesses copy only SKILL.md on install), fetch them from the source repo rather than re-implementing them from this description.
**Cold-start expectation**: when the model loads from HF Hub, the download happens inside the container after the endpoint starts — 5–15+ minutes to InService is normal, not a failure. `deploy.py` waits 30 minutes; if you write custom wait code, don't time out at 15. Pre-staging weights in S3 (`--model-s3-uri`) cuts this and removes the Hub dependency.
`InService` only means the container answered `/ping`. In MMS-based containers (HF Inference Toolkit) the Java front-end answers pings even while the Python worker crash-loops — an endpoint can be InService and serve nothing. Two checks, always:
1. **One real invocation.**
2. **Scan the endpoint logs for worker-crash markers** — catches the crash-loop case even when the smoke request merely times out:
aws logs filter-log-events \
--log-group-name /aws/sagemaker/Endpoints/<endpoint-name> \
--filter-pattern '?"Worker died" ?"Load model failed" ?"ImportError"' \
--region <region> --max-items 5Only report the deployment complete after both pass. If the log scan hits, surface the actual traceback from CloudWatch — not the InService status.
Once the endpoint is `InService`, test it with the bundled helper. It is cross-platform and **BOM-safe** — use it instead of hand-writing a payload file and calling `invoke-endpoint` directly:
# macOS / Linux
python3 scripts/invoke_endpoint.py \
--endpoint-name <endpoint-name> \
--payload '{"inputs": "Hello"}' \
--region "$REGION"# Windows (PowerShell)
python scripts\invoke_endpoint.py `
--endpoint-name <endpoint-name> `
--payload-file payload.json `
--region $REGIONIt accepts either `--payload '<json>'` (inline) or `--payload-file <path>`, validates JSON, writes the request body as plain UTF-8, invokes the endpoint, and prints the respons
54 rigorous skills for Codex, OpenCode, and Pi: code review, security audit, feature development, frontend design, MCP tools, Hugging Face ML/training, and more.
Audit GitHub Actions that run AI agents for prompt injection, unsafe interpolation, sandbox gaps, and permissive actor rules. Use…
Audit and improve project-rules files (AGENTS.md, CLAUDE.md, .agents/instructions, local overrides) so the agent keeps accurate…
Capture learnings from the current session into the project-rules file (AGENTS.md, CLAUDE.md, or local override) so future…
Operational rubric that turns "don't make AI slop" into observable properties, severity levels, evidence requirements, and repair…
Design a feature architecture by analyzing existing codebase patterns and conventions, then provide a comprehensive…
Deeply analyze an existing codebase feature by tracing execution paths, mapping architecture layers, understanding patterns and…