본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

npm-supply-chain-check

JavaScript 또는 TypeScript 프로젝트의 npm 공급망 위험을 점검합니다. 최근 공개된 버전, 설치 스크립트, 잠금 파일, CI 권한과 토큰 관리를 살펴보고 우선순위별 설정 개선안을 제시합니다.

원문원문 설명 보기

JavaScript / TypeScript のプロジェクトを、npm のサプライチェーン攻撃(乗っ取られたパッケージの悪性バージョン、インストール時に動くスクリプト、CI からの認証情報の窃取)への備えという観点で読むだけで点検し、直すべき設定を優先順に示す。

ロックファイルの全パッケージについて公開からの日数とインストールスクリプトを npm レジストリで調べる。「npm の依存は大丈夫?」「サプライチェーン攻撃の対策をしたい」「axios みたいな乗っ取りに備えたい」ときに使う。

Audits a JS project's npm supply-chain posture (release-age gates, install scripts, lockfiles, CI tokens).

cccskills/skills스타 0(GitHub 0 + cccskills 0)

실행 점수 미검증

설치 방법 보기

이럴 때 유용합니다

  • npm 의존성 위험 점검
  • 최근 공개된 패키지 확인
  • CI 권한과 토큰 검토
  • 잠금 파일 관리 상태 확인

한국어 소개

할 수 있는 일

이 스킬은 JavaScript 또는 TypeScript 프로젝트를 읽고 npm 공급망 공격에 대비한 설정을 점검합니다. 잠금 파일을 바탕으로 패키지 관리자를 확인한 뒤, 공개 후 일정 기간이 지난 버전만 허용하는 설정, 의존 패키지의 설치 스크립트, CI 설치 명령, GitHub Actions 참조와 권한, 토큰 보관 위치를 살펴봅니다. 잠금 파일에 포함된 모든 패키지의 공개 시점과 스크립트 정의도 npm 레지스트리에서 확인합니다. 최근 공개되거나 철회된 버전, 설치 중 스크립트를 실행하는 패키지 등을 찾아 우선순위와 적용 가능한 설정 예시를 함께 제시합니다.

이럴 때 유용합니다

npm 의존성의 위험을 확인하거나 CI 권한과 인증 정보 취급을 다시 살펴보고 싶을 때 사용할 수 있습니다. 설정을 바꾸기 전에 무엇부터 손볼지 정리하는 데 도움이 됩니다.

사용 예시

  • “이 프로젝트의 npm 의존성을 점검해 주세요.”
  • “설치 스크립트와 CI 토큰 설정을 확인해 주세요.”
  • “공급망 공격에 대비할 조치를 우선순위대로 알려 주세요.”

주의 사항

Node.js 18 이상이 필요합니다. 패키지 공개 시점과 스크립트 정의를 가져오기 위해 registry.npmjs.org에 연결하지만, 프로젝트 파일이나 인증 정보는 전송하지 않습니다. 네트워크를 사용할 수 없으면 공개 정보 확인을 건너뜁니다. 패키지를 설치하거나 스크립트를 실행하거나 설정을 변경하지 않습니다. 파일 편집은 사용자가 동의한 경우에만 진행합니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

문서 점검

AI가 SKILL.md의 내용에서 주의가 필요한 작업과 도입 전제를 확인했습니다. 점수는 실제로 실행한 결과(실행 검증)만으로 매깁니다.

안전성전송·삭제·명령 실행 등을 명시하고 있는가
A양호레지스트리 공개 정보만 가져오며 설치와 스크립트 실행은 하지 않고, 편집 전 동의를 받습니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족Node.js 18 이상과 레지스트리 연결이 필요하며, 오프라인 처리 방식도 설명합니다.

점수에는 넣지 않았습니다. 2026년 10월 27일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(2)

  • SKILL.md7.4 KB
  • scripts/lockfile-check.mjs6.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

npm-supply-chain-check

npm では、人気パッケージの開発者アカウントが乗っ取られ、悪性のバージョンが公開される事件が続いています(2025 年の自己増殖型ワーム Shai-Hulud、2026 年の axios の侵害など)。悪性バージョンの多くは、数時間から数日で見つかって取り下げられます。そのため、次の 3 つで被害の大半を防げます。

  • 公開されたばかりのバージョンを入れない
  • インストール時のスクリプトを勝手に動かさない
  • CI の認証情報を絞る

