Commit Graph

138 Commits

Author SHA1 Message Date
vinland100 9ec07a6594 feat: Centralize Git tokens to system environment variables and add Gitea branch verification. 2026-01-05 17:12:47 +08:00
vinland100 75d911d5d2 docs: Update example environment variables in `env.example`. 2026-01-05 14:51:32 +08:00
vinland100 2b0c7f5c2a feat: Lock LLM and embedding configurations to system environment variables, mask API keys, and refactor frontend logout. 2026-01-05 14:45:00 +08:00
vinland100 4d3761e0e0 feat: Add Gitea username integration, refactor password hashing with direct bcrypt, and remove frontend version displays. 2026-01-05 13:47:48 +08:00
vinland100 bc1597a41d refactor: update CI prompts for enhanced instruction and clarity 2026-01-05 10:50:47 +08:00
vinland100 7a3bb08d48 feat: Introduce reusable AppLogo component and update project activity timestamp to UTC. 2026-01-05 09:50:51 +08:00
vinland100 a29f57d119 I need the actual code changes (diff) to generate an accurate commit message. 2026-01-04 17:16:44 +08:00
vinland100 783093f0fd feat: Improve CI service context retrieval by prioritizing sync diff and adjusting prompt generation for different PR actions. 2026-01-04 17:13:01 +08:00
vinland100 70bf6ccac2 refactor: refine CI prompt definitions 2026-01-04 16:49:10 +08:00
vinland100 37fafe655a feat: Improve incremental diff detection and messaging for empty diffs, and add success logging for PR reviews and chat responses. 2026-01-04 16:40:35 +08:00
vinland100 3f4bd2f6c5 feat: Improve sync diff retrieval by using local git commands and robustly handling `before_sha` validity and fallbacks. 2026-01-04 16:13:47 +08:00
vinland100 e23af55e53 feat: Improve PR sync diff calculation by fetching previous review SHA from the database and refining diff messaging. 2026-01-04 15:46:31 +08:00
vinland100 2c8c711cde docs: update CI prompt definitions. 2026-01-04 15:22:41 +08:00
vinland100 7fa9bb5c26 feat: Add referenced file footers to AI comments and correct Gitea PR 'synchronize' action to 'synchronized'. 2026-01-04 15:07:37 +08:00
vinland100 d01d3850df feat: add PR synchronization prompt and incorporate commit diffs and conversation history into PR review and chat. 2026-01-04 14:34:29 +08:00
vinland100 23ac263d76 feat: Enhance RAG embedding dimension handling, add Qwen3 support, and improve index rebuild logic 2026-01-04 11:28:58 +08:00
vinland100 6abede99f4 feat: enhance embedding dimension detection with Qwen support and expand RAG index rebuild triggers. 2025-12-31 17:14:08 +08:00
vinland100 4aea8ee7a9 feat: Enhance embedding service configuration and add CI pipeline retry logic for dimension mismatches with optional index rebuild. 2025-12-31 17:11:27 +08:00
vinland100 df8796e6e3 feat: Centralize repository synchronization and indexing into `_ensure_indexed` for PR and chat events, add empty chat query handling, and improve Gitea URL rewriting. 2025-12-31 16:57:42 +08:00
vinland100 b401a26b10 feat: Add CI/CD integration with Gitea webhooks and pull request review functionality. 2025-12-31 16:40:33 +08:00
ArcueId e06126482c perf(rag): 优化嵌入服务性能并改进批处理大小配置
- 优化本地嵌入服务(Ollama)性能,移除不必要的延迟
- 改进批处理大小配置,使用动态获取替代硬编码
- 保持云端服务的限流逻辑不变
2025-12-28 10:15:58 +08:00
lintsinghua b030381ad2 feat(ssh): 增加SSH超时配置并改进错误处理
- 在配置中添加SSH_CLONE_TIMEOUT、SSH_TEST_TIMEOUT和SSH_CONNECT_TIMEOUT
- 替换print为logging记录关键操作和错误
- 改进SSH命令构建方式防止注入
- 添加分支名验证逻辑
- 优化错误消息显示,避免暴露敏感信息
2025-12-26 20:34:47 +08:00
Image 869513e0c5 Merge branch 'v3.0.0' of github.com:lintsinghua/DeepAudit into feature/git_ssh
# Conflicts:
#	backend/app/api/v1/endpoints/agent_tasks.py
2025-12-26 09:39:25 +08:00
Image f1243245a8 feat(SSH):添加known_hosts持久化与清理功能
- 新增SSH配置目录设置,支持持久化存储known_hosts文件
- 实现known_hosts文件清理API端点,解决主机密钥变更导致的连接问题
- 优化SSH连接策略,使用StrictHostKeyChecking=accept-new自动接受新主机密钥
- 前端添加known_hosts清理按钮,提升SSH密钥管理体验
- 改进SSH测试逻辑,正确处理部署密钥的Anonymous响应
2025-12-26 09:33:55 +08:00
lintsinghua 15605fea16 refactor(agent): 移除LangGraph工作流并迁移到动态Agent树架构
重构Agent服务架构,从基于LangGraph的状态图迁移到动态Agent树结构。主要变更包括:
- 删除graph模块及相关测试
- 更新agent/__init__.py导入和文档
- 在projects端点添加对新AgentTask模型的统计支持
- 简化工作流描述为START→Orchestrator→[Recon/Analysis/Verification]→Report→END

