91 lines
2.6 KiB
YAML
91 lines
2.6 KiB
YAML
tool_id: PY-DEPENDENCY-ANALYZER-001
|
||
tool_name: "依赖关系分析器"
|
||
|
||
基本信息:
|
||
语言: python
|
||
文件: dependency-analyzer.py
|
||
复杂度: level-3
|
||
创建日期: 2025-11-14
|
||
作者: CodeConscious
|
||
|
||
用途分类:
|
||
- CODE # 代码分析
|
||
- DATA # 数据提取
|
||
|
||
功能描述:
|
||
简介: "分析Python/JavaScript项目的依赖关系,生成可视化报告"
|
||
详细: |
|
||
支持功能:
|
||
- Python: 解析requirements.txt,提取依赖包和版本约束
|
||
- JavaScript: 解析package.json,提取dependencies/devDependencies
|
||
- 问题检测: 识别安全风险和已知漏洞
|
||
- 可视化报告: Markdown格式的人类可读报告
|
||
- JSON导出: 结构化数据,便于后续处理
|
||
|
||
使用场景:
|
||
- "分析新项目的依赖复杂度"
|
||
- "检查依赖安全风险"
|
||
- "生成项目依赖文档"
|
||
- "重构前评估依赖影响"
|
||
- "团队间共享依赖清单"
|
||
|
||
使用方法:
|
||
命令: "python3 dependency-analyzer.py [项目目录] [选项]"
|
||
参数:
|
||
project_dir: "项目目录路径(默认:当前目录)"
|
||
-o, --output: "输出JSON报告到指定文件"
|
||
-v, --verbose: "详细输出"
|
||
示例:
|
||
- "分析当前目录: python3 dependency-analyzer.py"
|
||
- "分析指定项目: python3 dependency-analyzer.py /path/to/project"
|
||
- "保存JSON报告: python3 dependency-analyzer.py . -o report.json"
|
||
- "详细输出: python3 dependency-analyzer.py -v"
|
||
|
||
依赖要求:
|
||
python版本: ">=3.8"
|
||
依赖包: # 无第三方依赖,只使用标准库
|
||
- json: "标准库"
|
||
- argparse: "标准库"
|
||
- pathlib: "标准库"
|
||
- typing: "标准库"
|
||
|
||
输入输出:
|
||
输入:
|
||
- requirements.txt: "Python依赖列表"
|
||
- package.json: "Node.js依赖配置"
|
||
输出:
|
||
- stdout: "Markdown格式的可视化报告"
|
||
- JSON文件: "结构化数据"
|
||
|
||
上次使用:
|
||
时间: 2025-11-14 10:30:00
|
||
用途: "分析ai-runtime项目依赖"
|
||
结果: |
|
||
发现项目使用Node.js + Python混合技术栈
|
||
识别出3个潜在安全风险
|
||
生成了详细的依赖报告
|
||
满意度: 0.92
|
||
|
||
相关工具:
|
||
- 前置工具: 无
|
||
- 互补工具:
|
||
- toolkit/python/analysis/analyze_logs.py(日志分析)
|
||
- toolkit/python/report/generate-report.py(报告生成)
|
||
- 替代工具:
|
||
- npm audit(仅JS)
|
||
- pip check(仅Python)
|
||
|
||
维护记录:
|
||
2025-11-14:
|
||
- 初始创建
|
||
- 支持Python requirements.txt解析
|
||
- 支持Node.js package.json解析
|
||
- 实现JSON和Markdown输出
|
||
2025-11-15:
|
||
- 添加安全问题检查(常见漏洞)
|
||
- 优化报告格式
|
||
TODO:
|
||
- 支持Go mod分析
|
||
- 支持Rust Cargo.toml分析
|
||
- 添加依赖图可视化(Graphviz)
|