Walks through releasing a new datadog-lambda-js Lambda layer version — the automated Commercial release (version bump, tag, GitLab sign/publish jobs, npm publish, GitHub release) and the manual GovCloud layer publish. Pauses for explicit confirmation before every irreversible or externally-visible step (tag push, GitLab manual jobs, npm publish, GitHub release, GovCloud deploy). Triggers on "release a new layer version", "cut a new datadog-lambda-js release", "publish the lambda layer", or similar. Source of truth: https://datadoghq.atlassian.net/wiki/spaces/SLS/pages/2724037230/Lambda+Layer+Node.js#Commercial
npx skills add https://github.com/DataDog/datadog-lambda-js --skill release-lambda-layer
This mirrors the "Release" section of the SLS Confluence page "Lambda Layer
Node.js" (Commercial + GovCloud). It assumes a Release Candidate has
already been validated (self-monitoring + e2e tests passed) before this
process starts.
This process pushes git tags, triggers production-publishing GitLab jobs,
publishes to the public npm registry, and creates a public GitHub release.
Treat every step in the "Guardrails" section as a hard stop — confirm
with the user before running it, even if they've approved a similar step
earlier in the same run.
Use this same thread for every update below. Ask the user to post, don't
post on their behalf unless they've explicitly asked you to send Slack
messages for them.
e2e tests for this change. Do not start Phase 1 without it.
Reference: https://datadoghq.atlassian.net/wiki/spaces/SLS/pages/3375925277
yarn upgrade dd-trace (or yarn upgrade dd-trace@^a.b.c for aspecific version) to pick up the latest tracer.
BUILD_LAYERS=true UPDATE_SNAPSHOTS=true DD_API_KEY=<key from 1Password> aws-vault exec sso-serverless-sandbox-account-admin -- ./scripts/run_integration_tests.sh
package.json version to X.Y.0:version**.
vX.Y.0, open a PR, get approval.for this change (per "Before starting" above).
release finishes** — a concurrent merge can tag the wrong commit.
git checkout main && git pullgit tag vX.Y.010. git push --tags origin main — **guardrail: confirm with the user
before running this.** It kicks off the production build in GitLab and
can't be cleanly undone.
11. In GitLab tags,
open the pipeline for the new tag.
12. Guardrail: confirm before triggering, then run the `sign-layer
(nodeXX)` manual job for every supported runtime. This deploys the
layer to every commercial region.
normally an instruction the user runs themselves — walk them through
clicking the job in the GitLab pipeline and wait for them to confirm
it finished before moving on. Only trigger it directly if the user
has explicitly set up GitLab API credentials for Claude to use, and
still confirm before every single trigger, per the guardrail above.
13. Guardrail: confirm before triggering, then run the
publish-npm-package manual job (same access caveat as step 12).
Afterward, verify publicly:
mkdir new-dir && cd new-dir && npm init -y
npm install datadog-lambda-js@<new version>
14. Guardrail: confirm before creating, then draft a GitHub release on
the releases page:
dd-trace version is packaged in this release (fromstep 2 of Phase 1) — this is important for users debugging tracer
behavior against a specific layer version.
arn:aws:lambda:<AWS_REGION>:464622532012:layer:Datadog-Node18-x:117
arn:aws:lambda:<AWS_REGION>:464622532012:layer:Datadog-Node20-x:117
arn:aws:lambda:<AWS_REGION>:464622532012:layer:Datadog-Node22-x:117
arn:aws-us-gov:lambda:us-gov-<AWS_REGION>:002406178527:layer:Datadog-Node18-x:117
arn:aws-us-gov:lambda:us-gov-<AWS_REGION>:002406178527:layer:Datadog-Node20-x:117
arn:aws-us-gov:lambda:us-gov-<AWS_REGION>:002406178527:layer:Datadog-Node22-x:117
(substitute the actual layer version number for 117)
15. Post the finished release + release notes link to the Slack thread.
No automated pipeline exists for this — compliance requirements mean it has
to stay manual.
signed layers together (e.g. a "signed layer bundle" artifact) — if one
exists, download that instead of going job-by-job. Otherwise, fall back
to downloading each individual sign-layer (nodeXX) job's artifacts.
Place the resulting layer bundle zips in the local .layers folder.
environment:
VERSION=<LAYER_VERSION> ENVIRONMENT=us1-fed ./scripts/publish_govcloud_layers.sh <path-to-layer-bundle.zip>
VERSION=<LAYER_VERSION> ENVIRONMENT=us2-fed ./scripts/publish_govcloud_layers.sh <path-to-layer-bundle.zip>
VERSION is the integer layer version (e.g. 116), not the npm semver.
When prompted for auth, the user must open the link in their GovCloud
browser profile — don't attempt to open or approve it yourself.
latest-lambda-layer-version.html
in the documentation repo to the new version, via a PR.
git push --tags origin mainpublishes the npm package
publish_govcloud_layers.shdocumentation repoinstalled serverless framework is v3, not v4:
npm install -g [email protected].
main between step 7 and step 9 of Phase 1,stop and confirm with the user which commit should actually be tagged.
Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.
Advanced GitHub Actions workflow automation with AI swarm coordination, intelligent CI/CD pipelines, and comprehensive repository management
Google Cloud Platform CLI - manage GCP resources including Compute Engine, Cloud Run, GKE, Cloud Functions, Storage, BigQuery, and more.
Expert backend architect specializing in scalable API design, microservices architecture, and distributed systems. Masters REST/GraphQL/gRPC APIs, event-driven architectures, service mesh patterns, and modern backend frameworks. Handles service boundary definition, inter-service communication, resilience patterns, and observability. Use PROACTIVELY when creating new backend services or APIs.
Run Python code in the cloud with serverless containers, GPUs, and autoscaling. Use when deploying ML models, running batch processing jobs, scheduling compute-intensive tasks, or serving APIs that require GPU acceleration or dynamic scaling.
Aspire skill covering the Aspire CLI, AppHost orchestration, service discovery, integrations, MCP server, VS Code extension, Dev Containers, GitHub Codespaces, templates, dashboard, and deployment. Use when the user asks to create, run, debug, configure, deploy, or troubleshoot an Aspire distributed application.
Audits Python + BigQuery pipelines for cost safety, idempotency, and production readiness. Returns a structured report with exact patch locations.
Microsoft Store Developer CLI (msstore) for publishing Windows applications to the Microsoft Store. Use when asked to configure Store credentials, list Store apps, check submission status, publish submissions, manage package flights, set up CI/CD for Store publishing, or integrate with Partner Center. Supports Windows App SDK/WinUI, UWP, .NET MAUI, Flutter, Electron, React Native, and PWA applications.
Take datadog/release-lambda-layer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npm.
Without those the skill loads but fails at the first command.