Commit Graph

17 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
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
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
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
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
google-labs-jules[bot] 1c0ec2b13d feat: enhance Gitea support and merge upstream v3.0.0
- Merge upstream v3.0.0 changes
- Fix security vulnerabilities (SSRF, Path Traversal) by introducing `parse_repository_url` utility
- Fix token leakage and handling in `scanner.py` and `projects.py`
- Fix `NameError` in `scanner.py`
- Fix `frontend/docker-entrypoint.sh` API URL escaping
- Standardize Gitea token naming to `gitea_token`
2025-12-17 03:02:42 +00:00
vinland100 630b8b1a60 更新README.md,gitea仓库支持获取分支 2025-12-16 18:55:07 +08:00
lintsinghua cdf360dcf7 feat: 增加文件上传大小限制至500MB并优化大文件处理
增加ZIP文件上传大小限制从100MB到500MB
在agent工具中添加失败调用追踪和自动跳过机制
优化大文件读取性能,支持流式处理指定行范围
2025-12-15 09:21:37 +08:00
lintsinghua f05c0073e1 feat(agent): implement comprehensive agent architecture with knowledge base and persistence layer
- Add database migrations for agent checkpoints and tree node tracking
- Implement core agent execution framework with executor, state management, and message handling
- Create knowledge base system with framework-specific modules (Django, FastAPI, Flask, Express, React, Supabase)
- Add vulnerability knowledge modules covering authentication, cryptography, injection, XSS, XXE, SSRF, path traversal, deserialization, and race conditions
- Introduce new agent tools: thinking tool, reporting tool, and agent-specific utilities
- Implement LLM memory compression and prompt caching for improved performance
- Add agent registry and persistence layer for checkpoint management
- Refactor agent implementations (analysis, recon, verification, orchestrator) with enhanced capabilities
- Remove legacy agent implementations (analysis_v2, react_agent)
- Update API endpoints for agent task creation and project management
- Add frontend components for agent task creation and enhanced audit UI
- Consolidate agent service architecture with improved separation of concerns
- This refactoring provides a scalable foundation for multi-agent collaboration with knowledge-driven decision making and state persistence
2025-12-12 15:27:12 +08:00
lintsinghua b0861c1690 feat(file-selection): add custom exclude patterns for file filtering
- Add exclude_patterns parameter to get_project_files endpoint for custom file filtering
- Support JSON-formatted exclude patterns array in API requests
- Integrate custom exclude patterns into ZIP and repository file scanning workflows
- Update should_exclude and is_text_file functions to support user-defined patterns
- Pass exclude_patterns through scan configuration in both scan_zip and scan_stored_zip endpoints
- Add ScanRequest model field for exclude_patterns to support pattern specification
- Implement file filtering logic that respects both default and custom exclusion rules
- Add comprehensive unit and E2E tests for file selection and exclusion pattern functionality
- Enable users to customize which files are scanned by specifying glob patterns like ["node_modules/**", "*.log"]
2025-12-10 18:46:33 +08:00
lintsinghua 14b7c8cccc fix: 修复时间显示问题,使用带时区的UTC时间
- 将所有 datetime.utcnow() 替换为 datetime.now(timezone.utc)
- 修复 completed_at, started_at, updated_at, resolved_at 等时间字段
- 修复 JWT token 过期时间计算
- 修复数据导出和ZIP上传时间戳
- 调整README中项目管理和审计报告图片显示比例
2025-12-09 17:47:34 +08:00
lintsinghua 07810b309c feat(audit): refactor task creation with file selection and advanced options
- Add FileSelectionDialog component for granular file selection in audit tasks
- Extract task form logic into useTaskForm and useZipFile custom hooks
- Create modular components: BasicConfig, AdvancedOptions, ExcludePatterns, ProjectSelector, ZipFileSection
- Add file listing endpoint GET /projects/{id}/files with branch support
- Add branch listing endpoint GET /projects/{id}/branches for repository projects
- Implement ScanRequest model with file_paths, exclude_patterns, and branch_name fields
- Update scan endpoint to accept selective file scanning and exclude patterns
- Add branch_name and exclude_patterns fields to AuditTask model
- Enhance scanner service with GitHub and GitLab file/branch retrieval functions
- Improve CreateTaskDialog with better UX for repository and ZIP file scanning
- Support per-scan configuration storage in audit tasks
- Refactor repository scan services to handle file selection and branch parameters
2025-12-06 20:47:28 +08:00
lintsinghua 9054f0d2c5 feat: v2.0.0-test release
Major changes:
- Backend: Add report generator service with comprehensive analysis
- Backend: Enhanced scan and task endpoints
- Frontend: Refactor instant analysis page and export dialog
- Frontend: Optimize report export service
- Infrastructure: Simplify Dockerfile and update docker-compose
- Docs: Streamline README documentation
- Assets: Add logo with transparent background
2025-11-28 20:34:15 +08:00
lintsinghua c54212a8c9 refactor: 清理IndexedDB相关代码,统一使用后端ZIP存储
- 移除前端废弃的loadZipFile/saveZipFile函数
- ProjectDetail使用scanStoredZipFile替代loadZipFile
- RecycleBin移除手动删除ZIP文件逻辑
- 后端permanently_delete_project自动清理ZIP文件
2025-11-28 18:01:43 +08:00
lintsinghua bfef3b35a6 feat(projects): add ZIP file upload support and source type tracking
- Add source_type field to projects model to distinguish between repository and ZIP sources
- Implement ZIP file storage service with save, load, delete, and metadata operations
- Add database migration to populate source_type for existing projects
- Create ZIP upload endpoint with file handling and metadata tracking
- Add ZIP download endpoint for project file retrieval
- Implement project ZIP info endpoint to check file status and metadata
- Update project creation to support both repository and ZIP source types
- Add project type constants and utility functions for source type handling
- Update database export/import to include source_type field
- Extend frontend components to support ZIP file uploads in project creation
- Add instant analysis page for direct ZIP file scanning without project creation
- Update .gitignore to exclude uploaded ZIP files and metadata
- Enhance project detail and task detail pages with ZIP file management UI
2025-11-28 17:38:12 +08:00
lintsinghua b733181663 fix(api): restrict project and task queries to current user
- Filter projects endpoint to return only projects owned by current user
- Filter tasks endpoint to return only tasks from current user's projects
- Update statistics endpoint to calculate stats scoped to current user's data
- Add filtering logic for projects, tasks, and issues based on user ownership
- Improve data isolation and security by preventing cross-user data access
2025-11-28 01:11:21 +08:00
lintsinghua 6ce5b3c6c1 refactor: 重构项目结构,将前端和后端代码分离到独立目录
- 将前端代码移动到 frontend/ 目录
- 将后端代码移动到 backend/ 目录
- 更新 .gitignore 以包含 Python 和前端构建产物
- 修复 LLM JSON 解析问题,增强错误处理
- 修复前端配置默认值,改为从后端获取
- 删除 AdminDashboard 中的数据库信息和统计卡片
- 完善系统配置管理,支持从后端获取默认配置
2025-11-26 21:11:12 +08:00