π€ Production-ready shared Renovate preset for automated dependency management
Multi-ecosystem β’ Security-hardened β’ Smart grouping β’ Supply chain protection
This preset has been hardened in response to the Shai-Hulud 2.0 npm supply chain attack (November 2025).
Key security measures included:
- π‘οΈ 7-day stability period before updates are proposed
- π No automerge for production dependencies
β οΈ Warnings on known compromised packages- π Dashboard approval required for majors
- π
npm:unpublishSafepreset to avoid unpublished packages
For more information, see dont-be-shy-hulud.
A shared Renovate preset for organizations and personal repos. Security-first with smart defaults:
- 7-day
stabilityDaysandminimumReleaseAgefor supply chain protection - No automerge for production deps β only trusted dev tooling automerges
npm:unpublishSafepreset β avoids packages that might be unpublished- Groups all non-major updates into one PR, majors stay separate
- Uses Platform Automerge (GitHub Native) for faster merging of approved PRs
- Automerges only trusted dev tooling (Biome, Oxlint, TypeScript, Vitest, ESLint, Prettier)
- Automatic deduplication for npm/pnpm/yarn lockfiles
- Weekly lock file maintenance with automerge
- Semantic commits enabled (
chore(deps): update package) - Vulnerability alerts with security labels and transitive remediation
- Pins GitHub Actions to digests for security
- Warnings on Shai-Hulud affected packages
- Supports Bun, npm, pnpm, yarn, Nix, Terraform, Ansible, Docker, GitHub Actions
| Category | Technologies |
|---|---|
| JavaScript/Node | npm β’ pnpm β’ yarn β’ Bun |
| System & Infra | Nix β’ Terraform β’ Ansible |
| Containers | Docker |
| CI/CD | GitHub Actions |
| Languages | TypeScript β’ Python (pip) β’ Go (mod) |
| Linting | Biome β’ Oxlint |
| Testing | Vitest β’ Jest |
- Create a repository named
renovate-configin your org (or personal account) and push this content. - In each target repository, add a minimal
renovate.json:
{ "extends": ["github>ORG_OR_USER/renovate-config"] }Replace ORG_OR_USER with your org (e.g. ownctrl) or your username (miccy).
- Install the Mend Renovate App for the org and select All repositories.
- Bun is handled via Renovate's
bunmanager. Commitbun.lock(orbun.lockb) for reliable updates. - Biome (
@biomejs/*) is treated as trusted dev tooling and grouped + automerged on non-major updates. - Oxlint (
oxlint,@oxc-project/*) follows the same pattern as Biome.
- Nix Flakes are supported via Renovate's
nixmanager. Commit yourflake.lockfile for reliable updates. - Nix dependencies are grouped together with higher priority (
prPriority: 5). - Renovate will automatically update inputs in your
flake.lockwhen new versions are available.
- Terraform modules and providers are managed via the
terraformmanager. Works withmain.tf,versions.tf, and other Terraform files. - Ansible Galaxy roles and collections are supported via the
ansiblemanager (looks forrequirements.ymlorgalaxy.yml). - Both are grouped separately with higher priority (
prPriority: 5) for infrastructure changes.
- Socket.dev works perfectly with Renovate - they complement each other. Socket provides supply chain security scanning, while Renovate handles updates. Socket can block problematic PRs from Renovate.
- Dependabot Alerts - keep them enabled for security notifications. Remove
.github/dependabot.ymlif you used Dependabot "version updates" to avoid duplicate PRs.
| Setting | Value | Reason |
|---|---|---|
stabilityDays |
7 days | Supply chain protection |
minimumReleaseAge |
7 days | Avoid freshly published packages |
npm:unpublishSafe |
enabled | Avoid unpublished packages |
rangeStrategy |
pin | Lock exact versions |
prConcurrentLimit |
4 | Avoid PR storms |
schedule |
Mondays 06:00 | Weekly updates |
timezone |
Europe/Prague | Local timezone |
automerge (prod deps) |
β disabled | Security review required |
automerge (trusted dev) |
β enabled | Biome, TypeScript, Vitest, etc. |
vulnerabilityAlerts |
β enabled | With security labels |
lockFileMaintenance |
β weekly | With automerge |
You can test this config locally before deploying:
# Install Renovate CLI
npm install -g renovate
# Run in dry-run mode (no changes made)
LOG_LEVEL=debug renovate --platform=local --dry-run=true
# Or use npx without installing
npx renovate --platform=local --dry-run=trueSee practical examples in examples/ directory.
For maximum security during active supply chain attacks (example):
{
"extends": ["github>ORG_OR_USER/renovate-config"],
"stabilityDays": 14,
"minimumReleaseAge": "14 days",
"prConcurrentLimit": 2,
"dependencyDashboardApproval": true,
"packageRules": [
{
"matchPackagePatterns": ["*"],
"automerge": false
}
]
}Balanced security without too much friction (example):
{
"extends": ["github>ORG_OR_USER/renovate-config"],
"stabilityDays": 7,
"minimumReleaseAge": "7 days",
"packageRules": [
{
"matchDepTypes": ["dependencies"],
"automerge": false
}
]
}For non-critical projects where you want faster updates (example):
{
"extends": ["github>ORG_OR_USER/renovate-config"],
"schedule": ["at any time"],
"prConcurrentLimit": 10,
"stabilityDays": 0
}For critical projects requiring manual review (example):
{
"extends": ["github>ORG_OR_USER/renovate-config"],
"packageRules": [
{
"matchPackagePatterns": ["*"],
"automerge": false
}
]
}For teams in different timezones:
{
"extends": ["github>ORG_OR_USER/renovate-config"],
"timezone": "America/New_York",
"schedule": ["before 09:00 on monday"]
}This preset includes warnings for packages affected by the Shai-Hulud 2.0 attack. When Renovate proposes updates for these packages, the PR will include:
β οΈ Security warning banner- Checklist for verification
- Links to IOC lists
Currently monitored packages:
@postman/tunnel-agent,posthog-node,posthog-js,@posthog/agent@asyncapi/specs,@asyncapi/openapi-schema-parser,@asyncapi/avro-schema-parserzapier-platform-core,zapier-platform-cli,@zapier/zapier-sdk@ensdomains/ensjs,@ensdomains/content-hash,ethereum-ensangulartics2,koa2-swagger-ui,tinycolor2,ngx-bootstrap
For the complete list, see dont-be-shy-hulud IOC database.
- πͺ± dont-be-shy-hulud β Shai-Hulud 2.0 detection and remediation guide
- π Socket.dev β Supply chain security scanning
- π Datadog IOCs β Official IOC list