name, label, description, icon, allowed-tools, tabs
| name |
label |
description |
icon |
allowed-tools |
tabs |
| dependency-audit |
의존성 분석 |
프로젝트 의존성 그래프를 분석하고 보안 취약점, 라이선스, 업데이트 현황을 보고합니다. |
\uE964 |
| file_read |
| grep |
| folder_map |
| glob |
| html_create |
| process |
|
code |
프로젝트의 패키지 의존성을 분석하여 보안, 라이선스, 업데이트 보고서를 생성하세요.
워크플로우
- 패키지 파일 탐지: glob으로 의존성 파일 검색
- .NET:
*.csproj, packages.config, Directory.Build.props
- Node:
package.json, package-lock.json, yarn.lock
- Python:
requirements.txt, Pipfile, pyproject.toml
- Java:
pom.xml, build.gradle
- 의존성 목록 추출: file_read로 파일 파싱
- 분석 수행: 각 의존성에 대해 검사
- 보고서 생성: html_create로 분석 보고서 생성
분석 항목
1. 직접 의존성 목록
| 패키지 |
현재 버전 |
최신 버전 |
업데이트 필요 |
| ... |
... |
... |
✅/⚠/❌ |
2. 보안 취약점 (알려진 패턴)
- 알려진 취약 버전 패턴 탐지
- 폐기된(deprecated) 패키지 식별
- 유지보수 중단된 패키지 경고
3. 라이선스 검사
| 라이선스 |
호환성 |
패키지 |
| MIT |
✅ 허용 |
lib-a, lib-b |
| GPL-3.0 |
⚠ 주의 |
lib-c |
| 상용 |
❌ 검토 필요 |
lib-d |
4. 의존성 크기 분석
- 패키지별 예상 크기
- 전체 node_modules / NuGet 캐시 크기
- 불필요하게 큰 패키지 식별
5. 중복/충돌 검사
- 동일 기능 중복 패키지 (예: lodash + underscore)
- 버전 충돌 가능성
프레임워크별 검사 명령
.NET
Node.js
Python
출력
- HTML 보고서: 위험도별 색상 구분, 차트 포함
- 요약: 총 패키지 수, 업데이트 필요 수, 보안 이슈 수, 라이선스 경고 수
규칙
- 외부 서버 접속 없이 로컬 파일 분석만 수행
- process 도구 사용 시
dotnet list / npm audit 등 읽기 전용 명령만
- 패키지를 직접 업데이트하지 않음 (보고서만)
- 한국어로 작성