新架构使用OrchestratorAgent作为编排层,动态调度子Agent完成任务,提高灵活性和可扩展性。
2025-12-25 17:58:14 +08:00
lintsinghua 39e2f43210 feat(agent): 增强API错误处理机制
添加对API错误的分类处理,包括速率限制、配额用尽、认证和连接错误
在base.py中标记API错误前缀,orchestrator.py中实现重试逻辑
litellm_adapter.py中完善错误类型识别和用户友好提示
2025-12-25 17:35:31 +08:00
lintsinghua c7632afdab feat: 为文件操作和代码解析添加异步支持
将同步的文件读取、代码解析和分块操作改为异步实现,使用 asyncio.to_thread 将 CPU 密集型操作放到线程池执行,避免阻塞事件循环。主要修改包括:
- 在 TreeSitterParser 和 CodeSplitter 中添加异步解析方法
- 修改 CodeIndexer 使用异步文件读取和分块
- 为 FileReadTool 和 FileSearchTool 添加异步文件读取支持
2025-12-25 17:20:42 +08:00
Image 597d19dbfe 🐛 fix(git):将SSH主机密钥检查从no改为yes以增强安全性
 feat(git):改进SSH URL检测和分支克隆逻辑
📝 docs(frontend):更新SSH公钥添加说明,移除CodeUp链接
2025-12-25 16:17:42 +08:00
vinland100 05b3842536 fix: 修正 Tree-sitter C# 解析器的语言标识符命名以消除加载警告 2025-12-25 15:38:00 +08:00
vinland100 d10f023a7e fix: 实现 Agent 任务中私有 Gitea 仓库克隆的 Token 认证支持 2025-12-25 15:38:00 +08:00
Image b095e7aa6c feat(git_ssh_service):扩展SSH私钥验证以支持传统RSA PEM格式
🔧 refactor(git_ssh_service):重构私钥加载逻辑,增加格式兼容性处理
2025-12-25 15:13:53 +08:00
Image 9399c01d8c Merge branch 'v3.0.0' of github.com:lintsinghua/DeepAudit into feature/git_ssh
# Conflicts:
#	backend/app/services/scanner.py
#	backend/uv.lock
#	frontend/src/pages/Projects.tsx
2025-12-25 14:41:09 +08:00
vinland100 e4f1391a28 merge: 同步上游 v3.0.0 并更新 uv 依赖锁文件 2025-12-25 11:45:52 +08:00
rockmelodies 91290802a8 在 GoTestTool 类的 _build_wrapper_code 方法中,第 770 行有语法错误。
以修复
2025-12-24 17:39:24 +08:00
Image a79b27a6d2 feat(ssh):新增SSH密钥认证支持,支持通过SSH方式访问Git仓库
新增SSH密钥管理功能,包括生成、查看、测试和删除SSH密钥对。在agent_tasks.py中集成SSH私钥解密和SSH克隆逻辑,支持git@格式的SSH URL。在projects.py中为SSH URL添加文件获取支持。新增ssh_keys.py端点提供完整的SSH密钥API管理。前端Account页面新增SSH密钥管理界面,Projects页面支持选择SSH Key认证类型。新增git_ssh_service.py提供SSH密钥生成、验证和Git SSH操作功能。
2025-12-24 16:08:56 +08:00
lintsinghua b0f17d50db docs(agent): 添加防止幻觉的验证指南和使用警告
在多个agent文件中添加详细的防止幻觉验证指南,包括:
1. 必须验证文件存在性和代码匹配性
2. 禁止猜测文件路径和行号
3. 知识库示例与实际代码的区分警告
4. 添加语言检测功能以提醒语言不匹配情况
2025-12-19 19:14:23 +08:00
lintsinghua 80704fdcb4 feat(agent): 增强文件路径验证防止幻觉报告
添加文件路径验证规则和检查逻辑,确保漏洞报告中的文件真实存在
移除LLM响应中的Markdown格式标记,统一解析处理
更新报告工具和端点以支持项目根目录验证
2025-12-19 19:08:36 +08:00
lintsinghua 4d7abae245 feat(embedding): 支持 OpenAI 兼容 API 并增强错误处理
- 更新 OpenAI 提供商描述以支持兼容 API 服务商
- 前端添加兼容 API 使用引导说明
- 后端 QwenEmbedding 添加 API 密钥验证和错误处理
2025-12-19 16:37:39 +08:00
lintsinghua 9eddef589a
Merge pull request #83 from WilliamBy/v3-dev
[feat] 添加 qwen 嵌入模型提供商
2025-12-19 16:24:11 +08:00
lintsinghua 8fe96a83cf feat(agent): 使用用户配置的LLM参数替代硬编码值
重构所有Agent和LLM服务,移除硬编码的temperature和max_tokens参数
添加get_analysis_config函数统一处理分析配置
在LLM测试接口中显示用户保存的配置参数
前端调试面板默认显示LLM测试详细信息
2025-12-19 16:08:26 +08:00
w1_liamby d827ab8b03 [feat] 添加 qwen 嵌入模型提供商 2025-12-19 15:14:39 +08:00
lintsinghua 9fe15f0d0b fix(llm): 增强API错误处理以包含原始响应信息
改进所有LLM适配器的错误处理逻辑,现在会捕获并传递API原始响应信息
添加对账户余额不足等特定错误类型的识别和处理
统一各适配器的错误响应格式,包含错误代码和消息
2025-12-19 13:33:49 +08:00
lintsinghua 2e11f3e1a3 feat(llm): 增强LLM错误处理和调试信息展示
在LLMError异常类中添加api_response字段存储原始错误信息
实现_extract_api_response方法从异常中提取API响应
前端增加调试信息展示面板,显示详细的错误诊断数据
后端测试接口返回完整的调试信息,包括耗时、错误类型等
2025-12-19 11:41:06 +08:00
lintsinghua 89ebd4d797 fix(report_generator): 转义HTML特殊字符以防止XSS攻击
添加_html_escape方法并对报告中的用户输入数据进行转义处理,包括代码片段、描述、建议、标题和文件路径,以提高安全性
2025-12-19 11:19:40 +08:00
lintsinghua 220b5f793a chore: bump version to v3.0.2 2025-12-19 00:01:10 +08:00
lintsinghua c0ac7d0544 feat(报告): 添加任务报告导出功能并优化样式
- 在 AuditTasks 页面添加快速扫描和 Agent 任务的报告导出功能
- 在 ReportExportDialog 中优化颜色样式以支持亮色/暗色模式
- 修复报告生成器中字段为空时的处理逻辑
2025-12-18 23:58:56 +08:00
lintsinghua 22b1610825 feat(agent): 新增通用代码执行工具和函数提取工具
添加 RunCodeTool 和 ExtractFunctionTool 用于 LLM 驱动的漏洞验证
放宽沙箱命令限制以支持更灵活的测试
更新验证代理提示词以优先使用动态代码验证
2025-12-18 15:03:30 +08:00
lintsinghua 1b495edb99 feat(agent): 扩展事件管理器的调试日志范围并增强工具调用循环检测
添加 tool_call, tool_result 和 llm_action 到重要事件调试日志
实现智能循环检测机制,当工具重复调用超过3次时进行干预
2025-12-18 01:53:05 +08:00
lintsinghua c49e46c231 fix(agent_tasks): 自动修正目标文件路径不匹配问题
当解压后的项目目录结构发生变化时,原有的目标文件路径可能无法匹配。自动检测并修正这些路径,确保任务能正确执行。对于无法修正的路径,记录警告并回退到全量扫描模式。
2025-12-17 19:55:08 +08:00
lintsinghua d62fd25fa6 feat(agent): 增强安全工具路径处理逻辑和错误提示
- 新增智能路径解析函数 _smart_resolve_target_path 处理常见路径问题
- 改进 Semgrep、Bandit 等工具的错误处理和日志输出
- 更新工具描述文档,明确路径使用规范
- 在 docker-compose 中添加 SANDBOX_IMAGE 配置
- 优化项目根目录检测逻辑,自动处理单层嵌套目录
2025-12-17 19:22:00 +08:00