SageMaker IAM Role Preflight
huggingface/skills
Finds or validates a usable SageMaker execution role before deploying or training, so scripts do not try to create IAM roles they lack permission to create.
The Smithy JSON AST facts and model invariants the SmithyDotNet generator relies on.
$ npx skills add aws/aws-sdk-net --skill smithy-ast-model -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install aws/aws-sdk-net smithy-ast-model --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/aws/aws-sdk-net.git skills-src && mkdir -p .claude/skills && cp -r skills-src/generator/SmithyDotNet/skills/smithy-ast-model .claude/skills/smithy-ast-model && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "smithy-ast-model" agent skill from https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-model into .claude/skills/smithy-ast-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smithy-ast-model", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-modelType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add aws/aws-sdk-net --skill smithy-ast-model -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install aws/aws-sdk-net smithy-ast-model --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aws/aws-sdk-net.git skills-src && mkdir -p .agents/skills && cp -r skills-src/generator/SmithyDotNet/skills/smithy-ast-model .agents/skills/smithy-ast-model && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "smithy-ast-model" agent skill from https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-model into .agents/skills/smithy-ast-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smithy-ast-model", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add aws/aws-sdk-net --skill smithy-ast-model -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install aws/aws-sdk-net smithy-ast-model --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aws/aws-sdk-net.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/generator/SmithyDotNet/skills/smithy-ast-model .cursor/skills/smithy-ast-model && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "smithy-ast-model" agent skill from https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-model into .cursor/skills/smithy-ast-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smithy-ast-model", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/aws/aws-sdk-net.git --path generator/SmithyDotNet/skills/smithy-ast-model--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add aws/aws-sdk-net --skill smithy-ast-model -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install aws/aws-sdk-net smithy-ast-model --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aws/aws-sdk-net.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/generator/SmithyDotNet/skills/smithy-ast-model .gemini/skills/smithy-ast-model && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "smithy-ast-model" agent skill from https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-model into .gemini/skills/smithy-ast-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smithy-ast-model", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install aws/aws-sdk-net smithy-ast-modelInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add aws/aws-sdk-net --skill smithy-ast-model -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/aws/aws-sdk-net.git skills-src && mkdir -p .github/skills && cp -r skills-src/generator/SmithyDotNet/skills/smithy-ast-model .github/skills/smithy-ast-model && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "smithy-ast-model" agent skill from https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-model into .github/skills/smithy-ast-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smithy-ast-model", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add aws/aws-sdk-net --skill smithy-ast-model -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install aws/aws-sdk-net smithy-ast-model --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/aws/aws-sdk-net.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/generator/SmithyDotNet/skills/smithy-ast-model .opencode/skills/smithy-ast-model && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "smithy-ast-model" agent skill from https://github.com/aws/aws-sdk-net/tree/main/generator/SmithyDotNet/skills/smithy-ast-model into .opencode/skills/smithy-ast-model/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smithy-ast-model", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
smithy-ast-modelThe Smithy JSON AST facts and model invariants the SmithyDotNet generator relies on.
Smithy Ast Model is an agent skill from aws/aws-sdk-net, published by the product's own GitHub organization. The Smithy JSON AST facts and model invariants the SmithyDotNet generator relies on. Use when touching Model/ (shapes, traits, the service index).
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It works with Amazon Web Services. The repository describes itself as: The official AWS SDK for .NET. For more information on the AWS SDK for .NET, see our web site:. The licence is Apache-2.0.
Read from SKILL.md and the folder at commit f36df89. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
smithy.ioFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Smithy Ast Model loads about 1.4k tokens when it runs. Until then it costs about 41 tokens; SKILL.md has 701 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from aws/aws-sdk-net at commit f36df89, republished under its Apache-2.0 licence (© aws). 701 words, ~1,353 tokens.
.claude/skills/smithy-ast-model/SKILL.md (or your agent's skills folder).The model layer is a typed, read-only view of the Smithy JSON AST:
smithy (version "2.0"), shapes (keyed by absolute shape ID), metadata. How it is deserialized is an
implementation detail documented in the code; this skill records what the rest of the generator may assume.
Every shape has an absolute ID, com.amazonaws.cloudtraildata#AuditEvent; members append $member
(...#AuditEvent$id). Parsing follows the spec: exactly
one #, an optional $member, every segment non-empty. The trap is the two string forms: the
absolute name omits $member (it is the shapes dictionary key), while the canonical string form
includes it.
A shape ID appears as a value in two JSON forms: a plain string ("target": "..." inside a member) and a
wrapper object ("input": { "target": "..." } for operation input/output and service operation lists).
Both resolve to the same shape ID type.
union derives from structure (same members) and is generated as a plain structure, unless it is
@streaming (an event stream, see sdk-conventions).enum/intEnum member traits carry @enumValue; the wire value, not the member name, drives generation.
A string shape carrying the legacy smithy.api#enum trait is normalized to an enum shape at load;
nothing downstream sees smithy.api#enum.type deserializes to null with a stderr warning (forward compatibility).Shape.Id), its shapes dictionary key, assigned as soon as the
model deserializes; prelude shapes get theirs from the table. Members have none. Reading it on a shape built by
hand without one throws.smithy.api#required, aws.api#service),
and are read through typed accessors. Annotation traits
have an empty object as their value. Structured trait records tolerate unknown properties.@jsonName, renameShape adds a service
rename entry) or a structural edit (a member-keyed renameShape copies the member's target); every other hook is
validated there and looked up by shape and member name where the member is resolved, never stored on a
shape. Downstream of the index the model is read-only.Shapes in namespace smithy.api (smithy.api#String, smithy.api#Integer, ...) are implicit: not in the
model JSON, skipped by the service index's traversal (they are not part of a service's own closure), but
still resolvable, so a member's target maps without special-casing. The Smithy 1.0 Primitive* shapes
(PrimitiveLong, PrimitiveBoolean, ...) resolve to the same shapes as their plain counterparts; 1.0-era
models reference them and the SDK types both identically.
smithy.api#Unit is the one prelude shape that can emit code: when a union member targets it, a per-service
empty Unit model class is generated (C2J ships one, and member properties reference it). Operation
input/output references to Unit do not count; those emit empty {Op}Request/{Op}Response classes.
smithy.api#Unit when absent.@jsonName overrides the wire name; the member key stays the model name.mixins fails loud; unreachable consumers (the smithy.test/aws.protocols trait definitions
in the raw protocol-test models) are ignored. The restJson1 test model has no reachable consumers; the
restXml one does, so it needs flattening or mixin support before it can generate.smithy.test#AppliesTo don't become ConstantClasses. Unreachable enums in
the service's own namespace still emit, matching C2J's orphan *ExceptionReason enums.@input/@output traits keep a
structure out of the plain model classes, and the reference from an operation's input/output
identifies the request/response pair (some models lack the traits). Error shapes are identified by @error.smithy validate --allow-unknown-traits <model.json> validates a model; smithy select --selector '<sel>' --show type --allow-unknown-traits <model.json> queries shapes
(selectors, e.g. service > operation,
structure > member > string). --allow-unknown-traits is needed because the AWS trait definitions are
not bundled with the CLI.
© aws, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in generator/SmithyDotNet/skills/smithy-ast-model of aws/aws-sdk-net.
Open the folder on GitHubat commit f36df89
Smithy Ast Model next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Smithy Ast Model this skillaws/aws-sdk-net | 145 | — | ~1.4k | Automated safety check: Pass | Apache-2.0 | |
| SageMaker IAM Role Preflighthuggingface/skills | 11k | 1 repos | ~1.8k | Automated safety check: Pass | Apache-2.0 | |
| SageMaker Serving Image Selectionhuggingface/skills | 11k | 1 repos | ~4.6k | Automated safety check: Pass | Apache-2.0 | |
| Cloud Cost Optimizationwshobson/agents | 40k | 14 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Agent Squad Python Guide2FastLabs/agent-squad | 7.8k | — | ~4.7k | Automated safety check: Pass | Apache-2.0 | |
| Paperclip Pagepaperclipai/paperclip | 99k | — | ~1k | Automated safety check: Pass | MIT |
huggingface/skills
Finds or validates a usable SageMaker execution role before deploying or training, so scripts do not try to create IAM roles they lack permission to create.
huggingface/skills
Chooses the right serving container and current image URI for deploying a Hugging Face model to a SageMaker endpoint, preferring Hugging Face images over generic ones.
wshobson/agents
Cuts cloud spend across AWS, Azure, GCP and OCI with cost tagging, rightsizing, commitment and spot pricing models, and architecture changes.
2FastLabs/agent-squad
Map of the agent-squad Python framework for async multi-agent orchestration: which agent, classifier, storage and tool provider to pick, and the pitfalls to avoid.
paperclipai/paperclip
Publish static HTML pages and asset folders to the Paperclip S3/CloudFront page host.
hashicorp/terraform-provider-aws
Review a Terraform AWS Provider PR's end-user documentation (website/docs//.markdown): whether docs are needed, description openings, argument/attribute style, section structure, tags wording, code…
aws/aws-sdk-net
A skill your agent uses when validating that a C2J-to-Smithy migrated AWS SDK service builds, packages, and stays API-compatible with the shipping SDK, or before reporting such a migration as done…
aws/aws-sdk-net
A skill your agent uses when working on the AWS SDK for .NET source code itself, including Core runtime changes, service client implementations, generator or model changes, repo-specific build and…
aws/aws-sdk-net
Smithy shape to .NET type mapping, nullability, collection element rules, and error-shape naming/member rules.
aws/aws-sdk-net
What the SmithyDotNet generator must emit for request marshallers and response/error unmarshallers, per Smithy binding trait and protocol.
aws/aws-sdk-net
The public-API contract SmithyDotNet-generated code must match against the shipping AWS SDK for .NET - what must match vs.
Works with
The Smithy JSON AST facts and model invariants the SmithyDotNet generator relies on. Smithy Ast Model is an agent skill from aws/aws-sdk-net, published by the product's own GitHub organization. The Smithy JSON AST facts and model invariants the SmithyDotNet generator relies on.
Smithy Ast Model fits situations like: touching Model/ (shapes; the service index).
Run `npx skills add aws/aws-sdk-net --skill smithy-ast-model -a claude-code`. Or copy the skill folder (generator/SmithyDotNet/skills/smithy-ast-model in aws/aws-sdk-net) into .claude/skills/smithy-ast-model in your project. Claude Code loads it when a task matches its description.
Run `npx skills add aws/aws-sdk-net --skill smithy-ast-model -a codex`. Or copy the skill folder (generator/SmithyDotNet/skills/smithy-ast-model in aws/aws-sdk-net) into .agents/skills/smithy-ast-model in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add aws/aws-sdk-net --skill smithy-ast-model -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/smithy-ast-model, .gemini/skills/smithy-ast-model, .github/skills/smithy-ast-model and .opencode/skills/smithy-ast-model in your project.
SKILL.md names no scripts, command-line tools or credentials: Smithy Ast Model is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: smithy.io. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Smithy Ast Model is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Smithy Ast Model: SageMaker IAM Role Preflight (huggingface/skills, 11k stars), SageMaker Serving Image Selection (huggingface/skills, 11k stars), Cloud Cost Optimization (wshobson/agents, 40k stars) and Agent Squad Python Guide (2FastLabs/agent-squad, 7.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
aws (a GitHub organization, an official publisher) maintains it in aws/aws-sdk-net, which has 145 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 8, 2026.
Source: aws/aws-sdk-net on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.