Commit Graph

317 Commits

Author SHA1 Message Date
lintsinghua 8ee98a20eb style(ui): 统一组件样式,优化视觉设计和交互体验
- 更新颜色系统,使用新的主题变量
- 调整圆角、边框、阴影等视觉样式
- 优化字体大小、间距和排版细节
- 改进表单组件的交互状态
- 增强暗色模式下的显示效果
2025-12-18 19:57:43 +08:00
lintsinghua 51ee5a0da9 ci(docker): 注释掉本地代码挂载以使用容器内代码
不再挂载本地代码目录,确保生产环境使用容器内构建的代码,避免开发环境与生产环境不一致
2025-12-18 18:13:09 +08:00
lintsinghua 22b1610825 feat(agent): 新增通用代码执行工具和函数提取工具
添加 RunCodeTool 和 ExtractFunctionTool 用于 LLM 驱动的漏洞验证
放宽沙箱命令限制以支持更灵活的测试
更新验证代理提示词以优先使用动态代码验证
2025-12-18 15:03:30 +08:00
lintsinghua e4a4ca46fe
Add LICENSE file 2025-12-18 02:22:41 +08:00
lintsinghua 84957b6397
更新 README.md 2025-12-18 02:02:47 +08:00
lintsinghua 3835304b54 Merge branch 'v3.0.0' of https://github.com/lintsinghua/XCodeReviewer into v3.0.0 2025-12-18 01:53:06 +08:00
lintsinghua 1b495edb99 feat(agent): 扩展事件管理器的调试日志范围并增强工具调用循环检测
添加 tool_call, tool_result 和 llm_action 到重要事件调试日志
实现智能循环检测机制,当工具重复调用超过3次时进行干预
2025-12-18 01:53:05 +08:00
lintsinghua 59a069932a
Update README.md 2025-12-18 01:25:31 +08:00
lintsinghua ee8921a10a
Update Docker Compose URL to version 3.0.0 2025-12-18 01:19:59 +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
lintsinghua dbf03c5ac3 refactor(沙箱工具): 将沙箱镜像配置改为从settings读取
默认镜像配置改为从settings.SANDBOX_IMAGE读取,提高配置灵活性
2025-12-17 18:07:11 +08:00
lintsinghua 99c0613cfa fix(docker): 同时设置大小写代理环境变量以禁用代理 2025-12-17 17:11:31 +08:00
lintsinghua f1796ca044 fix(docker): 禁用代理环境变量防止网络干扰
在 Docker 容器配置中禁用 HTTP/HTTPS 代理环境变量,防止代理设置干扰容器网络连接
同时优化 sandbox 工具的环境变量处理逻辑
2025-12-17 15:33:53 +08:00
lintsinghua 1a720f7072 build: 更新 tree-sitter 依赖至 tree-sitter-language-pack
替换已弃用的 tree-sitter-languages 为 tree-sitter-language-pack,并升级 tree-sitter 至 0.23.0 以上版本以解决兼容性问题
2025-12-17 14:52:59 +08:00
lintsinghua f4d461d45a
更新 README.md 2025-12-17 08:36:24 +08:00
lintsinghua 5a36e9c64e
更新 README.md 2025-12-17 01:59:45 +08:00
lintsinghua 82b783408f
Revise Docker image pull instructions in README
Updated instructions for using Nanjing University mirror for Docker images.
2025-12-17 01:47:40 +08:00
lintsinghua 4339806a75 Merge branch 'v3.0.0' of https://github.com/lintsinghua/XCodeReviewer into v3.0.0 2025-12-17 01:38:22 +08:00
lintsinghua b51f520451 feat: Introduce China-specific production deployment, automate database migrations, and enhance LLM configuration flexibility. 2025-12-17 01:38:21 +08:00
lintsinghua bde294c7b1
Update README.md 2025-12-17 01:24:01 +08:00
lintsinghua 6a28108a65
Update README.md 2025-12-17 01:23:39 +08:00
lintsinghua 40dd0c817d docs: 更新安全政策文档链接
添加 DISCLAIMER.md 文件到安全政策文档引用中
2025-12-17 00:54:12 +08:00
lintsinghua 9b0e53350b
Update README.md 2025-12-17 00:45:38 +08:00
lintsinghua 2af618737f
Update README.md 2025-12-17 00:45:11 +08:00
lintsinghua 68e4fff8be docs: 添加重要安全声明和使用限制到README
在README文件中新增安全声明章节,明确法律合规要求和使用限制
2025-12-17 00:43:28 +08:00
lintsinghua b68ca2d82a
Update README.md 2025-12-17 00:03:00 +08:00
lintsinghua 3525842699 fix(ci): switch to node:20-slim to resolve arm64 build hang 2025-12-16 23:20:39 +08:00
lintsinghua 4bdae3151d fix(ci): optimize pnpm install for arm64 builds 2025-12-16 23:13:05 +08:00
lintsinghua 7589599f91 chore: release v3.0.1 2025-12-16 22:55:19 +08:00
lintsinghua a980fa34e1 fix(agent): 修复任务取消和LLM流式处理的多项问题
修复任务取消后仍可能标记为完成的问题,增加全局取消检查回调
移除事件管理器的人为延迟,防止队列堆积
为LLM流式调用增加超时机制和安全检查
增加验证阶段超时时间至10分钟
2025-12-16 22:47:04 +08:00
lintsinghua be0bdcbbdc docs: remove CHANGELOG.md 2025-12-16 22:11:59 +08:00
lintsinghua 6c080fc5d6 feat(agent): 增加漏洞文件统计功能并优化agent提示词
- 在AgentTask模型中添加files_with_findings字段统计有漏洞发现的文件数
- 更新前后端接口和界面展示漏洞文件统计
- 优化各Agent的系统提示词,移除冗余内容并增强工具使用约束
- 增加LLM的max_tokens至8192避免截断
- 添加生产环境docker-compose配置和更新README部署说明
2025-12-16 22:08:45 +08:00
lintsinghua cd79242b3e feat: 一键部署沙箱 + Docker 镜像发布工作流
- docker-compose: 移除沙箱 profiles 配置,支持一键 docker compose up -d
- pyproject.toml: 迁移 dev-dependencies 到 dependency-groups (PEP 735)
- 新增 docker-publish.yml 工作流,支持手动发布镜像(不创建 tag)
- 优化 orchestrator 和 verification agent

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 20:00:00 +08:00
lintsinghua f71b8da7df feat(embedding): 支持前端配置嵌入模型的API密钥
refactor(agent): 改进任务取消逻辑,确保子Agent被正确取消
- 移除asyncio.shield()以允许取消信号传播
- 增加更频繁的取消状态检查
- 添加日志记录子Agent取消情况

