CodeBoost 是一个基于 Nexent 平台开发的代码运行效率优化多智能体系统。系统面向学生和开发者,能够根据用户提供的一段代码及其入口调用,自动完成复杂度分析、性能基准测试、瓶颈定位、算法优化、代码重写、基准验证和优化报告生成。
与普通问答式编程助手不同,本项目采用"主智能体 + 多个子智能体 + MCP 工具"的结构,并强调"用数据说话"——优化效果通过真实的基准测试数据进行验证,而不是仅凭经验断言。
完整闭环:
输入代码与入口调用
→ 复杂度度量
→ 性能基准测试
→ 瓶颈分析
→ 算法优化
→ 代码重写
→ 基准验证
→ 优化报告 CSV 生成
→ 迭代调整
日常开发与刷题中,常遇到以下问题:
- 代码能跑但很慢,不知道慢在哪;
- 凭感觉优化,改完不知道是否真的变快;
- 优化后引入 bug,功能被悄悄改变;
- 过度优化,牺牲可读性换取微小提升;
- 普通聊天机器人只给原则性建议,缺少真实测量和验证。
因此本项目设计了一个带基准验证的多智能体系统,帮助用户从"代码太慢"这样的模糊诉求,逐步得到经过数据验证的优化方案。
代码效率优化助手(主智能体)
├── 性能瓶颈分析智能体
├── 算法优化智能体
├── 代码重写智能体
├── 基准测试验证智能体
└── 优化迭代调整智能体
系统接入本地 MCP 工具服务 CodeBoostMCP,包含三个工具:
measure_complexity
run_benchmark
generate_optimization_report
run_benchmark 会在受限沙箱中实际运行优化前后的代码,输出平均耗时、最快耗时和内存峰值,用真实数据证明优化效果,而非空谈。
run_benchmark 会拒绝包含 os.system、subprocess、open(、__import__、eval(、exec( 等危险操作的代码,避免误执行有副作用的程序。
generate_optimization_report 将优化记录转化为带"提升百分比"的 CSV 文件,便于存档与汇报。
MCP 服务名称:CodeBoostMCP
Nexent 配置地址:http://host.docker.internal:8000/sse
功能:静态分析代码的循环嵌套深度、分支、函数数量,估算圈复杂度。
示例输出:
max_loop_depth = 2
complexity_hint = 存在双层嵌套循环,可能是 O(n^2),数据量大时需要重点优化。
功能:在沙箱中运行代码并基准测试。
输入:
code:完整源码
entry_call:入口调用,如 two_sum(list(range(100000)), 199998)
repeat:重复次数,默认 5
示例输出:
avg_time_ms = 35.21
peak_memory_kb = 812.4
result_preview = [99998, 99999]
输入文本格式:
耗时:平均耗时(ms), 1200, 35, 用哈希表替代双层循环
内存:峰值内存(KB), 5000, 800, 改用生成器
输出 CSV:
category,metric,before,after,improvement,note
耗时,平均耗时(ms),1200,35,97.1%,用哈希表替代双层循环
内存,峰值内存(KB),5000,800,84.0%,改用生成器| 文件名 | 说明 |
|---|---|
| README.md | 项目说明文档 |
| server.py | CodeBoostMCP 本地 MCP 服务代码 |
| codeboost_main_agent.json | Nexent 智能体导出 JSON |
| codeboost_report.csv | 优化报告 CSV 示例 |
操作系统:Windows / Linux / macOS
Nexent 部署方式:Docker
大模型调用:硅基流动 API
MCP 服务:Python + FastMCP
MCP 访问方式:SSE
Python 依赖:
mcp
cd code-optimizer-agent
pip install mcp
python server.py启动后看到:
Uvicorn running on http://0.0.0.0:8000
Nexent 中配置:
http://host.docker.internal:8000/sse
在 Nexent "导入智能体"中导入 codeboost_main_agent.json,确认:
- 大模型配置可用;
- 已启动本地
server.py; - MCP 地址正确;
- 主智能体已勾选三个 MCP 工具。
用户输入:
这段代码很慢,帮我优化并验证效果:
def has_dup(nums):
for i in range(len(nums)):
for j in range(i+1, len(nums)):
if nums[i] == nums[j]:
return True
return False
入口调用:has_dup(list(range(20000)))
系统执行流程:
1. 调用 measure_complexity → 发现双层循环 O(n^2)
2. 调用 run_benchmark(原代码) → 记录原始耗时
3. 瓶颈分析智能体 → 定位逐对比较
4. 算法优化智能体 → 提出 set 单次遍历,降为 O(n)
5. 代码重写智能体 → 输出优化代码
6. 调用 run_benchmark(优化代码) → 记录新耗时,确认结果一致
7. 基准验证智能体 → 对比,确认大幅提升
8. 迭代调整智能体 → 判断已达较优
9. 调用 generate_optimization_report → 生成 CSV
- 采用主智能体协调多子智能体结构,而非单一问答;
- 结合 MCP 工具完成静态分析、真实基准测试和报告生成;
- 强调"功能等价 + 数据验证",避免优化引入 bug;
- 内置安全过滤,拒绝危险代码执行;
- 形成"度量—分析—优化—重写—验证—调整"完整闭环;
- 引入"过度优化判断",权衡可读性与性能。
- 支持多语言(C++/Java)基准;
- 集成
cProfile/line_profiler行级热点; - 接入单元测试自动校验功能等价;
- 历史优化记录持久化与趋势图;
- 与 Git 联动,对 PR 自动出优化建议。