Kozuchi Agent: A Language-Agnostic Open-Weight Agent for Software Repair
Authors: Mehdi Bahrami, Kosaku Kimura, Satoshi Munakata, Satoshi Nakashima, Yu Ishikawa, Kosuke Maeda, Nao Soma, Kenichi Kobayashi, Keisuke Miyazaki, Keizo Kato, Shigeki Fukuta, Tatsuo Kumano, Nobutaka Imamura, Kevin Musgrave, Shahbaz Abdul Khader, Kwun Ho Ngan, Joe Townsend, Fayas Asharindavida, Matthieu Parizy, Akira Sakai, Yuma Ichikawa, Yang Zhao, Michiaki Takizawa, Taku Fukui, Hiroki Ohtsuji, Wei-Peng Chen, Hiromichi Kobashi
Organizations: Fujitsu Research of America Santa Clara, CA, USA · Fujitsu Research Kawasaki, Japan · Fujitsu Research of Europe Slough, UK · Fujitsu Research & Development Beijing, China
Industrial software-engineering teams increasingly need LLM agents that turn bug reports into correct patches, yet benchmark-scale operation adds long horizons, tool-use discipline, context persistence, heterogeneous clusters, and evaluation reuse. We present Kozuchi Agent, a language-agnostic open-weight repair agent and CI-operated evaluation pipeline. Explicit phases, persistent state, deterministic tools, a model-independent action interface, and cross-agent test-time selection make runs auditable and repeatable. With locally hosted Qwen3.5-27B, no fine-tuning, and TTS@8, Kozuchi resolves 374/500 SWE-bench Verified instances on the official evaluator. Unchanged on Multi-SWE-bench Java, the same 27-billion-parameter agent resolves 41/128 instances (32.03%), ranking first among strict open-weight submissions and fourth of 42 overall; on Python it ranks 12th of 135 and first among open-weight systems. Per-phase behavior remains within +/-5 percentage points across languages. Remaining failures mainly reflect semantic correctness, Java-specific harness issues, and selection errors. Across both tracks, results compare favorably with open/local peers by parameter count. Analysis of candidate diversity, selector regret, and patch reliability shows that the remaining gap is primarily semantic correctness and selection rather than edit formatting or proprietary-model access. Operationally, reusable CI stages reduce operator touch-points from five to one across heterogeneous internal clusters.
Figures & tables
Figure 1. Kozuchi Agent is parameter efficient on both Python SWE-bench Verified and Multi-SWE-bench Java. Dual-axis scatter plot of agent success rate against total parameter count on a log scale. The left (blue) axis shows SWE-bench Verified Python results for Kozuchi Agent and open/local peers with the Python Pareto frontier as a dashed blue line; the right (red) axis shows Multi-SWE-Bench Verified Java results for open-weight peers with the per-size-class Java envelope as a dashed red line. Kozuchi Agent + Qwen3.5-27B is highlighted with star markers on both axes (74.8 percent Python, 32.03 percent Java) at 27 billion parameters.
Mechanism / claim
Evidence type
Where
Candidate count K=8
Ablated: pass@1 334–343 vs. oracle 408
Tab. 7
Cross-agent selector
Ablated: 376 vs. 362 (order) vs. 346 (self-tests)
Tab. 7
Selector weights wB,wR
Sensitivity sweep: ≤ 5/500 outcome change
§ 7
Phase graph, handover state, formatter, tool sandbox, CI reuse
Operational signatures; not ablated
§ 6 , § 9
Engineer-minute saving
Derived order-of-magnitude estimate
Tab. 2
GPU-hours
Wall-clock-derived estimate
§ 8.5
Table 1. Evidence map: mechanisms and claims by type.
Figure 2. Kozuchi Agent workflow from candidate generation to cross-agent selection. Two-lane system diagram. The upper lane shows the broad issue-to-patch workflow through candidate generation, archived artifacts, selection, and submitted patch. The lower lane expands one candidate trajectory with durable shared memory, turn-level action normalization, tools, and the cross-run test application that produces the selector signals B_ij and R_ij.
Quantity
Value
Quantity
Value
Expected (Verified)
500
wB
0.3
Selected (covered)
495
wR
0.7
Resolved (xcheck selector)
376
Tie epsilon
0.001
Score over expected (xcheck)
0.752
Tie-breaker
shortest_patch_raw
Resolved (order baseline)
362
Tie-break applied
304/495
Score over expected (order)
0.724
Mean unique patches
5.59/8
Table 3. Cross-agent selector summary.
Quantity
Interpretation
Value
Mean pass@1
Average over eight runs
67.7%
All-run solved
ri=8 scaffold-easy instances
234 / 500
Zero-run solved
ri=0 scaffold-hard instances
92 / 500
Marginal instances
1≤ri≤7 selector-sensitive
174 / 500
Oracle pass@8
Any run resolves
408 / 500 = 81.6%
Cross-agent selector
Official-evaluator result
374 / 500 = 74.8%
Table 4. Candidate-level TTS@8 decomposition.
Repository
Resolved/Total
Rate
Repository
Resolved/Total
Rate
astropy/astropy
13/22
59.1%
pydata/xarray
18/22
81.8%
django/django
177/231
76.6%
pylint-dev/pylint
3/10
30.0%
matplotlib/matplotlib
23/34
67.7%
pytest-dev/pytest
16/19
84.2%
mwaskom/seaborn
1/2
50.0%
scikit-learn/scikit-learn
27/32
84.4%
pallets/flask
1/1
100.0%
sphinx-doc/sphinx
30/44
68.2%
psf/requests
8/8
100.0%
sympy/sympy
57/75
76.0%
Table 5. SWE-bench Verified resolution by repository.
Figure 3. Per-repository resolution rate for Kozuchi agent (first column on the left) and the curated open-weight peers. Heatmap comparing per-repository resolution rates for Kozuchi agent and open-weight peer agents across the 12 repositories in SWE-bench Verified. Kozuchi agent leads or ties the strongest peer on several high- and medium-volume repositories including django, sympy, sphinx, and pytest, while pylint remains low for most systems.
Category
Count
Share
WRONG_FIX
115
91.3%
REGRESSION
6
4.8%
MISSING_ARTEFACT
5
4.0%
PATCH_DID_NOT_APPLY
0
0.0%
EMPTY_PATCH
0
0.0%
Total
126
100.0%
Table 6. Failure taxonomy for unresolved instances.
Variant
Resolved
Rate
Note
K=1 , no selector (mean)
338.6
67.7%
eight-run mean
K=1 , no selector (best)
343
68.6%
best leg
K=8 , order baseline
362
72.4%
no cross-agent ranking
K=8 , self-tests only
346
69.2%
estimated
K=8 , cross-agent selector
376
75.2%
selected
K=8 , oracle
408
81.6%
upper bound
Table 7. Artifact-based TTS@8 ablation. Scope: this table isolates candidate count ( K ) and selector design only; phase graph, formatter, persistent state, and tool sandbox are not ablated and are evidenced operationally in § 6 and § 9 .
Figure 4. Cross-language transfer summary. Two-panel comparison. The first panel shows Python at 374 of 500 resolved and Java at 41 of 128 resolved with Wilson confidence intervals. The second panel overlays the eight phase message shares for the Python and Java trajectories, showing similar shape across the phase graph.
Signal
Python
Java
Benchmark
SWE-bench Verified ( n=500 )
Multi-SWE-bench Java ( n=128 )
Resolved (Wilson 95% CI)
374/500 = 74.80% [70.82, 78.41]
41/128 = 32.03% [24.57, 40.54]
Leaderboard position
12/135 overall
4/42 overall
Open-weight rank
1st curated open-weight
1st strict open-weight
BH-FDR peer wins
16/17 open-weight peers
34/41 Java peers
Same-family open margin
+26 vs. Qwen3-Coder-480B
+38 vs. Qwen2.5-72B
Table 8. Python–Java cross-track evidence for the same 27-billion-parameter Kozuchi agent configuration.
While Large Language Models have greatly advanced automated issue resolution, existing agent-based methods exhibit a fundamental limitation in their insufficient exploration of repair strategies. This insufficiency manifests in two key aspects. First, the exploration of multiple potential edit locations is limited. Second, the exploration of repair attempts at each location is also insufficient. To address these challenges, we present PhoenixRepair, a multi-agent framework that systematically explores multiple candidate edit locations and performs iterative reflection and refinement on patch generation, thereby expanding the search space of repair strategies. Our framework begins with multi-location sampling, optionally augmented with graph-based localization information for difficult tasks, followed by iterative reflection and refinement to generate better patches, culminating in final-round generation guided by distilled insights from all historical attempts. Experiments on SWE-bench-Verified demonstrate that PhoenixRepair achieves the largest relative improvement of 7.8% over SWE-agent under DeepSeek-V3.1, and attains the highest resolved rate of 76.0% Pass@1 under MiniMax-M2.5. Meanwhile, it achieves higher fault localization accuracy than existing approaches. Our code is available at https://github.com/DeepSoftwareAnalytics/PhoenixRepair.
Tianyue Jiang, Yanlin Wang, Xin He +7
Sun Yat-sen University, China · State Key Laboratory of Blockchain and Data Security, Zhejiang University, China · School of Cyber Science and Engineering, Huazhong University of Science and Technology, China +1
Large language model (LLM)-based software engineering agents are increasingly developed to resolve software issues by generating patches from issue reports and code repositories. Bug reproduction tests (BRTs) are an important building block for such agents and have been shown useful for patch validation. However, it remains unclear whether BRTs can also help the more central stage of patch generation. We first conduct a preliminary study and find that directly using advanced BRT generators to guide patch generation is not beneficial: fail-to-fail BRTs can mislead agents, while even fail-to-pass BRTs bring limited or negative gains. Our analysis reveals two reasons: fail-to-pass BRTs may cover only one manifestation of the reported issue, leading to partial patches, whereas fail-to-fail BRTs are unreliable as direct patch-generation targets. Motivated by these insights, we propose SWE-Doctor, a software issue resolution agent that guides patch generation with runtime diagnoses derived from multi-faceted BRT executions. SWE-Doctor first generates multi-faceted BRTs for different behavioral requirements stated in the issue, then executes and debugs these BRTs to construct runtime-grounded diagnosis records, and finally uses the diagnoses together with localization information inferred during BRT generation to guide patch generation and reduce partial patches. We evaluate SWE-Doctor on Python bug-fixing issues from the widely adopted SWE-bench Verified and SWE-bench Pro across five LLM backends. SWE-Doctor consistently outperforms existing agents across all 10 LLM-benchmark combinations, achieving average resolution rates of 75.7% on SWE-bench Verified and 59.4% on SWE-bench Pro. In particular, on the more challenging SWE-bench Pro, SWE-Doctor improves the average resolution rate by 8.0-8.9 percentage points over the baseline agents.
Yaoqi Guo, Yang Liu, Jie M. Zhang +3
Nanyang Technology University · King’s College London · Peking University +2
We introduce SWE-ZERO to SWE-HERO, a two-stage SFT recipe that achieves state-of-the-art results on SWE-bench by distilling open-weight frontier LLMs. Our pipeline replaces resource-heavy dependencies with an evolutionary refinement strategy: (1) SWE-ZERO utilizes large-scale, execution-free trajectories to master code semantics and repository-level reasoning, and (2) SWE-HERO applies targeted, execution-backed refinement to transition these semantic intuitions into rigorous engineering workflows. Our empirical results set a new benchmark for open-source models of comparable size. We release a dataset of 300k SWE-ZERO and 13k SWE-HERO trajectories distilled from Qwen3-Coder-480B, alongside a suite of agents based on the Qwen2.5-Coder series. Notably, SWE-HERO-32B achieves a 62.2% resolution rate on SWE-bench Verified. Furthermore, despite being trained exclusively on Python, our agents demonstrate robust zero-shot transferability on SWE-bench Multilingual, reaching 44.1% and confirming the paradigm's generalizability across diverse languages.
Nikolai Ludwig, Wasi Uddin Ahmad, Somshubra Majumdar +1