Q-ray
分析当前软件项目,并生成一份简洁、可视化的项目概览。
目标
调用 Q-ray 时:
- 扫描项目目录结构。
- 判断项目是什么类型。
- 识别主要技术栈。
- 找出重要目录和关键文件。
- 推断项目的整体架构。
- 评估项目复杂度。
- 判断这个项目适合哪些方向的人学习。
- 推荐理解项目的阅读顺序。
- 最终生成一个独立可打开的 HTML 可视化报告。
安全规则
默认把项目视为只读。
不要:
- 修改项目源代码;
- 安装依赖;
- 执行项目代码;
- 读取或暴露
.env等文件中的敏感信息; - 执行未知脚本。
优先使用静态分析和文件读取来理解项目。
工作流程
当用户调用 Q-ray 分析一个陌生项目时:
- 使用
scripts/run_qray.py扫描当前项目。 - 读取扫描生成的
qray-data.json。 - 读取
references/analysis-rules.md,按照其中的规则解释扫描数据。 - 根据
qray-data.json中的文件列表,进一步读取:- README
- 项目配置文件
- 程序入口
- 关键源码文件
- 基于真实扫描数据和实际源码,分析:
- 这个项目是什么
- 项目类型
- 技术栈
- 文件结构
- 整体架构
- 项目复杂度
- 适合哪些方向的人学习
- 推荐阅读顺序
- 最终生成一个 HTML 可视化项目报告。
原则
- 优先依据
qray-data.json和实际源码。 references只提供分析方法,不提供项目事实。- 不确定的信息明确标记为“不确定”。
- 不修改被分析项目的源代码。
- 不安装依赖。
- 不执行未知项目代码。