feat(nginx): 添加前端构建产物和nginx配置的挂载

refactor(rag): 优化代码索引器的日志输出和元数据处理
- 添加索引文件数量的调试日志
- 将元数据字段提升到顶级以便检索

fix(parser): 修复AST定义提取中的方法识别问题
- 区分函数和方法定义
- 优化遍历逻辑避免重复匹配
2025-12-16 19:42:44 +08:00
lintsinghua 7efb89d2d2 fix(rag): 修复代码块ID重复问题
在CodeIndexer中添加去重逻辑,确保没有重复ID的代码块被索引
使用完整内容生成hash作为ID,提高唯一性
2025-12-16 18:49:30 +08:00
lintsinghua 96560e6474 feat(RAG): 添加索引任务取消检查并支持目标文件过滤
在索引过程中添加取消检查功能,允许在嵌入批处理时取消任务
支持通过target_files参数限制索引范围
2025-12-16 18:46:34 +08:00
lintsinghua e0689245de feat(RAG): 添加嵌入进度显示和取消支持
为RAG索引过程添加嵌入进度回调功能,支持实时显示嵌入向量生成进度
新增取消检查机制,允许用户取消长时间运行的嵌入操作
更新前端依赖版本以保持兼容性
2025-12-16 18:41:30 +08:00
lintsinghua 2bba972272 feat(AgentAudit): 添加进度日志功能支持
添加 progress 日志类型,支持通过 progressKey 更新或添加进度日志
在日志组件中增加进度日志的样式和显示
处理进度消息的匹配和更新逻辑,避免重复添加日志
2025-12-16 18:04:09 +08:00
lintsinghua 18a91f25b2 feat(agent_tasks): 优化仓库获取逻辑,优先使用ZIP下载
重构仓库项目获取逻辑,优先尝试通过ZIP下载方式获取仓库内容,仅在失败时回退到git clone。ZIP下载方式更快更稳定,减少对git的依赖。同时改进分支尝试顺序和错误处理机制。
2025-12-16 17:38:52 +08:00
lintsinghua 5974323a71 feat(agent): 实现任务取消和超时处理机制
添加对Agent任务的取消和超时处理支持,包括:
- 在工具执行、子Agent运行和项目初始化阶段检查取消状态
- 为不同工具和Agent类型设置合理的超时时间
- 使用asyncio实现取消检查和超时控制
- 优化取消响应速度,减少资源浪费
2025-12-16 17:31:29 +08:00
lintsinghua a27d37960a feat(nginx): 增加大文件上传支持
添加 client_max_body_size 配置以支持 ZIP 项目上传
2025-12-16 16:58:50 +08:00
lintsinghua e2109647bf feat(agent): 增强任务执行流程和实时日志反馈
- 在任务执行流程中添加实时事件反馈,包括克隆进度和索引进度
- 实现 RAG v2.0 智能索引功能,支持模型变更检测和增量更新
- 改进文件工具兼容性,支持 path 参数作为 directory 别名
- 扩展前端事件处理逻辑,支持更多事件类型显示
- 修复 tree-sitter 版本兼容性问题
2025-12-16 16:56:09 +08:00
lintsinghua a31372450e chore: 从 git 跟踪中移除向量数据库数据文件
向量数据库数据是运行时生成的,不应纳入版本控制。
.gitignore 已配置忽略该目录。

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-16 15:43:35 +08:00
lintsinghua 17889dceee feat(retriever): 添加自动适配不同 embedding 配置的功能
支持自动检测 collection 的 embedding 配置并动态创建对应的 embedding 服务
新增从向量维度推断配置的功能,兼容旧的 collection
2025-12-16 15:28:03 +08:00
lintsinghua 3176c35817 chore: 忽略后端向量数据库数据目录 2025-12-16 15:13:40 +08:00
lintsinghua 5f07403850 feat(agent): 增强 RAG 配置和工具集成
- 扩展嵌入模型配置选项,支持独立 API Key 和 Base URL
- 重构 RAG 初始化逻辑,支持用户自定义嵌入配置
- 新增语义搜索工具并集成到 Recon 和 Analysis Agent
- 完善系统提示,明确不同代码搜索工具的使用场景
2025-12-16 13:57:27 +08:00
lintsinghua 3bdbbf254b feat(agent): 将模型选择从下拉框改为输入框并添加预设模型按钮 2025-12-16 13:10:51 +08:00
lintsinghua 15743e0b18 feat: 将最大分析文件数默认值改为0表示无限制
修改前后端配置文件和文档,将 MAX_ANALYZE_FILES 默认值从50改为0表示无限制
同时更新相关逻辑判断条件,仅在 MAX_ANALYZE_FILES > 0 时进行文件数限制
2025-12-16 13:04:09 +08:00
lintsinghua 323b4ac8e3 Merge branch 'v3.0.0' of https://github.com/lintsinghua/XCodeReviewer into v3.0.0 2025-12-16 12:35:00 +08:00