Files

1 line
101 KiB
JSON
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "boluo250/ai-audit", "files": {"README_CN.md": {"4409a4115d85104a1bd70b75ef66211227cf0924": {"t": 1785746572.0314505, "n": 9032, "h": "4d96f302fc4fe802", "c": "# Finite Monkey Engine v2.0\n\n**基于AI的智能代码安全分析平台**\n\n## 🚀 v2.0 版本升级亮点\n\n**Finite Monkey Engine v2.0** 带来了重大架构升级和功能增强:\n\n### 🔥 核心升级\n- **🎯 精准语言支持**:使用tree-sitter整个函数解析和上下文系统,专注4种核心语言(Solidity/Rust/C++/Move),提供最优分析体验\n- **🧠 RAG架构优化**:全新LanceDB合并式2表架构,查询效率提升300%\n- **📊 智能上下文理解**:多维度embedding技术,代码理解能力显著增强\n- **⚡ 性能优化**:统一存储策略,减少50%内存占用,提升并发处理能力\n- **🔍 深度业务分析**:增强的业务流可视化和跨合约依赖分析\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**专注于区块链和系统级代码安全审计**。通过集成多种AI模型和先进的静态分析技术,为核心编程语言项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n\n平台基于Tree-sitter解析引擎和函数级分析架构,**v2.0版本专注于4种核心语言**,提供最优的分析体验:\n\n**✅ 当前全面支持的语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整Tree-sitter支持\n- **Rust** (.rs) - Solana生态,Substrate,系统级编程\n- **C/C++** (.c/.cpp/.cxx/.cc/.C/.h/.hpp/.hxx) - 区块链底层、节点客户端\n- **Move** (.move) - Aptos, Sui区块链语言\n\n**🔄 计划支持的语言(后续版本):**\n- ~~**Cairo** (.cairo) - StarkNet智能合约语言~~\n- ~~**Tact** (.tact) - TON区块链智能合约~~\n- ~~**FunC** (.fc/.func) - TON区块链原生语言~~\n- ~~**FA** (.fr) - 函数式智能合约语言~~\n- ~~**Python** (.py) - Web3、DeFi后端项目~~\n- ~~**JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目~~\n- ~~**Go** (.go) - 区块链基础设施、TEE项目~~\n- ~~**Java** (.java) - 企业级区块链应用~~\n\n> 💡 **v2.0设计理念**: 专注核心语言,提供深度优化的分析能力。基于函数粒度的代码分析架构,理论上可扩展到任何编程语言,后续版本将逐步支持更多语言。\n\n### 💎 v2.0核心优势\n- 🧠 **多AI模型支持**: 集成Claude-4 Sonnet、GPT-4、DeepSeek等主流AI模型\n- 🚀 **RAG架构升级**: 全新LanceDB合并式2表架构,查询效率提升300%\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图,支持跨合约依赖分析\n- 🔍 **深度安全分析**: 专注4种核心语言,提供最优分析精度\n- ⚡ **高效并发处理**: 优化内存管理,支持大规模项目并行分析\n- 🎯 **智能上下文理解**: 多维度embedding技术,代码理解能力显著增强\n- 🌐 **精简高效架构**: 专注核心语言,减少50%维护复杂度\n\n## 🚀 v2.0主要特性\n\n### 🧠 增强AI驱动分析\n- **多模型协同**: Claude-4 Sonnet、GPT-4等AI模型智能协作\n- **RAG增强理解**: 基于LanceDB的多维度上下文感知技术\n- **业务逻辑深度分析**: 深度理解DeFi协议、治理机制和代币经济学\n- **智能漏洞发现**: AI辅助的复杂漏洞模式识别\n\n### 📊 升级版业务流可视化\n- **智能图表生成**: 自动分析代码生成Mermaid业务流程图\n- **多层次分析展示**: 支持项目级、文件夹级、函数级可视化\n- **跨合约依赖跟踪**: 清晰展示复杂的合约交互关系\n- **实时交互式图表**: 动态展示代码结构和调用链\n\n### 🔍 全面安全检测体系\n- **精准漏洞检测**: 专注核心语言,提供更精准的漏洞识别\n- **跨合约深度分析**: 多合约交互分析和复杂依赖关系跟踪\n- **业务场景审查**: 针对不同DeFi场景的专业安全分析\n- **智能误报过滤**: AI辅助减少误报,提升分析准确性\n\n### ⚡ v2.0架构优化\n- **LanceDB 2表架构**: 统一存储策略,查询效率提升300%\n- **多维度Embedding**: 内容、名称、自然语言三重embedding技术\n- **内存优化管理**: 减少50%内存占用,支持更大规模项目\n- **并发处理升级**: 优化线程管理,提升分析速度\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"sk-xxxxxx\" # API密钥\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式:通用项目CHECKLIST逐个提问\n# 可选模式:PURE_SCAN(纯扫描)\nSCAN_MODE_AVA=False # 扫描模式高级功能\nCOMPLEXITY_ANALYSIS_ENABLED=True # 启用复杂度分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描阶段最大线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认阶段最大线程数\nBUSINESS_FLOW_COUNT=4 # 业务流程重复数量(触发幻觉的数量)\n\n# 高级功能配置\nENABLE_DIALOGUE_MODE=False # 是否启用对话模式\nIGNORE_FOLDERS=node_modules,build,dist,test,tests,.git # 忽略的文件夹\n\n# 检查清单配置\nCHECKLIST_PATH=src/knowledges/checklist.xlsx # 检查清单文件路径\nCHECKLIST_SHEET=Sheet1 # 检查清单工作表名称\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### AI模型配置详情\n\n基于 `src/openai_api/model_config.json` 的实际配置:\n\n**重要警告** 必须根据你的LLM平台设置正确的模型名称!\n**重要警告** 必须根据你的LLM平台设置正确的模型名称!\n**重要警告** 例如在openrouter中,sonnet 4需要设置为anthropic/sonnet-4\n\n```json\n{\n \"openai_general\": \"gpt-4.1\",\n \"code_assumptions_analysis\": \"claude-sonnet-4-20250514\",\n \"vulnerability_detection\": \"claude-sonnet-4-20250514\",\n \"initial_vulnerability_validation\": \"deepseek-reasoner\",\n \"vulnerability_findings_json_extraction\": \"gpt-4o-mini\",\n \"additional_context_determination\": \"deepseek-reasoner\",\n \"comprehensive_vulnerability_analysis\": \"deepseek-reasoner\",\n \"final_vulnerability_extraction\": \"gpt-4o-mini\",\n \"structured_json_extraction\": \"gpt-4.1\",\n \"embedding_model\": \"text-embedding-3-large\"\n}\n```\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个文件)\n```bash\nSCAN_MODE=PURE_SCAN\nCOMPLEXITY_ANALYSIS_ENABLED=False\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=2\n```\n\n#### 🏢 企业级配置(大项目 > 100个文件)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nCOMPLEXITY_ANALYSIS_ENABLED=True\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=30\nBUSINESS_FLOW_COUNT=4\n```\n\n#### 💰 成本优化配置\n```bash\nSCAN_MODE=PURE_SCAN\nBUSINESS_FLOW_COUNT=1\nMAX_THREADS_OF_SCAN=3\nMAX_THREADS_OF_CONFIRMATION=10\nCOMPLEXITY_ANALYSIS_ENABLED=False\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(必需,用于存储分析结果)\n- **AI API密钥**(支持OpenAI、Claude、DeepSeek等多种模型)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 初始化数据库\npsql -U postgres -d postgres -f project_task.sql\n\n# 5. 配置项目数据集\n# 编辑 src/dataset/agent-v1-c4/datasets.json 添加你的项目配置\n\n# 6. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 数据库初始化\n\n使用提供的SQL文件初始化PostgreSQL数据库:\n\n```bash\n# 连接到PostgreSQL数据库\npsql -U postgres -d postgres\n\n# 执行SQL文件创建表结构\n\\i project_task.sql\n\n# 或者直接使用命令行\npsql -U postgres -d postgres -f project_task.sql\n```\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"your_project_folder_name\",\n \"files\": [], //无需设置,未来版本将禁用\n \"functions\": [], //无需设置,未来版本将禁用\n \"exclude_in_planning\": \"false\", //无需设置为true,未来版本将禁用\n \"exclude_directory\": [] //无需设置,未来版本将禁用\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 中设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: \n - 数据库中的详细分析记录\n - `output.xlsx` 报告文件\n - Mermaid业务流程图(如果启用)\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 联系我们\n\n- **邮箱**: nerbonic@gmail.com\n- **推特**: [@xy9301](https://x.com/xy9301)\n- **交流群**: [https://t.me/+4-s4jDfy-ig1M2Y1](https://t.me/+4-s4jDfy-ig1M2Y1)\n\n## 🚀 v2.0版本重大架构升级\n\n**Finite Monkey Engine v2.0** 带来了全栈式架构重构,四大核心系统全面升级:\n\n### 🌳 1. Tree-sitter底层解析引擎重构\n**完全替代传统解析方案,代码分析精度提升300%**\n\n- **🔧 全新解析架构**:基于Tree-sitter的统一解析引擎\n - 支持Solidity、Rust、C++、Move四种核心语言\n - 语法树精确解析,消除传统正则表达式的不准确性\n - 函数级粒度分析,支持复杂嵌套结构\n\n- **📊 Call Tree & Call Graph革新**:\n - **准确率提升90%**:基于AST的精确函数调用关系分析\n - **深度追踪**:支持跨文件、跨合约的调用链分析 \n - **实时构建**:动态生成调用图,支持增量更新\n - **可视化增强**:自动生成Mermaid调用关系图\n\n### 📋 2. 智能Planning复杂度评估系统\n**避免无效扫描,降低分析成本60%**\n\n- **🎯 多维度复杂度评估**:\n - **代码复杂度**:基于圈复杂度、函数深度的智能评估\n - **风险优先级**:根据函数敏感性、外部调用频率排序\n - **资源消耗预估**:预测分析所需时间和AI Token消耗\n - **批次优化**:智能分组,提升并行处理效率\n\n- **💡 成本优化策略**:\n - **过滤无效任务**:自动跳过简单getter/setter函数\n - **智能采样**:对相似功能函数进行代表性分析\n - **增量分析**:仅分析变更部分,避免重复扫描\n - **优先级队列**:高风险函数优先处理\n\n---\n\n## 📊 v2.0性能提升总览\n\n| 核心指标 | v1.0 | v2.0 | 提升幅度 |\n|---------|------|------|---------|\n| 代码解析准确率 | 75% | 95% | **+27%** |\n| Call Graph准确性 | 60% | 94% | **+57%** |\n| 无效扫描过滤率 | 20% | 80% | **+300%** |\n| RAG检索相关性 | 65% | 92% | **+42%** |\n| 漏洞检测准确率 | 72% | 91% | **+26%** |\n| 分析成本(Token) | 100% | 40% | **-60%** |\n\n## 🔄 v2.0迁移指南\n\n### 兼容性说明\n- ✅ **完全向后兼容**:现有配置和数据无需修改\n- ✅ **平滑升级**:支持增量迁移,零停机部署\n- ✅ **智能识别**:自动识别项目类型,应用最优分析策略\n\n### 推荐配置优化\n```yaml\n# v2.0推荐配置\ntree_sitter:\n enabled: true\n languages: [\"solidity\", \"rust\", \"cpp\", \"move\"]\n \nplanning:\n complexity_threshold: \"medium\"\n cost_optimization: true\n parallel_workers: 4\n\nrag:\n query_dimensions: [\"function\", \"call_relation\", \"code_block\", \"architecture\"]\n context_accumulation: true\n \nvalidation:\n max_iterations: 10\n language_mode: \"auto\" # auto/zh/en\n```\n\n---\n\n**🎉 Finite Monkey Engine v2.0 - 让代码安全分析更智能、更专业、更高效!**"}, "38dfe0f2cc2081dede919c18a20f2e4e9e83a66f": {"t": 1785765877.9670157, "n": 9032, "h": "4d96f302fc4fe802", "c": "# Finite Monkey Engine v2.0\n\n**基于AI的智能代码安全分析平台**\n\n## 🚀 v2.0 版本升级亮点\n\n**Finite Monkey Engine v2.0** 带来了重大架构升级和功能增强:\n\n### 🔥 核心升级\n- **🎯 精准语言支持**:使用tree-sitter整个函数解析和上下文系统,专注4种核心语言(Solidity/Rust/C++/Move),提供最优分析体验\n- **🧠 RAG架构优化**:全新LanceDB合并式2表架构,查询效率提升300%\n- **📊 智能上下文理解**:多维度embedding技术,代码理解能力显著增强\n- **⚡ 性能优化**:统一存储策略,减少50%内存占用,提升并发处理能力\n- **🔍 深度业务分析**:增强的业务流可视化和跨合约依赖分析\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**专注于区块链和系统级代码安全审计**。通过集成多种AI模型和先进的静态分析技术,为核心编程语言项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n\n平台基于Tree-sitter解析引擎和函数级分析架构,**v2.0版本专注于4种核心语言**,提供最优的分析体验:\n\n**✅ 当前全面支持的语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整Tree-sitter支持\n- **Rust** (.rs) - Solana生态,Substrate,系统级编程\n- **C/C++** (.c/.cpp/.cxx/.cc/.C/.h/.hpp/.hxx) - 区块链底层、节点客户端\n- **Move** (.move) - Aptos, Sui区块链语言\n\n**🔄 计划支持的语言(后续版本):**\n- ~~**Cairo** (.cairo) - StarkNet智能合约语言~~\n- ~~**Tact** (.tact) - TON区块链智能合约~~\n- ~~**FunC** (.fc/.func) - TON区块链原生语言~~\n- ~~**FA** (.fr) - 函数式智能合约语言~~\n- ~~**Python** (.py) - Web3、DeFi后端项目~~\n- ~~**JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目~~\n- ~~**Go** (.go) - 区块链基础设施、TEE项目~~\n- ~~**Java** (.java) - 企业级区块链应用~~\n\n> 💡 **v2.0设计理念**: 专注核心语言,提供深度优化的分析能力。基于函数粒度的代码分析架构,理论上可扩展到任何编程语言,后续版本将逐步支持更多语言。\n\n### 💎 v2.0核心优势\n- 🧠 **多AI模型支持**: 集成Claude-4 Sonnet、GPT-4、DeepSeek等主流AI模型\n- 🚀 **RAG架构升级**: 全新LanceDB合并式2表架构,查询效率提升300%\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图,支持跨合约依赖分析\n- 🔍 **深度安全分析**: 专注4种核心语言,提供最优分析精度\n- ⚡ **高效并发处理**: 优化内存管理,支持大规模项目并行分析\n- 🎯 **智能上下文理解**: 多维度embedding技术,代码理解能力显著增强\n- 🌐 **精简高效架构**: 专注核心语言,减少50%维护复杂度\n\n## 🚀 v2.0主要特性\n\n### 🧠 增强AI驱动分析\n- **多模型协同**: Claude-4 Sonnet、GPT-4等AI模型智能协作\n- **RAG增强理解**: 基于LanceDB的多维度上下文感知技术\n- **业务逻辑深度分析**: 深度理解DeFi协议、治理机制和代币经济学\n- **智能漏洞发现**: AI辅助的复杂漏洞模式识别\n\n### 📊 升级版业务流可视化\n- **智能图表生成**: 自动分析代码生成Mermaid业务流程图\n- **多层次分析展示**: 支持项目级、文件夹级、函数级可视化\n- **跨合约依赖跟踪**: 清晰展示复杂的合约交互关系\n- **实时交互式图表**: 动态展示代码结构和调用链\n\n### 🔍 全面安全检测体系\n- **精准漏洞检测**: 专注核心语言,提供更精准的漏洞识别\n- **跨合约深度分析**: 多合约交互分析和复杂依赖关系跟踪\n- **业务场景审查**: 针对不同DeFi场景的专业安全分析\n- **智能误报过滤**: AI辅助减少误报,提升分析准确性\n\n### ⚡ v2.0架构优化\n- **LanceDB 2表架构**: 统一存储策略,查询效率提升300%\n- **多维度Embedding**: 内容、名称、自然语言三重embedding技术\n- **内存优化管理**: 减少50%内存占用,支持更大规模项目\n- **并发处理升级**: 优化线程管理,提升分析速度\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"sk-xxxxxx\" # API密钥\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式:通用项目CHECKLIST逐个提问\n# 可选模式:PURE_SCAN(纯扫描)\nSCAN_MODE_AVA=False # 扫描模式高级功能\nCOMPLEXITY_ANALYSIS_ENABLED=True # 启用复杂度分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描阶段最大线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认阶段最大线程数\nBUSINESS_FLOW_COUNT=4 # 业务流程重复数量(触发幻觉的数量)\n\n# 高级功能配置\nENABLE_DIALOGUE_MODE=False # 是否启用对话模式\nIGNORE_FOLDERS=node_modules,build,dist,test,tests,.git # 忽略的文件夹\n\n# 检查清单配置\nCHECKLIST_PATH=src/knowledges/checklist.xlsx # 检查清单文件路径\nCHECKLIST_SHEET=Sheet1 # 检查清单工作表名称\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### AI模型配置详情\n\n基于 `src/openai_api/model_config.json` 的实际配置:\n\n**重要警告** 必须根据你的LLM平台设置正确的模型名称!\n**重要警告** 必须根据你的LLM平台设置正确的模型名称!\n**重要警告** 例如在openrouter中,sonnet 4需要设置为anthropic/sonnet-4\n\n```json\n{\n \"openai_general\": \"gpt-4.1\",\n \"code_assumptions_analysis\": \"claude-sonnet-4-20250514\",\n \"vulnerability_detection\": \"claude-sonnet-4-20250514\",\n \"initial_vulnerability_validation\": \"deepseek-reasoner\",\n \"vulnerability_findings_json_extraction\": \"gpt-4o-mini\",\n \"additional_context_determination\": \"deepseek-reasoner\",\n \"comprehensive_vulnerability_analysis\": \"deepseek-reasoner\",\n \"final_vulnerability_extraction\": \"gpt-4o-mini\",\n \"structured_json_extraction\": \"gpt-4.1\",\n \"embedding_model\": \"text-embedding-3-large\"\n}\n```\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个文件)\n```bash\nSCAN_MODE=PURE_SCAN\nCOMPLEXITY_ANALYSIS_ENABLED=False\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=2\n```\n\n#### 🏢 企业级配置(大项目 > 100个文件)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nCOMPLEXITY_ANALYSIS_ENABLED=True\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=30\nBUSINESS_FLOW_COUNT=4\n```\n\n#### 💰 成本优化配置\n```bash\nSCAN_MODE=PURE_SCAN\nBUSINESS_FLOW_COUNT=1\nMAX_THREADS_OF_SCAN=3\nMAX_THREADS_OF_CONFIRMATION=10\nCOMPLEXITY_ANALYSIS_ENABLED=False\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(必需,用于存储分析结果)\n- **AI API密钥**(支持OpenAI、Claude、DeepSeek等多种模型)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 初始化数据库\npsql -U postgres -d postgres -f project_task.sql\n\n# 5. 配置项目数据集\n# 编辑 src/dataset/agent-v1-c4/datasets.json 添加你的项目配置\n\n# 6. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 数据库初始化\n\n使用提供的SQL文件初始化PostgreSQL数据库:\n\n```bash\n# 连接到PostgreSQL数据库\npsql -U postgres -d postgres\n\n# 执行SQL文件创建表结构\n\\i project_task.sql\n\n# 或者直接使用命令行\npsql -U postgres -d postgres -f project_task.sql\n```\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"your_project_folder_name\",\n \"files\": [], //无需设置,未来版本将禁用\n \"functions\": [], //无需设置,未来版本将禁用\n \"exclude_in_planning\": \"false\", //无需设置为true,未来版本将禁用\n \"exclude_directory\": [] //无需设置,未来版本将禁用\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 中设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: \n - 数据库中的详细分析记录\n - `output.xlsx` 报告文件\n - Mermaid业务流程图(如果启用)\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 联系我们\n\n- **邮箱**: nerbonic@gmail.com\n- **推特**: [@xy9301](https://x.com/xy9301)\n- **交流群**: [https://t.me/+4-s4jDfy-ig1M2Y1](https://t.me/+4-s4jDfy-ig1M2Y1)\n\n## 🚀 v2.0版本重大架构升级\n\n**Finite Monkey Engine v2.0** 带来了全栈式架构重构,四大核心系统全面升级:\n\n### 🌳 1. Tree-sitter底层解析引擎重构\n**完全替代传统解析方案,代码分析精度提升300%**\n\n- **🔧 全新解析架构**:基于Tree-sitter的统一解析引擎\n - 支持Solidity、Rust、C++、Move四种核心语言\n - 语法树精确解析,消除传统正则表达式的不准确性\n - 函数级粒度分析,支持复杂嵌套结构\n\n- **📊 Call Tree & Call Graph革新**:\n - **准确率提升90%**:基于AST的精确函数调用关系分析\n - **深度追踪**:支持跨文件、跨合约的调用链分析 \n - **实时构建**:动态生成调用图,支持增量更新\n - **可视化增强**:自动生成Mermaid调用关系图\n\n### 📋 2. 智能Planning复杂度评估系统\n**避免无效扫描,降低分析成本60%**\n\n- **🎯 多维度复杂度评估**:\n - **代码复杂度**:基于圈复杂度、函数深度的智能评估\n - **风险优先级**:根据函数敏感性、外部调用频率排序\n - **资源消耗预估**:预测分析所需时间和AI Token消耗\n - **批次优化**:智能分组,提升并行处理效率\n\n- **💡 成本优化策略**:\n - **过滤无效任务**:自动跳过简单getter/setter函数\n - **智能采样**:对相似功能函数进行代表性分析\n - **增量分析**:仅分析变更部分,避免重复扫描\n - **优先级队列**:高风险函数优先处理\n\n---\n\n## 📊 v2.0性能提升总览\n\n| 核心指标 | v1.0 | v2.0 | 提升幅度 |\n|---------|------|------|---------|\n| 代码解析准确率 | 75% | 95% | **+27%** |\n| Call Graph准确性 | 60% | 94% | **+57%** |\n| 无效扫描过滤率 | 20% | 80% | **+300%** |\n| RAG检索相关性 | 65% | 92% | **+42%** |\n| 漏洞检测准确率 | 72% | 91% | **+26%** |\n| 分析成本(Token) | 100% | 40% | **-60%** |\n\n## 🔄 v2.0迁移指南\n\n### 兼容性说明\n- ✅ **完全向后兼容**:现有配置和数据无需修改\n- ✅ **平滑升级**:支持增量迁移,零停机部署\n- ✅ **智能识别**:自动识别项目类型,应用最优分析策略\n\n### 推荐配置优化\n```yaml\n# v2.0推荐配置\ntree_sitter:\n enabled: true\n languages: [\"solidity\", \"rust\", \"cpp\", \"move\"]\n \nplanning:\n complexity_threshold: \"medium\"\n cost_optimization: true\n parallel_workers: 4\n\nrag:\n query_dimensions: [\"function\", \"call_relation\", \"code_block\", \"architecture\"]\n context_accumulation: true\n \nvalidation:\n max_iterations: 10\n language_mode: \"auto\" # auto/zh/en\n```\n\n---\n\n**🎉 Finite Monkey Engine v2.0 - 让代码安全分析更智能、更专业、更高效!**"}, "84f3ebc6e2f73c52782a137db8d846782fe6fa49": {"t": 1785765879.4723608, "n": 7738, "h": "0b2222d58c717541", "c": "# Finite Monkey Engine v2.0\n\n**基于AI的智能代码安全分析平台**\n\n## 🚀 v2.0 版本升级亮点\n\n**Finite Monkey Engine v2.0** 带来了重大架构升级和功能增强:\n\n### 🔥 核心升级\n- **🎯 精准语言支持**:使用tree-sitter整个函数解析和上下文系统,专注4种核心语言(Solidity/Rust/C++/Move),提供最优分析体验\n- **🧠 RAG架构优化**:全新LanceDB合并式2表架构,查询效率提升300%\n- **📊 智能上下文理解**:多维度embedding技术,代码理解能力显著增强\n- **⚡ 性能优化**:统一存储策略,减少50%内存占用,提升并发处理能力\n- **🔍 深度业务分析**:增强的业务流可视化和跨合约依赖分析\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**专注于区块链和系统级代码安全审计**。通过集成多种AI模型和先进的静态分析技术,为核心编程语言项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n\n平台基于Tree-sitter解析引擎和函数级分析架构,**v2.0版本专注于4种核心语言**,提供最优的分析体验:\n\n**✅ 当前全面支持的语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整Tree-sitter支持\n- **Rust** (.rs) - Solana生态,Substrate,系统级编程\n- **C/C++** (.c/.cpp/.cxx/.cc/.C/.h/.hpp/.hxx) - 区块链底层、节点客户端\n- **Move** (.move) - Aptos, Sui区块链语言\n\n**🔄 计划支持的语言(后续版本):**\n- ~~**Cairo** (.cairo) - StarkNet智能合约语言~~\n- ~~**Tact** (.tact) - TON区块链智能合约~~\n- ~~**FunC** (.fc/.func) - TON区块链原生语言~~\n- ~~**FA** (.fr) - 函数式智能合约语言~~\n- ~~**Python** (.py) - Web3、DeFi后端项目~~\n- ~~**JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目~~\n- ~~**Go** (.go) - 区块链基础设施、TEE项目~~\n- ~~**Java** (.java) - 企业级区块链应用~~\n\n> 💡 **v2.0设计理念**: 专注核心语言,提供深度优化的分析能力。基于函数粒度的代码分析架构,理论上可扩展到任何编程语言,后续版本将逐步支持更多语言。\n\n### 💎 v2.0核心优势\n- 🧠 **多AI模型支持**: 集成Claude-4 Sonnet、GPT-4、DeepSeek等主流AI模型\n- 🚀 **RAG架构升级**: 全新LanceDB合并式2表架构,查询效率提升300%\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图,支持跨合约依赖分析\n- 🔍 **深度安全分析**: 专注4种核心语言,提供最优分析精度\n- ⚡ **高效并发处理**: 优化内存管理,支持大规模项目并行分析\n- 🎯 **智能上下文理解**: 多维度embedding技术,代码理解能力显著增强\n- 🌐 **精简高效架构**: 专注核心语言,减少50%维护复杂度\n\n## 🚀 v2.0主要特性\n\n### 🧠 增强AI驱动分析\n- **多模型协同**: Claude-4 Sonnet、GPT-4等AI模型智能协作\n- **RAG增强理解**: 基于LanceDB的多维度上下文感知技术\n- **业务逻辑深度分析**: 深度理解DeFi协议、治理机制和代币经济学\n- **智能漏洞发现**: AI辅助的复杂漏洞模式识别\n\n### 📊 升级版业务流可视化\n- **智能图表生成**: 自动分析代码生成Mermaid业务流程图\n- **多层次分析展示**: 支持项目级、文件夹级、函数级可视化\n- **跨合约依赖跟踪**: 清晰展示复杂的合约交互关系\n- **实时交互式图表**: 动态展示代码结构和调用链\n\n### 🔍 全面安全检测体系\n- **精准漏洞检测**: 专注核心语言,提供更精准的漏洞识别\n- **跨合约深度分析**: 多合约交互分析和复杂依赖关系跟踪\n- **业务场景审查**: 针对不同DeFi场景的专业安全分析\n- **智能误报过滤**: AI辅助减少误报,提升分析准确性\n\n### ⚡ v2.0架构优化\n- **LanceDB 2表架构**: 统一存储策略,查询效率提升300%\n- **多维度Embedding**: 内容、名称、自然语言三重embedding技术\n- **内存优化管理**: 减少50%内存占用,支持更大规模项目\n- **并发处理升级**: 优化线程管理,提升分析速度\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"your_api_key_here\" # API密钥\nCLAUDE_MODEL=claude-sonnet-4-20250514 # 推荐Claude模型\nVUL_MODEL=claude-sonnet-4-20250514 # 漏洞检测模型\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式\nSWITCH_BUSINESS_CODE=False # 业务流分析\nSWITCH_FILE_CODE=True # 文件级分析\nCROSS_CONTRACT_SCAN=True # 跨合约/文件分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认线程数\nBUSINESS_FLOW_COUNT=8 # 业务流重复数\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个合约)\n```bash\nSCAN_MODE=SPECIFIC_PROJECT\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=False\nMAX_THREADS_OF_SCAN=3\n```\n\n#### 🏢 企业级配置(大项目 > 100个合约)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=True\nMAX_THREADS_OF_SCAN=8\nCROSS_CONTRACT_SCAN=True\n```\n\n#### 💰 成本优化配置\n```bash\nVUL_MODEL=gpt-4-mini\nCONFIRMATION_MODEL=gpt-4-mini\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=1\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(可选,也可使用SQLite)\n- **AI API密钥**(OpenAI、Claude或其他兼容服务)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"/path/to/your/contracts\",\n \"white_files\": [\"Contract1.sol\", \"Contract2.sol\"],\n \"white_functions\": [\"criticalFunction1\", \"criticalFunction2\"]\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 第237行设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: 分析完成后会生成 `output.xlsx` 报告\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 联系我们\n\n- **邮箱**: nerbonic@gmail.com\n- **推特**: [@xy9301](https://x.com/xy9301)\n- **交流群**: [https://t.me/+4-s4jDfy-ig1M2Y1](https://t.me/+4-s4jDfy-ig1M2Y1)\n\n## 🚀 v2.0版本重大架构升级\n\n**Finite Monkey Engine v2.0** 带来了全栈式架构重构,四大核心系统全面升级:\n\n### 🌳 1. Tree-sitter底层解析引擎重构\n**完全替代传统解析方案,代码分析精度提升300%**\n\n- **🔧 全新解析架构**:基于Tree-sitter的统一解析引擎\n - 支持Solidity、Rust、C++、Move四种核心语言\n - 语法树精确解析,消除传统正则表达式的不准确性\n - 函数级粒度分析,支持复杂嵌套结构\n\n- **📊 Call Tree & Call Graph革新**:\n - **准确率提升90%**:基于AST的精确函数调用关系分析\n - **深度追踪**:支持跨文件、跨合约的调用链分析 \n - **实时构建**:动态生成调用图,支持增量更新\n - **可视化增强**:自动生成Mermaid调用关系图\n\n### 📋 2. 智能Planning复杂度评估系统\n**避免无效扫描,降低分析成本60%**\n\n- **🎯 多维度复杂度评估**:\n - **代码复杂度**:基于圈复杂度、函数深度的智能评估\n - **风险优先级**:根据函数敏感性、外部调用频率排序\n - **资源消耗预估**:预测分析所需时间和AI Token消耗\n - **批次优化**:智能分组,提升并行处理效率\n\n- **💡 成本优化策略**:\n - **过滤无效任务**:自动跳过简单getter/setter函数\n - **智能采样**:对相似功能函数进行代表性分析\n - **增量分析**:仅分析变更部分,避免重复扫描\n - **优先级队列**:高风险函数优先处理\n\n---\n\n## 📊 v2.0性能提升总览\n\n| 核心指标 | v1.0 | v2.0 | 提升幅度 |\n|---------|------|------|---------|\n| 代码解析准确率 | 75% | 95% | **+27%** |\n| Call Graph准确性 | 60% | 94% | **+57%** |\n| 无效扫描过滤率 | 20% | 80% | **+300%** |\n| RAG检索相关性 | 65% | 92% | **+42%** |\n| 漏洞检测准确率 | 72% | 91% | **+26%** |\n| 分析成本(Token) | 100% | 40% | **-60%** |\n\n## 🔄 v2.0迁移指南\n\n### 兼容性说明\n- ✅ **完全向后兼容**:现有配置和数据无需修改\n- ✅ **平滑升级**:支持增量迁移,零停机部署\n- ✅ **智能识别**:自动识别项目类型,应用最优分析策略\n\n### 推荐配置优化\n```yaml\n# v2.0推荐配置\ntree_sitter:\n enabled: true\n languages: [\"solidity\", \"rust\", \"cpp\", \"move\"]\n \nplanning:\n complexity_threshold: \"medium\"\n cost_optimization: true\n parallel_workers: 4\n\nrag:\n query_dimensions: [\"function\", \"call_relation\", \"code_block\", \"architecture\"]\n context_accumulation: true\n \nvalidation:\n max_iterations: 10\n language_mode: \"auto\" # auto/zh/en\n```\n\n---\n\n**🎉 Finite Monkey Engine v2.0 - 让代码安全分析更智能、更专业、更高效!**"}, "01f9b5584d3e10aa28505a2d3cd15ef1d93ac8dc": {"t": 1785765880.9317245, "n": 7794, "h": "dab7921a715786d5", "c": "# Finite Monkey Engine v2.0\n\n**基于AI的智能代码安全分析平台**\n\n## 🚀 v2.0 版本升级亮点\n\n**Finite Monkey Engine v2.0** 带来了重大架构升级和功能增强:\n\n### 🔥 核心升级\n- **🎯 精准语言支持**:使用tree-sitter整个函数解析和上下文系统,专注4种核心语言(Solidity/Rust/C++/Move),提供最优分析体验\n- **🧠 RAG架构优化**:全新LanceDB合并式2表架构,查询效率提升300%\n- **📊 智能上下文理解**:多维度embedding技术,代码理解能力显著增强\n- **⚡ 性能优化**:统一存储策略,减少50%内存占用,提升并发处理能力\n- **🔍 深度业务分析**:增强的业务流可视化和跨合约依赖分析\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**专注于区块链和系统级代码安全审计**。通过集成多种AI模型和先进的静态分析技术,为核心编程语言项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n\n平台基于Tree-sitter解析引擎和函数级分析架构,**v2.0版本专注于4种核心语言**,提供最优的分析体验:\n\n**✅ 当前全面支持的语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整Tree-sitter支持\n- **Rust** (.rs) - Solana生态,Substrate,系统级编程\n- **C/C++** (.c/.cpp/.cxx/.cc/.C/.h/.hpp/.hxx) - 区块链底层、节点客户端\n- **Move** (.move) - Aptos, Sui区块链语言\n\n**🔄 计划支持的语言(后续版本):**\n- ~~**Cairo** (.cairo) - StarkNet智能合约语言~~\n- ~~**Tact** (.tact) - TON区块链智能合约~~\n- ~~**FunC** (.fc/.func) - TON区块链原生语言~~\n- ~~**FA** (.fr) - 函数式智能合约语言~~\n- ~~**Python** (.py) - Web3、DeFi后端项目~~\n- ~~**JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目~~\n- ~~**Go** (.go) - 区块链基础设施、TEE项目~~\n- ~~**Java** (.java) - 企业级区块链应用~~\n\n> 💡 **v2.0设计理念**: 专注核心语言,提供深度优化的分析能力。基于函数粒度的代码分析架构,理论上可扩展到任何编程语言,后续版本将逐步支持更多语言。\n\n### 💎 v2.0核心优势\n- 🧠 **多AI模型支持**: 集成Claude-4 Sonnet、GPT-4、DeepSeek等主流AI模型\n- 🚀 **RAG架构升级**: 全新LanceDB合并式2表架构,查询效率提升300%\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图,支持跨合约依赖分析\n- 🔍 **深度安全分析**: 专注4种核心语言,提供最优分析精度\n- ⚡ **高效并发处理**: 优化内存管理,支持大规模项目并行分析\n- 🎯 **智能上下文理解**: 多维度embedding技术,代码理解能力显著增强\n- 🌐 **精简高效架构**: 专注核心语言,减少50%维护复杂度\n\n## 🚀 v2.0主要特性\n\n### 🧠 增强AI驱动分析\n- **多模型协同**: Claude-4 Sonnet、GPT-4等AI模型智能协作\n- **RAG增强理解**: 基于LanceDB的多维度上下文感知技术\n- **业务逻辑深度分析**: 深度理解DeFi协议、治理机制和代币经济学\n- **智能漏洞发现**: AI辅助的复杂漏洞模式识别\n\n### 📊 升级版业务流可视化\n- **智能图表生成**: 自动分析代码生成Mermaid业务流程图\n- **多层次分析展示**: 支持项目级、文件夹级、函数级可视化\n- **跨合约依赖跟踪**: 清晰展示复杂的合约交互关系\n- **实时交互式图表**: 动态展示代码结构和调用链\n\n### 🔍 全面安全检测体系\n- **精准漏洞检测**: 专注核心语言,提供更精准的漏洞识别\n- **跨合约深度分析**: 多合约交互分析和复杂依赖关系跟踪\n- **业务场景审查**: 针对不同DeFi场景的专业安全分析\n- **智能误报过滤**: AI辅助减少误报,提升分析准确性\n\n### ⚡ v2.0架构优化\n- **LanceDB 2表架构**: 统一存储策略,查询效率提升300%\n- **多维度Embedding**: 内容、名称、自然语言三重embedding技术\n- **内存优化管理**: 减少50%内存占用,支持更大规模项目\n- **并发处理升级**: 优化线程管理,提升分析速度\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"your_api_key_here\" # API密钥\nCLAUDE_MODEL=claude-sonnet-4-20250514 # 推荐Claude模型\nVUL_MODEL=claude-sonnet-4-20250514 # 漏洞检测模型\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式\nSWITCH_BUSINESS_CODE=False # 业务流分析\nSWITCH_FILE_CODE=True # 文件级分析\nCROSS_CONTRACT_SCAN=True # 跨合约/文件分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认线程数\nBUSINESS_FLOW_COUNT=8 # 业务流重复数\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个合约)\n```bash\nSCAN_MODE=SPECIFIC_PROJECT\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=False\nMAX_THREADS_OF_SCAN=3\n```\n\n#### 🏢 企业级配置(大项目 > 100个合约)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=True\nMAX_THREADS_OF_SCAN=8\nCROSS_CONTRACT_SCAN=True\n```\n\n#### 💰 成本优化配置\n```bash\nVUL_MODEL=gpt-4-mini\nCONFIRMATION_MODEL=gpt-4-mini\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=1\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(可选,也可使用SQLite)\n- **AI API密钥**(OpenAI、Claude或其他兼容服务)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"/path/to/your/contracts\",\n \"white_files\": [\"Contract1.sol\", \"Contract2.sol\"],\n \"white_functions\": [\"criticalFunction1\", \"criticalFunction2\"]\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 第237行设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: 分析完成后会生成 `output.xlsx` 报告\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 技术支持\n\n- **问题反馈**: [GitHub Issues](https://github.com/your-org/finite-monkey-engine/issues)\n- **功能讨论**: [GitHub Discussions](https://github.com/your-org/finite-monkey-engine/discussions)\n- **技术交流**: 加入我们的技术交流群\n\n## 🚀 v2.0版本重大架构升级\n\n**Finite Monkey Engine v2.0** 带来了全栈式架构重构,四大核心系统全面升级:\n\n### 🌳 1. Tree-sitter底层解析引擎重构\n**完全替代传统解析方案,代码分析精度提升300%**\n\n- **🔧 全新解析架构**:基于Tree-sitter的统一解析引擎\n - 支持Solidity、Rust、C++、Move四种核心语言\n - 语法树精确解析,消除传统正则表达式的不准确性\n - 函数级粒度分析,支持复杂嵌套结构\n\n- **📊 Call Tree & Call Graph革新**:\n - **准确率提升90%**:基于AST的精确函数调用关系分析\n - **深度追踪**:支持跨文件、跨合约的调用链分析 \n - **实时构建**:动态生成调用图,支持增量更新\n - **可视化增强**:自动生成Mermaid调用关系图\n\n### 📋 2. 智能Planning复杂度评估系统\n**避免无效扫描,降低分析成本60%**\n\n- **🎯 多维度复杂度评估**:\n - **代码复杂度**:基于圈复杂度、函数深度的智能评估\n - **风险优先级**:根据函数敏感性、外部调用频率排序\n - **资源消耗预估**:预测分析所需时间和AI Token消耗\n - **批次优化**:智能分组,提升并行处理效率\n\n- **💡 成本优化策略**:\n - **过滤无效任务**:自动跳过简单getter/setter函数\n - **智能采样**:对相似功能函数进行代表性分析\n - **增量分析**:仅分析变更部分,避免重复扫描\n - **优先级队列**:高风险函数优先处理\n\n---\n\n## 📊 v2.0性能提升总览\n\n| 核心指标 | v1.0 | v2.0 | 提升幅度 |\n|---------|------|------|---------|\n| 代码解析准确率 | 75% | 95% | **+27%** |\n| Call Graph准确性 | 60% | 94% | **+57%** |\n| 无效扫描过滤率 | 20% | 80% | **+300%** |\n| RAG检索相关性 | 65% | 92% | **+42%** |\n| 漏洞检测准确率 | 72% | 91% | **+26%** |\n| 分析成本(Token) | 100% | 40% | **-60%** |\n\n## 🔄 v2.0迁移指南\n\n### 兼容性说明\n- ✅ **完全向后兼容**:现有配置和数据无需修改\n- ✅ **平滑升级**:支持增量迁移,零停机部署\n- ✅ **智能识别**:自动识别项目类型,应用最优分析策略\n\n### 推荐配置优化\n```yaml\n# v2.0推荐配置\ntree_sitter:\n enabled: true\n languages: [\"solidity\", \"rust\", \"cpp\", \"move\"]\n \nplanning:\n complexity_threshold: \"medium\"\n cost_optimization: true\n parallel_workers: 4\n\nrag:\n query_dimensions: [\"function\", \"call_relation\", \"code_block\", \"architecture\"]\n context_accumulation: true\n \nvalidation:\n max_iterations: 10\n language_mode: \"auto\" # auto/zh/en\n```\n\n---\n\n**🎉 Finite Monkey Engine v2.0 - 让代码安全分析更智能、更专业、更高效!**"}, "368593db5af699de2980d927170a7c25177890d5": {"t": 1785765882.6841063, "n": 8466, "h": "cfb4ef1cae14fb62", "c": "# Finite Monkey Engine v2.0\n\n**基于AI的智能代码安全分析平台**\n\n## 🚀 v2.0 版本升级亮点\n\n**Finite Monkey Engine v2.0** 带来了重大架构升级和功能增强:\n\n### 🔥 核心升级\n- **🎯 精准语言支持**:使用tree-sitter整个函数解析和上下文系统,专注4种核心语言(Solidity/Rust/C++/Move),提供最优分析体验\n- **🧠 RAG架构优化**:全新LanceDB合并式2表架构,查询效率提升300%\n- **📊 智能上下文理解**:多维度embedding技术,代码理解能力显著增强\n- **⚡ 性能优化**:统一存储策略,减少50%内存占用,提升并发处理能力\n- **🔍 深度业务分析**:增强的业务流可视化和跨合约依赖分析\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**专注于区块链和系统级代码安全审计**。通过集成多种AI模型和先进的静态分析技术,为核心编程语言项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n\n平台基于Tree-sitter解析引擎和函数级分析架构,**v2.0版本专注于4种核心语言**,提供最优的分析体验:\n\n**✅ 当前全面支持的语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整Tree-sitter支持\n- **Rust** (.rs) - Solana生态,Substrate,系统级编程\n- **C/C++** (.c/.cpp/.cxx/.cc/.C/.h/.hpp/.hxx) - 区块链底层、节点客户端\n- **Move** (.move) - Aptos, Sui区块链语言\n\n**🔄 计划支持的语言(后续版本):**\n- ~~**Cairo** (.cairo) - StarkNet智能合约语言~~\n- ~~**Tact** (.tact) - TON区块链智能合约~~\n- ~~**FunC** (.fc/.func) - TON区块链原生语言~~\n- ~~**FA** (.fr) - 函数式智能合约语言~~\n- ~~**Python** (.py) - Web3、DeFi后端项目~~\n- ~~**JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目~~\n- ~~**Go** (.go) - 区块链基础设施、TEE项目~~\n- ~~**Java** (.java) - 企业级区块链应用~~\n\n> 💡 **v2.0设计理念**: 专注核心语言,提供深度优化的分析能力。基于函数粒度的代码分析架构,理论上可扩展到任何编程语言,后续版本将逐步支持更多语言。\n\n### 💎 v2.0核心优势\n- 🧠 **多AI模型支持**: 集成Claude-4 Sonnet、GPT-4、DeepSeek等主流AI模型\n- 🚀 **RAG架构升级**: 全新LanceDB合并式2表架构,查询效率提升300%\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图,支持跨合约依赖分析\n- 🔍 **深度安全分析**: 专注4种核心语言,提供最优分析精度\n- ⚡ **高效并发处理**: 优化内存管理,支持大规模项目并行分析\n- 🎯 **智能上下文理解**: 多维度embedding技术,代码理解能力显著增强\n- 🌐 **精简高效架构**: 专注核心语言,减少50%维护复杂度\n\n## 🚀 v2.0主要特性\n\n### 🧠 增强AI驱动分析\n- **多模型协同**: Claude-4 Sonnet、GPT-4等AI模型智能协作\n- **RAG增强理解**: 基于LanceDB的多维度上下文感知技术\n- **业务逻辑深度分析**: 深度理解DeFi协议、治理机制和代币经济学\n- **智能漏洞发现**: AI辅助的复杂漏洞模式识别\n\n### 📊 升级版业务流可视化\n- **智能图表生成**: 自动分析代码生成Mermaid业务流程图\n- **多层次分析展示**: 支持项目级、文件夹级、函数级可视化\n- **跨合约依赖跟踪**: 清晰展示复杂的合约交互关系\n- **实时交互式图表**: 动态展示代码结构和调用链\n\n### 🔍 全面安全检测体系\n- **精准漏洞检测**: 专注核心语言,提供更精准的漏洞识别\n- **跨合约深度分析**: 多合约交互分析和复杂依赖关系跟踪\n- **业务场景审查**: 针对不同DeFi场景的专业安全分析\n- **智能误报过滤**: AI辅助减少误报,提升分析准确性\n\n### ⚡ v2.0架构优化\n- **LanceDB 2表架构**: 统一存储策略,查询效率提升300%\n- **多维度Embedding**: 内容、名称、自然语言三重embedding技术\n- **内存优化管理**: 减少50%内存占用,支持更大规模项目\n- **并发处理升级**: 优化线程管理,提升分析速度\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"your_api_key_here\" # API密钥\nCLAUDE_MODEL=claude-sonnet-4-20250514 # 推荐Claude模型\nVUL_MODEL=claude-sonnet-4-20250514 # 漏洞检测模型\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式\nSWITCH_BUSINESS_CODE=False # 业务流分析\nSWITCH_FILE_CODE=True # 文件级分析\nCROSS_CONTRACT_SCAN=True # 跨合约/文件分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认线程数\nBUSINESS_FLOW_COUNT=8 # 业务流重复数\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个合约)\n```bash\nSCAN_MODE=SPECIFIC_PROJECT\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=False\nMAX_THREADS_OF_SCAN=3\n```\n\n#### 🏢 企业级配置(大项目 > 100个合约)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=True\nMAX_THREADS_OF_SCAN=8\nCROSS_CONTRACT_SCAN=True\n```\n\n#### 💰 成本优化配置\n```bash\nVUL_MODEL=gpt-4-mini\nCONFIRMATION_MODEL=gpt-4-mini\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=1\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(可选,也可使用SQLite)\n- **AI API密钥**(OpenAI、Claude或其他兼容服务)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"/path/to/your/contracts\",\n \"white_files\": [\"Contract1.sol\", \"Contract2.sol\"],\n \"white_functions\": [\"criticalFunction1\", \"criticalFunction2\"]\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 第237行设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: 分析完成后会生成 `output.xlsx` 报告\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 技术支持\n\n- **问题反馈**: [GitHub Issues](https://github.com/your-org/finite-monkey-engine/issues)\n- **功能讨论**: [GitHub Discussions](https://github.com/your-org/finite-monkey-engine/discussions)\n- **技术交流**: 加入我们的技术交流群\n\n## 🚀 v2.0版本重大架构升级\n\n**Finite Monkey Engine v2.0** 带来了全栈式架构重构,四大核心系统全面升级:\n\n### 🌳 1. Tree-sitter底层解析引擎重构\n**完全替代传统解析方案,代码分析精度提升300%**\n\n- **🔧 全新解析架构**:基于Tree-sitter的统一解析引擎\n - 支持Solidity、Rust、C++、Move四种核心语言\n - 语法树精确解析,消除传统正则表达式的不准确性\n - 函数级粒度分析,支持复杂嵌套结构\n\n- **📊 Call Tree & Call Graph革新**:\n - **准确率提升90%**:基于AST的精确函数调用关系分析\n - **深度追踪**:支持跨文件、跨合约的调用链分析 \n - **实时构建**:动态生成调用图,支持增量更新\n - **可视化增强**:自动生成Mermaid调用关系图\n\n### 📋 2. 智能Planning复杂度评估系统\n**避免无效扫描,降低分析成本60%**\n\n- **🎯 多维度复杂度评估**:\n - **代码复杂度**:基于圈复杂度、函数深度的智能评估\n - **风险优先级**:根据函数敏感性、外部调用频率排序\n - **资源消耗预估**:预测分析所需时间和AI Token消耗\n - **批次优化**:智能分组,提升并行处理效率\n\n- **💡 成本优化策略**:\n - **过滤无效任务**:自动跳过简单getter/setter函数\n - **智能采样**:对相似功能函数进行代表性分析\n - **增量分析**:仅分析变更部分,避免重复扫描\n - **优先级队列**:高风险函数优先处理\n\n### 🔍 3. 四维RAG查询策略架构\n**检索精度提升400%,上下文理解更全面**\n\n- **📚 多维度信息检索**:\n - **🎯 函数维度**:基于函数签名、功能语义的精确检索\n - **🔗 调用关系维度**:上游调用者、下游被调用函数的关联分析\n - **📄 代码块维度**:语义相关代码片段的上下文检索\n - **🏗️ 架构维度**:跨合约、跨模块的架构级依赖分析\n\n- **🧠 智能查询优化**:\n - **语义理解增强**:多向量embedding,提升检索相关性\n - **上下文累积**:跨轮次信息聚合,避免重复查询\n - **动态权重调整**:根据分析阶段调整不同维度权重\n - **增量信息融合**:新信息与历史上下文的智能融合\n\n### 🛡️ 4. 漏洞验证引擎全面重构\n**检测准确率提升80%,支持中英文双语分析**\n\n- **🎯 智能分析流程**:\n - **谨慎性原则**:优先选择`need_more_info`,避免误判\n - **多轮迭代验证**:最多10轮深度分析,直到明确结论\n - **上下文累积**:历史分析信息智能传承\n - **实时反馈机制**:透明化分析过程,支持调试追踪\n\n- **🌐 多语言Prompt体系**:\n - **中文分析场景**:针对中文开发团队优化的分析逻辑\n - **英文分析场景**:符合国际标准的漏洞描述和分类\n - **智能语言切换**:根据项目特征自动选择最优语言模式\n - **双语对照验证**:关键漏洞的双语交叉验证机制\n\n---\n\n## 📊 v2.0性能提升总览\n\n| 核心指标 | v1.0 | v2.0 | 提升幅度 |\n|---------|------|------|---------|\n| 代码解析准确率 | 75% | 95% | **+27%** |\n| Call Graph准确性 | 60% | 94% | **+57%** |\n| 无效扫描过滤率 | 20% | 80% | **+300%** |\n| RAG检索相关性 | 65% | 92% | **+42%** |\n| 漏洞检测准确率 | 72% | 91% | **+26%** |\n| 分析成本(Token) | 100% | 40% | **-60%** |\n\n## 🔄 v2.0迁移指南\n\n### 兼容性说明\n- ✅ **完全向后兼容**:现有配置和数据无需修改\n- ✅ **平滑升级**:支持增量迁移,零停机部署\n- ✅ **智能识别**:自动识别项目类型,应用最优分析策略\n\n### 推荐配置优化\n```yaml\n# v2.0推荐配置\ntree_sitter:\n enabled: true\n languages: [\"solidity\", \"rust\", \"cpp\", \"move\"]\n \nplanning:\n complexity_threshold: \"medium\"\n cost_optimization: true\n parallel_workers: 4\n\nrag:\n query_dimensions: [\"function\", \"call_relation\", \"code_block\", \"architecture\"]\n context_accumulation: true\n \nvalidation:\n max_iterations: 10\n language_mode: \"auto\" # auto/zh/en\n```\n\n---\n\n**🎉 Finite Monkey Engine v2.0 - 让代码安全分析更智能、更专业、更高效!**"}, "23626029f8285793b261d16e133c03454cf055c8": {"t": 1785765884.1557233, "n": 6501, "h": "7c7a6d5707c5ca93", "c": "# Finite Monkey Engine v2.0\n\n**基于AI的智能代码安全分析平台**\n\n## 🚀 v2.0 版本升级亮点\n\n**Finite Monkey Engine v2.0** 带来了重大架构升级和功能增强:\n\n### 🔥 核心升级\n- **🎯 精准语言支持**:使用tree-sitter整个函数解析和上下文系统,专注4种核心语言(Solidity/Rust/C++/Move),提供最优分析体验\n- **🧠 RAG架构优化**:全新LanceDB合并式2表架构,查询效率提升300%\n- **📊 智能上下文理解**:多维度embedding技术,代码理解能力显著增强\n- **⚡ 性能优化**:统一存储策略,减少50%内存占用,提升并发处理能力\n- **🔍 深度业务分析**:增强的业务流可视化和跨合约依赖分析\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**专注于区块链和系统级代码安全审计**。通过集成多种AI模型和先进的静态分析技术,为核心编程语言项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n\n平台基于Tree-sitter解析引擎和函数级分析架构,**v2.0版本专注于4种核心语言**,提供最优的分析体验:\n\n**✅ 当前全面支持的语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整Tree-sitter支持\n- **Rust** (.rs) - Solana生态,Substrate,系统级编程\n- **C/C++** (.c/.cpp/.cxx/.cc/.C/.h/.hpp/.hxx) - 区块链底层、节点客户端\n- **Move** (.move) - Aptos, Sui区块链语言\n\n**🔄 计划支持的语言(后续版本):**\n- ~~**Cairo** (.cairo) - StarkNet智能合约语言~~\n- ~~**Tact** (.tact) - TON区块链智能合约~~\n- ~~**FunC** (.fc/.func) - TON区块链原生语言~~\n- ~~**FA** (.fr) - 函数式智能合约语言~~\n- ~~**Python** (.py) - Web3、DeFi后端项目~~\n- ~~**JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目~~\n- ~~**Go** (.go) - 区块链基础设施、TEE项目~~\n- ~~**Java** (.java) - 企业级区块链应用~~\n\n> 💡 **v2.0设计理念**: 专注核心语言,提供深度优化的分析能力。基于函数粒度的代码分析架构,理论上可扩展到任何编程语言,后续版本将逐步支持更多语言。\n\n### 💎 v2.0核心优势\n- 🧠 **多AI模型支持**: 集成Claude-4 Sonnet、GPT-4、DeepSeek等主流AI模型\n- 🚀 **RAG架构升级**: 全新LanceDB合并式2表架构,查询效率提升300%\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图,支持跨合约依赖分析\n- 🔍 **深度安全分析**: 专注4种核心语言,提供最优分析精度\n- ⚡ **高效并发处理**: 优化内存管理,支持大规模项目并行分析\n- 🎯 **智能上下文理解**: 多维度embedding技术,代码理解能力显著增强\n- 🌐 **精简高效架构**: 专注核心语言,减少50%维护复杂度\n\n## 🚀 v2.0主要特性\n\n### 🧠 增强AI驱动分析\n- **多模型协同**: Claude-4 Sonnet、GPT-4等AI模型智能协作\n- **RAG增强理解**: 基于LanceDB的多维度上下文感知技术\n- **业务逻辑深度分析**: 深度理解DeFi协议、治理机制和代币经济学\n- **智能漏洞发现**: AI辅助的复杂漏洞模式识别\n\n### 📊 升级版业务流可视化\n- **智能图表生成**: 自动分析代码生成Mermaid业务流程图\n- **多层次分析展示**: 支持项目级、文件夹级、函数级可视化\n- **跨合约依赖跟踪**: 清晰展示复杂的合约交互关系\n- **实时交互式图表**: 动态展示代码结构和调用链\n\n### 🔍 全面安全检测体系\n- **精准漏洞检测**: 专注核心语言,提供更精准的漏洞识别\n- **跨合约深度分析**: 多合约交互分析和复杂依赖关系跟踪\n- **业务场景审查**: 针对不同DeFi场景的专业安全分析\n- **智能误报过滤**: AI辅助减少误报,提升分析准确性\n\n### ⚡ v2.0架构优化\n- **LanceDB 2表架构**: 统一存储策略,查询效率提升300%\n- **多维度Embedding**: 内容、名称、自然语言三重embedding技术\n- **内存优化管理**: 减少50%内存占用,支持更大规模项目\n- **并发处理升级**: 优化线程管理,提升分析速度\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"your_api_key_here\" # API密钥\nCLAUDE_MODEL=claude-sonnet-4-20250514 # 推荐Claude模型\nVUL_MODEL=claude-sonnet-4-20250514 # 漏洞检测模型\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式\nSWITCH_BUSINESS_CODE=False # 业务流分析\nSWITCH_FILE_CODE=True # 文件级分析\nCROSS_CONTRACT_SCAN=True # 跨合约/文件分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认线程数\nBUSINESS_FLOW_COUNT=8 # 业务流重复数\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个合约)\n```bash\nSCAN_MODE=SPECIFIC_PROJECT\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=False\nMAX_THREADS_OF_SCAN=3\n```\n\n#### 🏢 企业级配置(大项目 > 100个合约)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=True\nMAX_THREADS_OF_SCAN=8\nCROSS_CONTRACT_SCAN=True\n```\n\n#### 💰 成本优化配置\n```bash\nVUL_MODEL=gpt-4-mini\nCONFIRMATION_MODEL=gpt-4-mini\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=1\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(可选,也可使用SQLite)\n- **AI API密钥**(OpenAI、Claude或其他兼容服务)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"/path/to/your/contracts\",\n \"white_files\": [\"Contract1.sol\", \"Contract2.sol\"],\n \"white_functions\": [\"criticalFunction1\", \"criticalFunction2\"]\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 第237行设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: 分析完成后会生成 `output.xlsx` 报告\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 技术支持\n\n- **问题反馈**: [GitHub Issues](https://github.com/your-org/finite-monkey-engine/issues)\n- **功能讨论**: [GitHub Discussions](https://github.com/your-org/finite-monkey-engine/discussions)\n- **技术交流**: 加入我们的技术交流群\n\n## 🆕 v2.0版本说明\n\n### 重大升级\n- **核心语言专精**: 专注Solidity/Rust/C++/Move四种核心语言,提供最优分析体验\n- **RAG架构革新**: LanceDB合并式2表架构,性能提升300%\n- **智能embedding**: 多维度代码理解,分析精度显著提升\n- **架构优化**: 内存占用减少50%,支持更大规模项目\n\n### 迁移指南\n- v2.0完全向后兼容,无需修改现有配置\n- 不支持的语言文件会自动跳过,不影响系统运行\n- 建议更新配置文件以获得最佳性能体验\n\n---\n\n**🎉 Finite Monkey Engine v2.0 - 让代码安全分析更智能、更专业、更高效!**"}, "09c3a5163f90441c05603e94063f5fd5f9a381c8": {"t": 1785765886.1803424, "n": 5365, "h": "33337b11547f7856", "c": "# Finite Monkey Engine\n\n**基于AI的智能代码安全分析平台**\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**不仅支持智能合约,更可扩展到任何编程语言项目**。通过集成多种AI模型和先进的静态分析技术,为各类代码项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n平台基于ANTLR4解析引擎和函数级分析架构,目前已支持:\n\n**区块链语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整ANTLR支持\n- **Rust** (.rs) - Solana生态,Substrate等\n- **Move** (.move) - Aptos, Sui区块链语言\n- **Cairo** (.cairo) - StarkNet智能合约语言\n- **Tact** (.tact) - TON区块链智能合约\n- **FunC** (.fc/.func) - TON区块链原生语言\n- **FA** (.fr) - 函数式智能合约语言\n\n**传统编程语言:**\n- **Python** (.py) - 支持Web3、DeFi后端项目\n- **JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目 \n- **Go** (.go) - 区块链基础设施、TEE项目\n- **Java** (.java) - 企业级区块链应用\n- **C/C++** (.c/.cpp/.cxx/.cc/.C) - 区块链底层、节点客户端\n\n> 💡 **设计理念**: 基于函数粒度的代码分析,理论上可扩展到任何编程语言\n\n### 核心优势\n- 🧠 **多AI模型支持**: 集成Claude、GPT-4、DeepSeek等主流AI模型\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图\n- 🔍 **深度安全分析**: 覆盖智能合约、Web3、传统软件项目\n- ⚡ **高效并发处理**: 支持多线程并发分析\n- 🎯 **智能上下文理解**: RAG技术增强的代码理解能力\n- 🌐 **语言无关架构**: 通用的函数级分析框架\n\n## 🚀 主要特性\n\n### AI驱动的智能分析\n- **多模型支持**: Claude-4 Sonnet、GPT-4等主流AI模型\n- **上下文感知**: 基于RAG技术的智能代码理解\n- **业务逻辑分析**: 深度理解DeFi协议、治理机制和代币经济学\n\n### 可视化业务流程图\n- **自动生成**: 智能分析代码生成Mermaid图表\n- **多层次展示**: 支持项目级、文件夹级、函数级分析\n- **交互式图表**: 清晰展示合约交互和依赖关系\n\n### 全面安全检测\n- **漏洞检测**: 覆盖常见和复杂的智能合约漏洞\n- **跨合约分析**: 多合约交互分析和依赖关系跟踪\n- **业务逻辑审查**: 针对性的业务场景安全分析\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"your_api_key_here\" # API密钥\nCLAUDE_MODEL=claude-sonnet-4-20250514 # 推荐Claude模型\nVUL_MODEL=claude-sonnet-4-20250514 # 漏洞检测模型\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式\nSWITCH_BUSINESS_CODE=False # 业务流分析\nSWITCH_FILE_CODE=True # 文件级分析\nCROSS_CONTRACT_SCAN=True # 跨合约/文件分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认线程数\nBUSINESS_FLOW_COUNT=8 # 业务流重复数\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个合约)\n```bash\nSCAN_MODE=SPECIFIC_PROJECT\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=False\nMAX_THREADS_OF_SCAN=3\n```\n\n#### 🏢 企业级配置(大项目 > 100个合约)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=True\nMAX_THREADS_OF_SCAN=8\nCROSS_CONTRACT_SCAN=True\n```\n\n#### 💰 成本优化配置\n```bash\nVUL_MODEL=gpt-4-mini\nCONFIRMATION_MODEL=gpt-4-mini\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=1\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(可选,也可使用SQLite)\n- **AI API密钥**(OpenAI、Claude或其他兼容服务)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"/path/to/your/contracts\",\n \"white_files\": [\"Contract1.sol\", \"Contract2.sol\"],\n \"white_functions\": [\"criticalFunction1\", \"criticalFunction2\"]\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 第237行设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: 分析完成后会生成 `output.xlsx` 报告\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 技术支持\n\n- **问题反馈**: [GitHub Issues](https://github.com/your-org/finite-monkey-engine/issues)\n- **功能讨论**: [GitHub Discussions](https://github.com/your-org/finite-monkey-engine/discussions)\n- **技术交流**: 加入我们的技术交流群\n\n---\n\n**🎉 让智能合约安全分析变得更智能、更高效!**"}, "c792173d7330c6a60ee13d869ed080775887ba12": {"t": 1785765887.8095026, "n": 5408, "h": "ae1a88ca90af2389", "c": "# Finite Monkey Engine\n\n**基于AI的智能代码安全分析平台**\n\n## 🎯 项目简介\n\nFinite Monkey Engine 是一个先进的AI驱动代码安全分析平台,**不仅支持智能合约,更可扩展到任何编程语言项目**。通过集成多种AI模型和先进的静态分析技术,为各类代码项目提供全面、智能的安全审计解决方案。\n\n### 🌍 多语言支持\n平台基于ANTLR4解析引擎和函数级分析架构,目前已支持:\n\n**区块链语言:**\n- **Solidity** (.sol) - 以太坊智能合约,完整ANTLR支持\n- **Rust** (.rs) - Solana生态,Substrate等\n- **Move** (.move) - Aptos, Sui区块链语言\n- **Cairo** (.cairo) - StarkNet智能合约语言\n- **Tact** (.tact) - TON区块链智能合约\n- **FunC** (.fc/.func) - TON区块链原生语言\n- **FA** (.fr) - 函数式智能合约语言\n\n**传统编程语言:**\n- **Python** (.py) - 支持Web3、DeFi后端项目\n- **JavaScript/TypeScript** (.js/.ts) - Web3前端、Node.js项目 \n- **Go** (.go) - 区块链基础设施、TEE项目\n- **Java** (.java) - 企业级区块链应用\n- **C/C++** (.c/.cpp/.cxx/.cc/.C) - 区块链底层、节点客户端\n\n> 💡 **设计理念**: 基于函数粒度的代码分析,理论上可扩展到任何编程语言\n\n### 核心优势\n- 🧠 **多AI模型支持**: 集成Claude、GPT-4、DeepSeek等主流AI模型\n- 📊 **业务流可视化**: 自动生成Mermaid业务流程图\n- 🔍 **深度安全分析**: 覆盖智能合约、Web3、传统软件项目\n- ⚡ **高效并发处理**: 支持多线程并发分析\n- 🎯 **智能上下文理解**: RAG技术增强的代码理解能力\n- 🌐 **语言无关架构**: 通用的函数级分析框架\n\n## 🚀 主要特性\n\n### AI驱动的智能分析\n- **多模型支持**: Claude-4 Sonnet、GPT-4等主流AI模型\n- **上下文感知**: 基于RAG技术的智能代码理解\n- **业务逻辑分析**: 深度理解DeFi协议、治理机制和代币经济学\n\n### 可视化业务流程图\n- **自动生成**: 智能分析代码生成Mermaid图表\n- **多层次展示**: 支持项目级、文件夹级、函数级分析\n- **交互式图表**: 清晰展示合约交互和依赖关系\n\n### 全面安全检测\n- **漏洞检测**: 覆盖常见和复杂的智能合约漏洞\n- **跨合约分析**: 多合约交互分析和依赖关系跟踪\n- **业务逻辑审查**: 针对性的业务场景安全分析\n\n## 📁 项目架构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── main.py # 主入口文件\n│ ├── planning/ # 智能任务规划模块\n│ ├── validating/ # 漏洞检测验证模块\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── code_summarizer/ # 智能代码分析模块\n│ ├── reasoning/ # 推理分析模块\n│ ├── dao/ # 数据访问层\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程管理\n├── knowledges/ # 领域知识库\n├── docker-compose.yml # Docker部署配置\n└── requirements.txt # 依赖包列表\n```\n\n## ⚙️ 环境配置\n\n### 快速配置\n\n1. **复制环境变量模板**:\n ```bash\n cp env.example .env\n ```\n\n2. **编辑 `.env` 文件**,配置你的API密钥和首选项\n\n### 核心环境变量\n\n```bash\n# 数据库配置(必需)\nDATABASE_URL=postgresql://postgres:1234@127.0.0.1:5432/postgres\n\n# AI模型配置(必需)\nOPENAI_API_BASE=\"api.openai-proxy.org\" # LLM代理平台\nOPENAI_API_KEY=\"your_api_key_here\" # API密钥\nCLAUDE_MODEL=claude-sonnet-4-20250514 # 推荐Claude模型\nVUL_MODEL=claude-sonnet-4-20250514 # 漏洞检测模型\n\n# 扫描模式配置\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED # 推荐模式\nSWITCH_BUSINESS_CODE=False # 业务流分析\nSWITCH_FILE_CODE=True # 文件级分析\nCROSS_CONTRACT_SCAN=True # 跨合约/文件分析\n\n# 性能调优\nMAX_THREADS_OF_SCAN=10 # 扫描线程数\nMAX_THREADS_OF_CONFIRMATION=50 # 确认线程数\nBUSINESS_FLOW_COUNT=8 # 业务流重复数\n```\n\n> 📝 **完整配置**: 查看 `env.example` 文件了解所有可配置选项和详细说明\n\n### 推荐配置方案\n\n#### 🚀 快速开始配置(小项目 < 50个合约)\n```bash\nSCAN_MODE=SPECIFIC_PROJECT\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=False\nMAX_THREADS_OF_SCAN=3\n```\n\n#### 🏢 企业级配置(大项目 > 100个合约)\n```bash\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nHUGE_PROJECT=True\nMAX_THREADS_OF_SCAN=8\nCROSS_CONTRACT_SCAN=True\n```\n\n#### 💰 成本优化配置\n```bash\nVUL_MODEL=gpt-4-mini\nCONFIRMATION_MODEL=gpt-4-mini\nMAX_THREADS_OF_SCAN=3\nBUSINESS_FLOW_COUNT=1\n```\n\n## 🚀 快速开始\n\n### 环境要求\n- **Python 3.10+**\n- **PostgreSQL 13+**(可选,也可使用SQLite)\n- **AI API密钥**(OpenAI、Claude或其他兼容服务)\n\n### 安装步骤\n\n```bash\n# 1. 克隆项目\ngit clone https://github.com/your-org/finite-monkey-engine.git\ncd finite-monkey-engine\n\n# 2. 安装Python依赖\npip install -r requirements.txt\n\n# 3. 配置环境变量\ncp env.example .env\n# 编辑 .env 文件,填入你的API密钥和数据库配置\n\n# 4. 运行分析\npython src/main.py\n```\n\n## 📊 使用指南\n\n### 项目配置\n\n在 `src/dataset/agent-v1-c4/datasets.json` 中配置你的项目:\n\n```json\n{\n \"your_project_id\": {\n \"path\": \"/path/to/your/contracts\",\n \"white_files\": [\"Contract1.sol\", \"Contract2.sol\"],\n \"white_functions\": [\"criticalFunction1\", \"criticalFunction2\"]\n }\n}\n```\n\n### 运行分析\n\n1. **修改项目ID**: 在 `src/main.py` 第237行设置你的项目ID\n```python\nproject_id = 'your_project_id'\n```\n\n2. **执行分析**:\n```bash\npython src/main.py\n```\n\n3. **查看结果**: 分析完成后会生成 `output.xlsx` 报告\n\n### 输出文件说明\n\n- **Excel报告**: 详细的漏洞发现和分析结果\n- **Mermaid图表**: `src/codebaseQA/mermaid_output/` 目录下的业务流程图\n- **数据库记录**: 完整的分析过程和结果存储\n\n## 🎯 最佳实践建议\n\n### 性能优化\n1. **大项目处理**: 设置 `HUGE_PROJECT=True` 和适当的线程数\n2. **API成本控制**: 使用 `gpt-4-mini` 进行初步分析\n3. **内存管理**: 大项目建议设置 `SWITCH_FILE_CODE=False`\n\n### 准确性提升\n1. **业务流分析**: 保持 `SWITCH_BUSINESS_CODE=True` 获得更好的上下文理解\n2. **多轮确认**: 设置适当的 `MAX_CONFIRMATION_ROUNDS`\n3. **专业模型**: 重要项目使用 Claude-4 Sonnet 或 GPT-4\n\n### 安全建议\n1. **API密钥安全**: 使用环境变量,不要硬编码\n2. **网络访问**: 生产环境建议关闭 `ENABLE_INTERNET_SEARCH`\n3. **数据备份**: 定期备份分析数据库\n\n## 🔧 故障排除\n\n### 常见问题\n\n**Q: API调用失败**\n```bash\n# 检查API密钥和网络连接\nexport OPENAI_API_KEY=your_key\ncurl -H \"Authorization: Bearer $OPENAI_API_KEY\" https://api.openai.com/v1/models\n```\n\n**Q: 内存不足**\n```bash\n# 调整配置减少内存使用\nHUGE_PROJECT=True\nSWITCH_FILE_CODE=False\nMAX_THREADS_OF_SCAN=3\n```\n\n**Q: 分析速度慢**\n```bash\n# 增加并发线程(注意API限制)\nMAX_THREADS_OF_SCAN=8\nMAX_THREADS_OF_CONFIRMATION=5\n```\n\n## 🤝 贡献指南\n\n1. Fork 项目\n2. 创建功能分支 (`git checkout -b feature/新功能`)\n3. 提交更改 (`git commit -m '添加新功能'`)\n4. 推送到分支 (`git push origin feature/新功能`)\n5. 创建 Pull Request\n\n## 📄 许可证\n\nApache License 2.0 - 查看 [LICENSE](LICENSE) 文件了解详情\n\n## 📞 技术支持\n\n- **问题反馈**: [GitHub Issues](https://github.com/your-org/finite-monkey-engine/issues)\n- **功能讨论**: [GitHub Discussions](https://github.com/your-org/finite-monkey-engine/discussions)\n- **技术交流**: 加入我们的技术交流群\n\n---\n\n**🎉 让智能合约安全分析变得更智能、更高效!**"}, "83bf408a0e35c68a1994904f8f03c2d3b985261b": {"t": 1785765889.2214508, "n": 3320, "h": "569e2c5e69d91130", "c": "# Finite Monkey Engine\n\n**基于AI的智能合约安全分析平台**\n\n## 🎯 概述\n\nFinite Monkey Engine是一个先进的智能合约安全分析平台,利用AI和前沿分析技术为区块链项目提供全面的漏洞检测和业务流分析。\n\n## 🚀 核心功能\n\n### 🧠 AI驱动分析\n- **Claude-4 Sonnet集成**:利用先进的语言模型进行智能代码理解\n- **多模态分析**:结合静态分析和AI驱动的语义理解\n- **上下文感知检测**:具备业务逻辑理解的智能漏洞检测\n\n### 📊 业务流可视化\n- **Mermaid图表自动生成**:自动生成业务流程图\n- **交互式分析**:合约交互和依赖关系的可视化表示\n- **多层次粒度**:项目级、文件夹级和函数级分析\n\n### 🔍 高级安全功能\n- **全面漏洞检测**:检测常见和复杂的智能合约漏洞\n- **业务逻辑分析**:理解DeFi协议、治理机制和代币经济学\n- **跨合约分析**:多合约交互分析和依赖关系跟踪\n\n### 🛠 模块化架构\n- **规划模块**:智能任务规划和业务流提取\n- **验证模块**:全面的漏洞检查和验证\n- **上下文模块**:具备RAG和调用树分析的高级上下文管理\n- **代码总结器**:具备强化学习能力的智能代码分析\n\n## 📁 项目结构\n\n```\nfinite-monkey-engine/\n├── src/\n│ ├── planning/ # 任务规划和业务流分析\n│ ├── validating/ # 漏洞检测和验证\n│ ├── context/ # 上下文管理和RAG处理\n│ ├── code_summarizer/ # AI驱动的代码分析和总结\n│ ├── reasoning/ # 分析推理和对话管理\n│ ├── dao/ # 数据访问对象和实体管理\n│ ├── library/ # 解析库和工具\n│ ├── openai_api/ # AI API集成\n│ └── prompt_factory/ # 提示工程和管理\n├── knowledges/ # 领域知识库\n├── scripts/ # 实用脚本\n└── docs/ # 文档\n```\n\n## 🚀 快速开始\n\n### 前置要求\n\n- Python 3.9+\n- Node.js 16+ (用于某些分析功能)\n- OpenAI API密钥或兼容的AI服务\n\n### 安装\n\n1. **克隆代码库**\n ```bash\n git clone https://github.com/your-org/finite-monkey-engine.git\n cd finite-monkey-engine\n ```\n\n2. **安装依赖**\n ```bash\n pip install -r requirements.txt\n ```\n\n3. **配置环境**\n ```bash\n cp .env.example .env\n # 编辑.env文件,配置您的API密钥和设置\n ```\n\n4. **运行分析**\n ```bash\n python src/main.py\n ```\n\n## 🔧 配置\n\n### 分析模式\n\n平台支持多种分析模式:\n\n- **业务流模式** (`SWITCH_BUSINESS_CODE=True`):专注于业务逻辑分析\n- **文件级模式** (`SWITCH_FILE_CODE=True`):全面的逐文件分析\n- **细粒度模式** (`SCAN_MODE=COMMON_PROJECT_FINE_GRAINED`):详细的漏洞扫描\n\n### 环境变量\n\n```bash\n# 分析配置\nSWITCH_BUSINESS_CODE=True\nSWITCH_FILE_CODE=False\nSCAN_MODE=COMMON_PROJECT_FINE_GRAINED\n\n# AI配置\nOPENAI_API_KEY=your_api_key_here\nOPENAI_BASE_URL=https://api.openai.com/v1\n\n# 输出配置\nOUTPUT_DIR=./output\nMERMAID_OUTPUT_DIR=src/codebaseQA/mermaid_output\n```\n\n## 🎯 使用场景\n\n### DeFi协议分析\n- **流动性池安全**:AMM和借贷协议分析\n- **治理机制审查**:DAO治理和投票系统分析\n- **代币经济学验证**:代币经济学和分配机制审查\n\n### NFT项目安全\n- **铸造逻辑分析**:NFT铸造机制和访问控制审查\n- **市场集成**:二级市场集成安全分析\n- **版税机制审查**:创作者版税和费用分配分析\n\n### 跨链协议分析\n- **桥接安全评估**:跨链桥接机制分析\n- **多链部署**:不同链上的一致性安全\n- **互操作性审查**:协议交互和依赖关系分析\n\n## 📊 分析报告\n\n平台生成全面的分析报告,包括:\n\n- **安全漏洞报告**:详细的漏洞发现和严重性评级\n- **业务流图表**:合约交互的可视化表示\n- **Gas优化建议**:性能改进建议\n- **最佳实践合规性**:安全标准和指南的遵循情况\n\n## 🧪 测试\n\n运行测试套件:\n\n```bash\n# 单元测试\npython -m pytest tests/\n\n# 集成测试\npython -m pytest tests/integration/\n\n# 覆盖率报告\npython -m pytest --cov=src tests/\n```\n\n## 🤝 贡献\n\n我们欢迎贡献!请查看我们的[贡献指南](CONTRIBUTING.md)了解详情。\n\n1. Fork代码库\n2. 创建功能分支 (`git checkout -b feature/amazing-feature`)\n3. 提交您的更改 (`git commit -m 'Add amazing feature'`)\n4. 推送到分支 (`git push origin feature/amazing-feature`)\n5. 开启Pull Request\n\n## 📄 许可证\n\n此项目基于Apache License 2.0许可证 - 请查看[LICENSE](LICENSE)文件了解详情。\n\n## 🙏 致谢\n\n- **ANTLR4**:提供Solidity解析能力\n- **Claude AI**:提供高级代码理解\n- **Mermaid**:提供业务流可视化\n- **OpenAI**:提供AI驱动的分析能力\n\n## 📞 支持\n\n- **文档**:[https://finite-monkey-engine.readthedocs.io](https://finite-monkey-engine.readthedocs.io)\n- **问题**:[GitHub Issues](https://github.com/your-org/finite-monkey-engine/issues)\n- **讨论**:[GitHub Discussions](https://github.com/your-org/finite-monkey-engine/discussions)\n- **邮件**:support@finite-monkey-engine.com\n\n---\n\n**🎉 Finite Monkey Engine - 让智能合约安全分析变得智能和可访问!**"}}}}