aurumz-rgb/RikaiCode

GitHub: aurumz-rgb/RikaiCode

RikaiCode 是一个AI驱动的代码库分析工具,通过扁平化、评级、安全扫描和可视化帮助用户高效评估和理解代码项目。

Stars: 1 | Forks: 1

![RikaiCode横幅](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/40956c4f4c012304.png) *为AI而扁平化,为理解提供上下文,为质量进行评级。* RikaiCode 是一款复杂的、基于浏览器的工具,旨在将复杂的代码库转化为结构化的、可操作的数据。无论你是需要将代码输入到 LLM 中,审计项目的质量,还是仅仅理解一个新的架构,RikaiCode 都能在一个漂亮的深色主题界面中为你提供所需的见解。 ![许可证](https://img.shields.io/badge/license-AGPL%203.0-blue) ![Python](https://img.shields.io/badge/Python-3.10+%2B-brightgreen) ![Streamlit](https://img.shields.io/badge/Powered%20by-Streamlit-orange) [![开源](https://badges.frapsoft.com/os/v1/open-source.svg?v=103)](https://github.com/ellerbrock/open-source-badges/) [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.20059448.svg?style=for-the-badge)](https://doi.org/10.5281/zenodo.20059448) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/bcd84159f2012305.svg)](https://github.com/aurumz-rgb/RikaiCode/actions/workflows/ci.yml) ## ✨ 主要功能 ### 1. 多源输入 无缝分析公开的 **GitHub** 或 **GitLab** 仓库,或上传本地文件和 **ZIP** 文件夹。它通过自动跳过二进制文件和非文本资源来处理大型仓库,以确保最佳性能。 ### 2. 智能评级系统 RikaiCode 为每个项目分配一个统一的评级(**A++ 到 C**)。这不只是一个随机分数;它是使用基于软件健康行业标准的加权算法计算得出的。 ### 3. AI 驱动的分析 (Rikai AI) 集成了 **GLM-4.7-Flash** 模型,RikaiCode 就像你的个人代码架构师。它可以总结整个项目、解释复杂的函数,并生成入门指南。 ### 4. 安全启发式扫描 自动扫描代码以发现潜在漏洞,包括: - 硬编码的 AWS 访问密钥。 - 通用 API 密钥/密码。 - 私有 SSH 密钥(RSA、DSA、EC、OpenSSH)。 ### 5. 可视化洞察 将原始的 git 数据转化为交互式可视化图表: - **树状图:** 文件扩展名分布。 - **饼图:** 代码组成。 - **热图:** 按星期几和每小时划分的提交活动。 ### 6. 一键导出 将你的整个扁平化代码库导出为单个文件,用于 LLM 上下文。支持的格式:**TXT, JSON, PDF, DOCX, HTML, Markdown, LaTeX**。 ## 📖 如何使用 1. **选择来源:** 在 GitHub URL、GitLab URL 或上传文件之间选择。 2. **分析:** - 如果使用 URL,点击“获取仓库”。 - 如果上传,拖放你的文件。 3. **探索:** 查看仓库评级、架构图、安全警报和代码统计信息。 4. **AI 洞察:** 展开“Rikai AI 分析”部分以生成架构摘要。 5. **导出:** 使用底部的导出按钮下载扁平化的上下文。 ## 📸 截图 *以下预览截图展示了所有可用的功能。* ![RikaiCode截图1](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/08386d7ac8012306.png) ![RikaiCode截图2](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/abfc0d268a012307.png) ![RikaiCode截图3](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/21db697dda012307.png) ![RikaiCode截图4](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/d50a03e198012308.png) ![RikaiCode截图5](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/60e9047ad9012309.png) *AI 生成的架构摘要 / 代码审查和仓库代码扁平化工具。* ![RikaiCode截图6](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/6d1ad6922c012309.png) ![RikaiCode截图7](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/e31680e8e5012310.png) ## 工作原理:评级逻辑 RikaiCode 使用 **100 分评分系统**。评级是通过在五个关键类别中累加分数来确定的。系统会在 **远程分析**(针对 GitHub/GitLab)和 **静态分析**(针对本地文件)之间切换。 ### 🌐 远程仓库评分 (GitHub/GitLab) | 类别 | 权重 | 标准与计算 | | :--- | :---: | :--- | | **受欢迎度** | **30 分** | 基于 Stars (0-20 分) 和 Fork 比率 (0-10 分)。高星数表示信任;健康的 Fork 比率意味着实用性。 | | **活跃度** | **25 分** | 衡量近期活动 (0-15 分) 和提交频率 (0-10 分)。近期提交得分更高。 | | **维护度** | **20 分** | 分析未关闭问题比率和 PR/MR 合并率。未关闭问题少且合并率高表示维护活跃。 | | **社区** | **15 分** | 基于 Watchers 的数量。Watchers 越多意味着社区关注度越高。 | | **稳定性** | **10 分** | 对已归档的仓库进行扣分。活跃项目得满分。 | ### 📁 静态代码评分(本地文件/上传) | 类别 | 权重 | 标准与计算 | | :--- | :---: | :--- | | **文档** | **30 分** | 检查 README 文件 (10 分) 和注释密度 (20 分)。注释与代码的比率越高得分越高。 | | **结构** | **30 分** | 模块化(每文件平均行数)和组织性(是否存在像 `main.py` 或 `index.js` 这样的入口点)。 | | **最佳实践** | **20 分** | 是否存在依赖文件 (15 分) 和 `.gitignore` (5 分)。 | | **规模** | **10 分** | 代码总行数。更大、更成熟的项目得分略高。 | | **稳定性** | **10 分** | 基于文件数量。文件越多通常意味着是一个结构化的、多模块的项目。 | ### 评级细分 - **A++ (95+):** 卓越质量,高度活跃,拥有巨大的社区信任。 - **A+ (90-94):** 优秀项目,指标强劲。 - **A (80-89):** 出色的项目,可靠。 - **B+ (70-79):** 良好,但可能在活动或受欢迎度方面有所欠缺。 - **B (60-69):** 一般质量。 - **C+ (50-59):** 中等,可能存在维护问题。 - **C (<50):** 分数低,谨慎使用。 ## 🤖 AI 功能深入解析 RikaiCode 利用 **GLM-4.7-Flash** 模型提供超越简单统计的智能洞察。 | AI 功能 | 描述 | | :--- | :--- | | **架构概述** | 分析文件树和 README 以识别架构模式(例如 MVC、微服务)并总结项目的目的。 | | **项目摘要** | 生成一份“执行摘要”,包括问题陈述、目标受众和关键功能。非常适合快速理解一个新的代码库。 | | **交互式代码审查** | 选择任何文件以接收详细的审查,涵盖优势、改进、安全检查和风格提示。 | | **函数解释器** | 专门针对 Python 代码。选择一个函数,Rikai 将解释其输入、输出、逻辑和潜在的边界情况。 | | **复杂性分析** | 根据文件大小和结构估算技术债务和复杂度级别(从低到严重)。 | | **重构建议** | 建议设计模式(工厂、单例)和现代框架来改进代码库。 | | **开发者入门指南** | 根据检测到的基础设施,创建一份包含安装步骤、配置和运行命令的“快速开始”指南。 | | **依赖项洞察** | 分析 `requirements.txt` 或 `package.json` 以标记潜在的过时包或安全风险。 | ## 💡 使用场景 RikaiCode 功能多样,专为开发人员、安全研究人员和数据科学家构建。 1. **LLM 上下文准备:** 将整个仓库扁平化为单个文本文件(TXT/JSON),用作 ChatGPT、Claude 或 Gemini 等大型语言模型的上下文。它剥离了不必要的二进制文件,并将代码格式化为适合 AI 消费的完美格式。 2. **代码质量与评级:** 即时获取任何公开仓库的“健康分数”。在使用开源依赖项之前分析提交频率、问题比率和维护活动。 3. **安全审计:** 在将代码推送到公共平台之前,运行快速启发式扫描以检测硬编码的 API 密钥、AWS 密钥或私有密钥。 4. **架构入门:** 新团队成员可以可视化文件结构、检测依赖项并阅读 AI 生成的摘要,在几分钟而非几小时内了解项目的架构。 ## 🌐 在线与离线使用 RikaiCode 提供灵活的部署选项以适应你的工作流程。 ### ☁️ 在线运行 (Streamlit Cloud) 你可以直接在以下地址运行已托管的 Streamlit **在线版**:https://rikaicode.streamlit.app * **注意:** 在线部署可能对非常大的仓库有超时限制。 ### 💻 本地运行(离线) 对于高级用户和大规模分析,建议在你的机器上本地托管 RikaiCode。 * **最适合:** 巨大的仓库(10,000+ 行代码)、私有代码库和重度 AI 分析任务。 * **隐私:** 你的代码保留在你的机器上。没有数据上传到第三方服务器(除非你明确使用 AI 分析功能)。 * **性能:** 无执行时间限制;可处理海量 ZIP 文件和深度扫描而不会中断。 ## 🛠️ 安装与设置 按照以下步骤在你的机器上本地运行 RikaiCode。 ### 前置条件 - Python 3.11 或更高版本 - pip(Python 包安装器) ### 步骤 1:克隆仓库 ``` git clone https://github.com/aurumz-rgb/RikaiCode.git cd RikaiCode ``` ### 步骤 2:创建虚拟环境(推荐) 这可以隔离你的项目依赖项。 **macOS / Linux:** ``` python3 -m venv venv source venv/bin/activate ``` **Windows:** ``` python -m venv venv .\venv\Scripts\activate ``` ### 步骤 3:安装依赖项 使用 `requirements.txt` 文件安装所有必需的库。 ``` pip install -r requirements.txt ``` ### 步骤 4:配置 API 密钥(可选) 要启用 AI 功能,你需要一个 ZhipuAI API 密钥。 1. 在项目根文件夹中创建一个名为 `.env` 的文件。 2. 将你的 API 密钥添加到文件中: ZHIPUAI_API_KEY=你的实际API密钥 3. 保存文件。 设置完成后,使用 Streamlit 命令启动应用程序: ``` streamlit run app.py ``` 应用程序将自动在你的默认 Web 浏览器中打开,地址为 `http://localhost:8501`。 ## 项目架构 RikaiCode 基于模块化架构构建,旨在提高可维护性和可扩展性。该应用程序分为 5 个核心组件: - **`app.py`**:主入口点。处理 Streamlit UI 渲染、会话状态管理和用户交互。 - **`config.py`**:集中化配置。管理 CSS 样式、页面设置、常量(如要跳过的文件扩展名)和辅助工具。 - **`processing.py`**:数据层。负责从 GitHub/GitLab API 获取数据、处理 ZIP 解压以及处理上传的文件。 - **`analysis.py`**:逻辑层。包含评级算法、安全扫描器、依赖检测器和 AI 集成功能。 - **`export.py`**:输出层。生成各种格式(PDF、DOCX、JSON 等)的可下载报告。 ## 🔗 致谢 ![ZAI](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/8249406364012311.png) Z.ai GitHub: [zai-org](https://github.com/zai-org) 我衷心感谢 **GLM (Z.ai)** 的开发者提供了 RikaiCode 中使用的开源 AI 模型。 更多信息,请参见 [GLM-4.7-Flash Hugging Face](https://huggingface.co/zai-org/GLM-4.7-Flash)。 ## 许可证 AGPL v3 License 本项目采用 AGPL 3.0 许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。 ## 📨 联系方式 有问题、反馈或合作想法?请通过 [pteroisvolitans12@gmail.com](mailto:pteroisvolitans12@gmail.com) 联系我,或在 GitHub 上提交 issue。 欢迎贡献!

Aurumz 用 🤍 制作

标签:AI驱动分析, GitHub集成, GitLab集成, Kubernetes, Linux 内核安全, LLM集成, Python, Streamlit, ZIP处理, 人工智能, 代码分析, 代码审查, 代码扁平化, 代码质量评估, 凭证管理, 威胁情报, 安全扫描, 开发者工具, 数据管道, 文件上传, 无后门, 时序注入, 架构可视化, 浏览器工具, 用户模式Hook绕过, 自动化分析, 访问控制, 跨站脚本, 软件工程, 逆向工具, 项目管理