このスキルは、プロジェクトがこの 3 つをできているかを点検します。

守ること

  • 点検は 読むだけ。npm install などのインストール、パッケージのスクリプトの実行、設定ファイルの書き換えはしない。直すかどうかはユーザーが決める。
  • 外部への通信は、付属のスクリプトが https://registry.npmjs.org からパッケージの公開情報(公開日時・スクリプト定義)を取得するだけ。プロジェクトのファイルや認証情報は送らない。
  • .npmrc などにトークンが書かれていても、値は表示しない。「書かれている」ことだけを伝える。

前提

  • Node.js 18 以上(付属スクリプトが組み込みの fetch を使う)。
  • ネットワークに出られない環境では手順 3 を飛ばし、その旨を結果に書く。

手順

1. パッケージマネージャーとバージョンを確かめる

  • ロックファイルから判断する: package-lock.json(npm)・pnpm-lock.yaml(pnpm)・yarn.lock(Yarn)・bun.lock(Bun)。package.json の packageManager も見る。
  • バージョンを確かめる(npm -v・pnpm -v・yarn -v)。手順 2 の設定が使えるかどうかがバージョンで変わる。
  • ロックファイルがリポジトリに コミットされていない(.gitignore に入っている、存在しない)なら、それを最初の指摘にする。

2. 設定を点検する

