package-cooldown은(는) 무엇을 하나요?
Node.js 및 Python을 위한 다층 공급망 강화 스킬 (Claude Code / Codex / Cursor 호환). 쿨다운 + 스캐너 + PR 시점 SAST.
개요
이 스킬은 패키지 의존성 공급망 공격(예: 의존성 혼동, 타이포스쿼팅, 악성 업데이트)으로부터 Node.js 및 Python 프로젝트를 보호합니다. 세 가지 주요 방어 메커니즘을 결합합니다:
- 쿨다운: 새로운 패키지 버전을 즉시 설치하지 않고 설정된 지연 시간(예: 24시간) 동안 보류하여 악성 패키지가 탐지되기 전에 확산되는 것을 방지합니다.
- 스캐너: 알려진 취약점(CVE), 의심스러운 동작(예: 네트워크 호출, 난독화 코드), 또는 의존성 혼동 가능성을 확인합니다.
- SAST (PR 시점): Pull Request 생성 시점에 정적 분석을 실행하여 새로운 보안 문제를 자동으로 발견합니다.
사용 방법
설치 및 설정
-
스킬 활성화: Claude Code, Codex, 또는 Cursor의 스킬 디렉토리에 이 저장소를 복제하거나 심볼릭 링크를 추가합니다.
git clone https://github.com/gabrielstuff/package-cooldown.git ~/.claude/skills/ -
환경 변수 설정: 필요한 API 키와 설정을 구성합니다.
export PACKAGE_COOLDOWN_HOURS=24 export PACKAGE_SCANNER_ENABLED=true export SAST_ENABLED=true
기본 명령어
| 명령어 | 설명 |
|---|---|
pc:check <package> | 패키지의 쿨다운 상태 확인 |
pc:scan <package> | 패키지에 대한 전체 보안 스캔 실행 |
pc:sast <path> | 지정된 경로에 대해 SAST 분석 실행 |
pc:status | 현재 환경의 방어 상태 표시 |
예시
# 패키지 쿨다운 상태 확인
pc:check [email protected]
# 새 패키지 스캔
pc:scan [email protected]
# PR 시점 SAST (자동 실행)
# .github/workflows/sast.yml 참조
지원 플랫폼
- Claude Code: 완전 지원
- Codex: 완전 지원 (OpenAI 호환 도구)
- Cursor: 완전 지원
아키텍처
사용자 요청
|
v
[쿨다운 레이어] --> [스캐너 레이어] --> [SAST 레이어]
| | |
v v v
npm/pypi 레지스트리 취약점 DB 정적 분석 엔진
구성 옵션
| 변수 | 기본값 | 설명 |
|---|---|---|
PACKAGE_COOLDOWN_HOURS | 24 | 새 패키지 버전 설치 전 지연 시간 (시간) |
PACKAGE_COOLDOWN_MIN_AGE | 1 | 패키지가 존재해야 하는 최소 일수 |
PACKAGE_SCANNER_ENABLED | true | 스캐너 활성화/비활성화 |
SAST_ENABLED | true | SAST 분석 활성화/비활성화 |
SAST_RULESET | default | 사용할 SAST 규칙 세트 |
라이선스
MIT