Skip to content

Commit e133d15

Browse files
feat(ai-security): add /security-supply-chain skill (v2.2.0)
New interactive skill that hardens projects against npm supply chain attacks by configuring pnpm's minimum-release-age quarantine and frozen lockfile enforcement. Detects package manager, checks pnpm version, and recommends pnpm migration for npm/Yarn/Bun users. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent fbaf601 commit e133d15

6 files changed

Lines changed: 412 additions & 9 deletions

File tree

.claude-plugin/marketplace.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
},
77
"metadata": {
88
"description": "A curated list of custom Claude Code plugins, agents, and skills for developers.",
9-
"version": "2.1.0",
9+
"version": "2.2.0",
1010
"pluginRoot": "./plugins"
1111
},
1212
"plugins": [
@@ -98,8 +98,8 @@
9898
{
9999
"name": "ai-security",
100100
"source": "./plugins/ai-security",
101-
"description": "AI-powered security auditing with interactive skill, automated agents, and web dependency scanning for comprehensive vulnerability detection and reporting",
102-
"version": "1.4.0",
101+
"description": "AI-powered security auditing with interactive skills, automated agents, web dependency scanning, and supply chain hardening for comprehensive vulnerability detection and reporting",
102+
"version": "1.5.0",
103103
"keywords": [
104104
"ai",
105105
"security",
@@ -110,6 +110,9 @@
110110
"owasp",
111111
"scanning",
112112
"defensive",
113+
"supply-chain",
114+
"dependencies",
115+
"pnpm",
113116
"skills"
114117
],
115118
"author": {

CHANGELOG.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [2.2.0] - 2026-03-31
11+
12+
### Added
13+
14+
#### AI-Security Plugin (v1.5.0)
15+
16+
- `/security-supply-chain` new skill for hardening projects against npm supply chain attacks
17+
- Detects package manager (pnpm, npm, Yarn, Bun) and validates compatibility
18+
- Configures pnpm's `minimum-release-age` in `.npmrc` to quarantine newly published packages
19+
- Interactive timeframe selection with previews (24 hours, 3 days, 7 days, or custom)
20+
- Scans CI/CD configs for frozen lockfile usage and offers to add `frozen-lockfile=true`
21+
- Checks pnpm version and offers upgrade if below 10.16.0 minimum
22+
- Recommends pnpm migration for npm/Yarn/Bun users who lack quarantine protection
23+
- Creates two defense layers: time-based quarantine (local dev) + frozen lockfile (CI/CD)
24+
1025
## [2.1.0] - 2026-03-22
1126

1227
### Added

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Claude Code Plugins for Developers
22

3-
[![Version](https://img.shields.io/badge/version-2.1.0-blue.svg)](https://github.com/charlesjones-dev/claude-code-plugins-dev/releases)
3+
[![Version](https://img.shields.io/badge/version-2.2.0-blue.svg)](https://github.com/charlesjones-dev/claude-code-plugins-dev/releases)
44
[![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
55
[![GitHub Issues](https://img.shields.io/github/issues/charlesjones-dev/claude-code-plugins-dev.svg)](https://github.com/charlesjones-dev/claude-code-plugins-dev/issues)
66
[![GitHub Stars](https://img.shields.io/github/stars/charlesjones-dev/claude-code-plugins-dev.svg)](https://github.com/charlesjones-dev/claude-code-plugins-dev/stargazers)
@@ -23,7 +23,7 @@ This Claude Code plugin marketplace provides plugins that extend Claude Code's c
2323
| [ai-git](plugins/ai-git/) | AI-powered git automation and workflow streamlining | `/git-init`, `/git-commit-push`, `/git-commit-push-pr` | - |
2424
| [ai-learn](plugins/ai-learn/) | AI-powered Socratic learning mode for guided problem-solving | `/learn`, `/learn-review` | - |
2525
| [ai-performance](plugins/ai-performance/) | AI-powered performance optimization and bottleneck detection | `/performance-audit` | `performance-auditor` |
26-
| [ai-security](plugins/ai-security/) | AI-powered security auditing with reproducible reports | `/security-init`, `/security-audit`, `/security-scan-dependencies` | `security-auditor`, `security-dependency-scanner` |
26+
| [ai-security](plugins/ai-security/) | AI-powered security auditing with reproducible reports | `/security-init`, `/security-audit`, `/security-scan-dependencies`, `/security-supply-chain` | `security-auditor`, `security-dependency-scanner` |
2727
| [ai-statusline](plugins/ai-statusline/) | AI-powered status line customization with progress bars | `/statusline-wizard`, `/statusline-edit` | - |
2828
| [ai-workflow](plugins/ai-workflow/) | AI-powered development workflow automation | `/workflow-plan-phases`, `/workflow-implement-phases`, `/workflow-preflight`, `/workflow-ship`, `/workflow-principles` | - |
2929
| [ai-compliance](plugins/ai-compliance/) | AI-powered license compliance auditing and attribution generation | `/compliance-license-audit`, `/compliance-notice-generate` | - |

plugins/ai-security/.claude-plugin/plugin.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "ai-security",
3-
"version": "1.4.0",
4-
"description": "AI-powered security auditing with interactive skill, automated agents, and web dependency scanning for comprehensive vulnerability detection and reporting",
3+
"version": "1.5.0",
4+
"description": "AI-powered security auditing with interactive skills, automated agents, web dependency scanning, and supply chain hardening for comprehensive vulnerability detection and reporting",
55
"author": {
66
"name": "Charles Jones",
77
"url": "https://charlesjones.dev"
@@ -13,6 +13,9 @@
1313
"compliance",
1414
"auditing",
1515
"auditor",
16+
"supply-chain",
17+
"dependencies",
18+
"pnpm",
1619
"skills"
1720
]
1821
}

plugins/ai-security/README.md

Lines changed: 44 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -191,6 +191,48 @@ Scan a deployed website for outdated dependencies, known CVEs, and security misc
191191
# ✅ Report saved to /docs/security with timestamp
192192
```
193193

194+
### `/security-supply-chain`
195+
196+
Harden your project against npm supply chain attacks by configuring pnpm's `minimum-release-age` quarantine and frozen lockfile enforcement.
197+
198+
**What it does:**
199+
200+
- 🔍 **Detects your package manager** (pnpm, npm, Yarn, Bun) and validates compatibility
201+
- 🛡️ **Configures `minimum-release-age`** in `.npmrc` to quarantine newly published packages
202+
- 🔒 **Offers frozen lockfile enforcement** via `.npmrc` for reproducible CI/CD builds
203+
- ⬆️ **Checks pnpm version** and offers to upgrade if below the 10.16.0 minimum
204+
- 🎯 **Interactive timeframe selection** with previews (24 hours, 3 days, 7 days, or custom)
205+
- 📊 **Scans CI/CD configs** to detect existing frozen lockfile usage
206+
- 💡 **Recommends pnpm migration** for npm/Yarn/Bun users who lack this protection
207+
208+
**How it works:**
209+
210+
```
211+
/security-supply-chain
212+
# Detects pnpm as package manager
213+
# Checks pnpm version (needs 10.16.0+)
214+
# Checks existing .npmrc configuration
215+
# Ask: Choose quarantine timeframe (24h, 3d, 7d, custom)
216+
# Ask: Add frozen-lockfile=true?
217+
# Shows preview of all changes
218+
# Writes .npmrc configuration
219+
# Verifies changes were applied correctly
220+
```
221+
222+
**Defense layers created:**
223+
224+
```
225+
Layer 1 - Quarantine (local development):
226+
Prevents installing packages published less than X days ago.
227+
New packages must survive community review before entering your lock file.
228+
229+
Layer 2 - Frozen Lockfile (CI/CD + local):
230+
Ensures 'pnpm install' uses exact versions from pnpm-lock.yaml.
231+
Builds fail if the lock file is out of sync.
232+
```
233+
234+
**Learn more:** [Stop Supply Chain Attacks: Why Your Build Pipeline Should Use Locked Dependencies](https://charlesjones.dev/blog/npm-supply-chain-attacks-ci-cd-locked-dependencies)
235+
194236
**Comparison: `/security-audit` vs `/security-scan-dependencies`**
195237

196238
| Feature | `/security-audit` | `/security-scan-dependencies` |
@@ -586,10 +628,10 @@ This timestamp-based naming ensures multiple audits on the same day don't overwr
586628
## 📦 Plugin Details
587629

588630
- **Name:** AI-Security
589-
- **Version:** 1.4.0
631+
- **Version:** 1.5.0
590632
- **Type:** Comprehensive Security Toolkit
591633
- **Features:**
592-
- Skills: `/security-init`, `/security-audit`, `/security-scan-dependencies`
634+
- Skills: `/security-init`, `/security-audit`, `/security-scan-dependencies`, `/security-supply-chain`
593635
- Agents: `security-auditor`, `security-dependency-scanner`
594636
- **License:** MIT
595637
- **Author:** Charles Jones

0 commit comments

Comments
 (0)