#点検すること見る場所望ましい状態
1公開から日の浅いバージョンを避ける設定npm 11.10 以上: .npmrc の min-release-age(日数)/pnpm: pnpm-workspace.yaml の minimumReleaseAge(分。pnpm 11 は既定で 1440)/Yarn 4.10 以上: .yarnrc.yml の npmMinimalAgeGate1〜7 日の待ち時間がある。除外(minimumReleaseAgeExclude など)は最小限
2インストールスクリプトの扱いnpm: .npmrc の ignore-scripts/pnpm: onlyBuiltDependencies・strictDepBuilds(pnpm 10 以降は既定で依存のスクリプトを動かさない)/Yarn: enableScripts依存のスクリプトは既定で止め、必要なものだけ許可している
3CI のインストール方法.github/workflows/*.yml などnpm ci・pnpm install --frozen-lockfile・yarn install --immutable で、ロックファイルどおりに入れている
4GitHub Actions の固定uses: の行外部の Action はタグではなくコミット SHA で固定。pull_request_target で外部 PR のコードを checkout していない
5CI の権限とトークンワークフローの permissions:・secrets.*permissions を最小に絞っている。npm の公開には長期トークンではなく Trusted Publishing(OIDC)を使っている
6直接の依存の書き方package.json*・latest・Git の URL・知らないレジストリを使っていない
7認証情報の置き方.npmrc・.env がコミットされていないかトークンをリポジトリに置いていない

3. ロックファイルの全パッケージを調べる

node <このスキルのフォルダ>/scripts/lockfile-check.mjs <プロジェクトのフォルダ> --days 7
  • --days: これより新しいバージョンを「公開されたばかり」として挙げる(既定 7)。
  • --max: 調べる件数の上限(既定 5000)。大きいプロジェクトで時間がかかるときに使う。
  • 結果(JSON)の読み方:
    • recent: 公開から --days 日未満のバージョン。最優先で確かめる。 そのパッケージの GitHub のリリースや変更履歴にそのバージョンがあるか、npm のページで公開者がいつもと同じかを見る。乗っ取りの事件が報じられていれば、そのバージョンと照らし合わせる。
    • installScripts: インストール時にスクリプト(preinstall / install / postinstall)が動くパッケージ。手順 2 の #2 で許可しているものと照らし合わせ、知らないものがあれば挙げる。
    • missing: レジストリにもう無いバージョン(取り下げ済み)。悪性で取り下げられた可能性があるので、必ず挙げる。
    • deprecated: 非推奨。セキュリティ上の理由が書かれていれば挙げる。
    • errors: 取得に失敗したもの。社内レジストリのパッケージなどは対象外として扱う。

4. 結果を返す

## npm-supply-chain-check: <プロジェクト>

パッケージマネージャー: pnpm 10.18 / ロックファイル: あり(コミット済み) / 調べた依存: 612 件

### すぐ直す
1. **公開日数の待ちがない** — `pnpm-workspace.yaml` に次を足す(pnpm 10.16 以上)
   ```yaml
   minimumReleaseAge: 1440
  1. ...

確かめる

パッケージバージョン理由
foo3.2.1公開から 0.5 日。GitHub のリリースに 3.2.1 がない

できていること

  • CI は pnpm install --frozen-lockfile

- 「すぐ直す」は効果の大きい順に並べ、それぞれに貼れる設定の差分を付ける。設定名と単位(日・分)は、手順 1 で確かめたバージョンのものを使う。分からなければ公式ドキュメントで確かめるよう添える。
- 待ち時間の設定は、公開から日の浅い悪性バージョンには効くが、長く潜伏する攻撃は防げない。過信しないよう一言添える。
- 直すかどうかを聞き、ユーザーが了承したときだけ設定ファイルを編集する。

## このスキルについて

- 作者: cccskills(https://github.com/cccskills/skills)
- 外部への通信は `registry.npmjs.org` からの公開情報の取得だけ。インストール・スクリプトの実行はしない。

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

cccskills-find

무료요약 있음

cccskills.com 공개 API에서 작업에 맞는 Agent Skills를 찾고 실행 점수, 안전 검사, 설치 조건, 라이선스, 업데이트 날짜와 가격을 비교합니다. 후보를 추리고 설치 명령이나 게시 페이지를 확인할 수 있습니다.

  • 회의록 작성용 스킬 찾기
  • 작업에 맞는 스킬 비교하기
  • 안전 검사와 라이선스 확인하기
cccskills/skills02026년 10월 27일 업데이트

incident-first-response-jp

무료요약 있음

일본 기업에서 개인정보 유출 또는 유출 의심 사실을 알게 된 직후의 대응을 정리합니다. 개인정보보호위원회 신고 요건과 기한을 확인하고, 내부 보고와 당사자 통지, 대외 발표문, 문의 답변 등의 초안을 작성합니다.

  • 개인정보 유출 의심 직후의 초기 대응 정리
  • 개인정보보호위원회 신고 요건과 기한 확인
  • 영향을 받은 사람에게 보낼 통지문 작성
cccskills/skills02026년 10월 27일 업데이트

jp-business-mail

무료요약 있음

요청, 감사, 사과, 재촉, 거절, 일정 조율, 첫 연락에 필요한 일본어 비즈니스 메일을 작성하거나 수정합니다. 수신자에 맞춰 표현을 조정하고 경어와 메일 구성을 점검하며, 사실과 약속을 유지하면서 수정 이유를 설명합니다.

  • 거래처에 요청 메일 작성
  • 사과나 재촉 메일 다듬기
  • 일정 조율 메일 작성
cccskills/skills02026년 10월 27일 업데이트

skill-md-review

무료요약 있음

Agent Skill의 `SKILL.md`를 지침의 명확성, 절차의 구체성, 안전성, 설정 요건으로 검토합니다. 형식과 참조 파일을 확인하고, 근거가 포함된 A/B/C 평가와 낮은 항목을 개선할 문안을 제안합니다.

  • 공개 전에 스킬 검토하기
  • 평가와 근거 확인하기
  • 안전성과 설정 요건 점검하기
cccskills/skills02026년 10월 27일 업데이트

skill-security-audit

무료요약 있음

스킬을 설치하거나 에이전트로 저장소를 열기 전에 `SKILL.md`, 스크립트, 에이전트 설정을 읽기만 하며 점검합니다. 숨은 지시, 인증 정보 유출, 리버스 셸, 확인 없이 실행되는 훅 등의 위험을 찾아 설치 판단에 필요한 결과를 정리합니다.

  • 설치 전 낯선 스킬 점검
  • 저장소 에이전트 설정 확인
  • 숨은 지시와 정보 전송 확인
cccskills/skills02026년 10월 27일 업데이트

cccskills의 스킬 모두 보기

이 스킬의 문제 신고