package-release-age-gates

Use when hardening JavaScript npm dependencies against fresh package publishes, supply-chain attacks, typosquatting windows, compromised package updates, or configuring minimum release age gates for npm, pnpm, Yarn, or Bun.

ermand/agents-skills7 installsMITSynced Aug 22

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
name: package-release-age-gates
description: Use when hardening JavaScript npm dependencies against fresh package publishes, supply-chain attacks, typosquatting windows, compromised package updates, or configuring minimum release age gates for npm, pnpm, Yarn, or Bun.
license: MIT
---

# Package Release Age Gates

## Overview

Add package-manager cooldowns so installs avoid versions published minutes or hours ago. This reduces blast radius from newly compromised npm packages; it does not replace lockfiles, audits, provenance checks, or review.

## When to Use

- User mentions npm/package security, dependency supply chain, compromised releases, newly published packages, or package update hardening.
- User asks to add package-manager configs from the release-age gate article.
- Repo has npm, pnpm, Yarn, or Bun config/lock files and lacks the relevant age gate.

## Quick Reference

Default to 7 days unless the user requests another value.

| Manager | Detect | File | Setting |
| --- | --- | --- | --- |
| pnpm | `pnpm-lock.yaml`, `pnpm-workspace.yaml` | `pnpm-workspace.yaml` | `minimumReleaseAge: 10080` |
| Yarn | `yarn.lock`, `.yarnrc.yml` | `.yarnrc.yml` | `npmMinimalAgeGate: "7d"` |
| Bun | `bun.lock`, `bun.lockb`, `bunfig.toml` | `bunfig.toml` | `[install]` then `minimumReleaseAge = 604800` |
| npm | `package-lock.json`, `.npmrc` | `.npmrc` | `min-release-age=7` |

Units differ by manager:
- pnpm: minutes, so 7 days is `10080`.
- Yarn: minutes or duration string, prefer `"7d"`.
- Bun: seconds, so 7 days is `604800`.
- npm: days, so 7 days is `7`.

## Workflow

1. Detect package managers from lock/config files.
2. Update each detected manager's config; if multiple managers are present, mention that ambiguity.
3. Preserve existing config and comments. Update an existing age-gate key instead of adding a duplicate.
4. Create the config file only when the manager is detected and the file is missing.
5. Do not run installs or audits unless the user asks.

## Config Patterns

### pnpm

`pnpm-workspace.yaml`:

```yaml
minimumReleaseAge: 10080 # 7 days
```

### Yarn

`.yarnrc.yml`:

```yaml
npmMinimalAgeGate: "7d"
```

### Bun

`bunfig.toml`:

```toml
[install]
minimumReleaseAge = 604800 # 7 days
```

If `[install]` already exists, add `minimumReleaseAge` inside it.

### npm

`.npmrc`:

```ini
min-release-age=7
```

## Common Mistakes

| Mistake | Fix |
| --- | --- |
| Using npm `minimum-release-age=10080` | Use `min-release-age=7`; npm uses days. |
| Using pnpm value `7` | Use `10080`; pnpm uses minutes. |
| Putting Bun `minimumReleaseAge` at TOML root | Put it under `[install]`. |
| Replacing config files wholesale | Preserve unrelated settings and comments. |
| Treating this as complete security | Still audit, review lockfile changes, and investigate known vulnerabilities. |

## Reporting

Summarize:
- detected package manager(s)
- file(s) changed or created
- configured age gate and units
- any ambiguity, such as multiple lockfiles

More Deployment & CI/CD skills

azure-enterprise-infra-planner

microsoft/azure-skills

Architect and provision enterprise Azure infrastructure from workload descriptions. For cloud architects and platform engineers planning networking, identity, security, compliance, and multi-resource topologies with WAF alignment. Generates Bicep or Terraform directly (no azd). WHEN: 'plan Azure infrastructure', 'architect Azure landing zone', 'design hub-spoke network', 'plan multi-region DR topology', 'set up VNets firewalls and private endpoints', 'subscription-scope Bicep deployment', 'Azure Backup for VM workloads'. PREFER azure-prepare FOR app-centric workflows.

387.5k

azure-kubernetes-app-deploy

microsoft/azure-skills

Use when deploying an existing web application or API to an already-running Azure Kubernetes Service cluster. Detects the framework, generates a Dockerfile and Kubernetes manifests, validates against AKS Deployment Safeguards, and deploys with verification. WHEN: deploy app to AKS, deploy to existing AKS cluster, containerize app for Kubernetes, generate K8s manifests for Azure, set up CI/CD for AKS, my AKS deployment is failing safeguard checks, I have a Django/Express/Spring Boot app to run on AKS. DO NOT USE FOR: creating or provisioning an AKS cluster (use azure-kubernetes), assessing migration to AKS Automatic (use azure-kubernetes-automatic-readiness), or deploying to non-AKS targets like Web Apps, Container Apps, or Functions.

380.4k

finetuning

microsoft/azure-skills

Fine-tune models on Microsoft Foundry using SFT (supervised), DPO (preference), or RFT (reinforcement with graders). Covers dataset preparation, training job submission, deployment, and evaluation. USE FOR: fine-tune, SFT, DPO, RFT, training data, grader, distillation, fine-tuned model, training job, large file upload, calibrate grader, deploy fine-tuned model, evaluate fine-tuned model. DO NOT USE FOR: general model deployment without fine-tuning (use deploy-model), agent creation (use agents), prompt optimization without training (use prompt-optimizer).

323.2k

← All Deployment & CI/CD skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY