DeepSWE Benchmark

The same agent,
with and without a code graph.

We ran the full DeepSWE benchmark three ways. Same model, same scaffold, same real issues from real open source repositories. The only difference is what the agent can ask about the codebase before it edits.

BenchmarkDeepSWE, 116 entry manifestTasks113Projects89Modelopenai/gpt-5.6-terra (med)Trials3,471

01The four numbers

68.4%of GitNexus attempts fixed the bug outright, against 37.0% with no graph.

GitNexus wins on all four measures at once: it solves more while spending less, writing fewer tokens and taking fewer steps.

SetupPass rate$ per trialOutput tokensSteps
GitNexus68.37%$0.600821,07744.94
Graphify54.02%$0.636421,76948.00
Bare model36.99%$0.663122,25250.25
Pass rateHigher is better
GitNexus
68.4%
Graphify
54.0%
Bare
37.0%
Cost per trialLower is better
GitNexus
$0.6008
Graphify
$0.6364
Bare
$0.6631
Output tokensLower is better
GitNexus
21,077
Graphify
21,769
Bare
22,252
StepsLower is better
GitNexus
44.9
Graphify
48.0
Bare
50.2
+31.4 ptsMore tasks solved
9.4% lessSpend per attempt
5.3% fewerOutput tokens
10.6% fewerSteps per attempt

The usual trade is more accuracy for more spend. Here both move the same way, which works out to $0.88 per solved task against $1.79.

Table view
SetupPass rate$ per trialOutput tokensSteps$ per solved task
GitNexus68.37%$0.600821,07744.94$0.88
Graphify54.02%$0.636421,76948.00$1.18
Bare model36.99%$0.663122,25250.25$1.79
Averages across 3,471 trials, 10 per task per arm. 95% CI on pass rate: GitNexus 65.6%–71.0%, bare model 34.3%–39.8%.

02Why the graph moves all four

Without a code graph, an agent navigates by reading. That searching is what the last three numbers measure.

It knows where to look

The graph answers what calls this and what depends on it, so the agent stops opening files to find out.

Steps drop from 50.2 to 44.9
It carries less context

A resolved answer is far smaller than the pile of files an agent would otherwise re-read every turn.

Input tokens 15.8% fewer
It writes less to get further

Grounded edits need less speculative reasoning, so output shrinks while the success rate climbs.

Output 5.3% fewer, pass rate 1.85×
It pays off most on hard code

When a task is hard, navigation is the bottleneck rather than the edit itself.

3.5× the pass rate on the hardest 58 tasks

03Where the gains show up

The lead is not carried by a few tasks. GitNexus comes out ahead on 98 of the 113, and the gap grows as the work gets harder.

Pass rate by task difficultyGrouped by how often the bare model can solve them
95%
79%
81%
Easy17 tasks · bare model solves over 66%
77%
67%
50%
Moderate38 tasks · bare model solves 33 to 66%
56%
39%
16%
Hard58 tasks · bare model solves under 33%
GitNexusGraphifyBare model
+13.9 ptsAdvantage on easy tasks
+27.4 ptsAdvantage on moderate tasks
+40.0 ptsAdvantage on hard tasks
3.5×The pass rate on hard tasks

On the 58 hardest tasks the bare model manages 15.9% and GitNexus manages 55.9%. Those are the tasks where understanding the repository is the real obstacle.

Table view
DifficultyTasksGitNexusGraphifyBare modelAdvantage
Easy · bare model solves over 66%1794.7%78.9%80.8%+13.9 pts
Moderate · bare model solves 33 to 66%3877.3%66.6%49.9%+27.4 pts
Hard · bare model solves under 33%5855.9%39.1%15.9%+40.0 pts
Per task head to head: GitNexus wins 98, ties 8, loses 7 against the bare model. Two proportion z test on pass rate: z = 15.11, p < 1e-50.

04What is being tested

DeepSWE is a set of real bugs and feature requests taken from open source projects. Every task is an issue someone filed, paired with the test suite that was failing at the time. The manifest holds 116 entries spread across 89 different projects, covering Python, Go, TypeScript and Rust. The agent has to find its way around an unfamiliar codebase before it can fix anything. That is the part the code graph changes.

  • Setups. One model and one scaffold throughout. GitNexus with its code graph, Graphify with code extraction only, and the model on its own with no retrieval layer.
  • Scoring. A pass means every failing test turns green and nothing that already passed breaks. There is no partial credit.
  • Measured. Cost, tokens and steps come from the run records, one row per attempt.
What this does not show

Single-issue benchmarks measure one narrow thing: how an agent reads code. They cannot measure querying hundreds of repositories as one graph, blast radius before a merge, or taint tracking across service boundaries. Those capabilities are the product. This is what happens on the narrow slice anyway.

Run it yourself

Want the raw trajectories, or a run on your own repositories?

Talk to us