Borrowing it
Nothing to install: this file belongs to go-to-k/cdkd. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/go-to-k/cdkd/main/.claude/skills/new-provider/SKILL.mdgit clone --depth 1 https://github.com/go-to-k/cdkdWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/go-to-k/cdkd/new-provider)<a href="https://agentmods.dev/skills/go-to-k/cdkd/new-provider"><img src="https://agentmods.dev/badge/skills/go-to-k/cdkd/new-provider/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/go-to-k/cdkd/new-provider"><img src="https://agentmods.dev/badge/skills/go-to-k/cdkd/new-provider.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00039 | $0.01456 |
| Opus 5.5 | $0.00016 | $0.00582 |
| Sonnet 5.5 | $0.00008 | $0.00291 |
| Haiku 4.5 | $0.00004 | $0.00146 |
Grade A, and why
new-provider scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 98 lines — stays where its author put it; the contents beside it link to each section on GitHub.
New Provider Scaffold
You are scaffolding a new SDK Provider for cdkd.
Input
The user provides an AWS resource type like AWS::SES::EmailIdentity.
Steps
-
Parse the resource type to determine:
- Service name (e.g.,
SES) - Resource name (e.g.,
EmailIdentity) - AWS SDK client package (e.g.,
@aws-sdk/client-ses) - Provider file name (e.g.,
ses-email-identity-provider.ts)
- Service name (e.g.,
-
Check if provider already exists in
src/provisioning/providers/andsrc/provisioning/register-providers.ts. -
Read an existing provider as reference for the pattern. Use a simple one like
src/provisioning/providers/ssm-parameter-provider.tsorsrc/provisioning/providers/logs-log-group-provider.ts. -
Read the AWS SDK docs or infer the API calls needed:
- CREATE: Which API creates this resource? What does it return (physical ID, attributes)?
- UPDATE: Which API updates this resource?
- DELETE: Which API deletes this resource?
- getAttribute: Which attributes might be needed for
Fn::GetAtt? - import: Which API verifies a resource exists by physical id (
Get*/Describe*/Head*), and whichList*+ListTags*(or equivalent) lookup-by-tag pair lets you find a resource by itsaws:cdk:pathtag? See "Import method" under step 5 — most providers follow the same shape.
-
Create the provider file at
src/provisioning/providers/{service}-{resource}-provider.ts:- Import the AWS SDK client and commands
- Implement
ResourceProviderinterface (create, update, delete, getAttribute, import) - Take clients from
getAwsClients(), or build your own SDK client with...ambientClientDefaults()(../../utils/ambient-client-defaults.js) spread FIRST — a bareawsClientDefaults()drops a library caller's explicit credentials and failsambient-client-defaults-fence.test.ts(#3588) - Follow ESM import conventions (
.jsextension) - Return proper
physicalIdandattributesfrom create
Import method — copy the shape from a similar provider rather than writing it from scratch:
s3-bucket-provider.tsfor a tag-ARRAY service,lambda-function-provider.tsfor a tag-MAP one,kms-provider.tsfor a service with no template name property. The shape is: resolve an explicit physical id first (resolveExplicitPhysicalId(input, '<NameField>'), i.e. the--resourceoverride orProperties.<NameField>) and verify it with aGet/Head/Describecall; otherwise, withinput.cdkPathpresent, walk the service'sList*paginator, fetch tags per resource and matchaws:cdk:paththroughmatchesCdkPath(CDK_PATH_TAGin../import-helpers.js).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago Changed · +1 lines da0cae3cd8ce
- 25d ago Changed 7fd524d975b2
- 28d ago Changed 69cab916a067
- 1mo ago Changed 08ceb62a5030
- 1mo ago Changed · -30 lines 420db69f3fee
- 2mo ago First seen · 127 lines · 39 tokens per session scan A 21cfe30092e1
new-provider is a skill published in the GitHub repository go-to-k/cdkd (156 stars, last pushed today), licensed Apache-2.0. It adds 39 tokens to every session and 1,456 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
aws-serverless-patterns
AWS Lambda, API Gateway, DynamoDB, Step Functions, EventBridge patterns and best practices. Use when building or reviewing serverless backends, CDK infrastructure, or Lambda functions.
amazon-location-service
Amazon Location Service. Reference skill (loaded via skill:// from the ios agent).
cognito-email-migration
Runbook for migrating an existing Cognito User Pool from default emails to a custom CustomEmailSender Lambda. Use when an existing app needs to switch from the default Cognito verification / password-reset / MFA emails to brand-matched HTML emails sent via SES.
aws-cdk-mcp-server-mcp
AWS Cloud Development Kit (CDK) best practices, infrastructure as code patterns, and security compliance with CDK Nag.
aws-lambda-typescript
AWS Lambda development with TypeScript. Use when writing Lambda handlers, bundling with esbuild, using AWS SDK v3/Powertools, strict typing or optimizing Node.js Lambda performance.
aws-architecture
AWS architecture decisions, serverless patterns, event-driven design, service boundaries and Well-Architected Framework. Use when designing system architecture or making infrastructure tradeoffs.