GYC.
← 返回项目档案

Coding Agent / Research Project

RepoMedic

测试驱动的软件修复 Agent

Test-driven Coding Agent Runtime

探索如何利用大语言模型、工具调用和自动测试完成可靠的软件修复。

  • Agent Runtime
  • Tool Registry
  • Action Parser
  • pytest
  • Verification

01 / 项目定位

为什么做这个项目

探索如何利用大语言模型、工具调用和自动测试完成可靠的软件修复。

02 / 背景与问题

问题从哪里开始

  • 01

    一次性代码生成不了解真实仓库状态,也无法证明 patch 已经生效。

  • 02

    工具调用、代码修改和测试结果如果彼此脱节,失败就难以诊断。

  • 03

    修复 Agent 需要在工作区边界内执行精确修改,并把测试当作反馈。

03 / 架构

系统如何工作

  1. 01
    Task任务输入

    给出问题、仓库与验收条件

  2. 02
    Agent Reasoning智能体推理

    决定下一步观察或修改动作

  3. 03
    Tool Calling工具调用

    通过注册工具访问工作区

  4. 04
    Code Modification代码修改

    执行一次精确、可验证的编辑

  5. 05
    Pytest Verification测试验证

    运行测试并返回结构化结果

  6. 06
    Trace Report轨迹报告

    保留步骤、错误与验证记录

04 / 方法与贡献

如何解决问题

方法

  • 用 Action / Observation 循环分离决策、工具执行和验证。
  • 通过 Tool Registry 提供受控读写、命令和测试能力。
  • 将 pytest 结果回写为下一步决策依据,并导出可追踪报告。

研究贡献

  • Agent Runtime智能体运行时

    组织任务、动作和观察循环。

  • Tool Registry工具注册表

    定义工具能力与工作区边界。

  • Action Parser动作解析器

    拒绝歧义动作并保持调用结构稳定。

  • Execution Environment执行环境

    在真实仓库中产生可观察反馈。

  • Verification验证系统

    用测试结果判断修复是否成立。

05 / 技术实现

使用什么技术

  • Python
  • Agent Runtime
  • Tool Calling
  • pytest
  • Trace
  • Metrics

06 / 阶段成果

目前完成情况

轻量运行时与 Mini Benchmark 已具备,后续继续扩大评估覆盖。

  1. 01

    Action / Observation runtime 已实现

  2. 02

    Mini Benchmark 覆盖八类小型缺陷

  3. 03

    继续收集失败分布与运行轨迹

已有证据

Mini Benchmark 覆盖逻辑与边界错误、类型错误、多文件修改、编辑恢复和嵌套路径等八类小型任务,记录通过率、步骤数、耗时与失败分布。

适用范围

评估只描述已包含的小型任务,不代表通用软件工程能力。Shell 工具在宿主环境运行,工作区路径检查不等同于容器级安全隔离。