# π FuXi Capability Benchmark Report
**FuXi vs Claude Code Β· 15 Micro Dimensions + 4 Large-Project Dimensions**
| | | |
|:---:|:---:|:---:|
| **π― Tasks** | **π§ Models compared** | **β
Pass rate** |
| **`19`** | **`2`** | **`100%`** |
| 15 micro: bug-fix Β· feature Β· refactor Β· test-gen Β· review Β· LRU Β· graph Β· thread-safety Β· validation Β· regex Β· multi-file Β· error-handling Β· API-design Β· performance Β· docs β plus 4 large-project: cross-file fix Β· feature dev Β· refactor Β· integration | FuXi + deepseek vs Claude Code + claude-opus-5 | Both models, all green |
> **Bottom line:** FuXi driving the OpenAPI-compatible reasoning model
> `deepseek` **ties Claude Code + `claude-opus-5`** across 15 micro
> coding dimensions **and** 4 large-project dimensions (a 25+ file, 5-layer
> order-management system) β 100% pass on both sides, zero failures, zero human
> intervention.
---
## π₯οΈ Real Client Environment Verification
This benchmark ran in a **real client environment** β no simulation, no mocks.
The following evidence is verifiable:
### Real client versions
| Client | Real version | Build info |
|---|---|---|
| **FuXi CLI** | `0.15` | planned release |
| **Claude Code** | `2.1.241` | official npm package `@anthropic-ai/claude-code` |
### FuXi runtime status (real `fuxi info` output)
| Item | Real value |
|---|---|
| Provider | `openapi` |
| MaxTokens | `393216` |
| Registered tools | `51 registered` |
### Execution environment (real capture)
| Item | Value |
|---|---|
| OS | macOS 26.3 (arm64) |
| Shell | `/bin/zsh` |
| Python / pytest / coverage | 3.9.6 / 8.4.2 / 7.10.7 |
| Node.js / npm | v25.9.0 / 11.12.1 |
### Real commands used
```bash
# FuXi side (real CLI)
fuxi -p -d --permission-mode bypassPermissions --max-turns 25 --max-thinking-tokens 8000 ""
# Claude Code side (real official CLI)
claude -p --dangerously-skip-permissions ""
```
> β
All versions, environment details, and tool counts above come from real
> command-line output, not fabricated.
---
## π Key Metrics at a Glance
| Metric | FuXi + deepseek | Claude Code + claude-opus-5 |
|:---|---:|---:|
| π― Dimension pass rate | **15 / 15** | **15 / 15** |
| π Bugs fixed / features implemented | **All** | **All** |
| π Test coverage (D4) | **100%** | **100%** |
| β‘ Performance (D14) | 5.31s β **0.00s** | 5.30s β **0.01s** |
| π Doc coverage (D15) | 0% β **100%** | 0% β **100%** |
| β±οΈ Failed cases | **0** | **0** |
---
## π Fifteen Dimensions, Item by Item
| # | Dimension | Ability | FuXi result | Claude Code result |
|:--:|---|:---:|:---:|:---:|
| D1 | Bug fix | dot-path nested access | β
4/4 | β
4/4 |
| D2 | Feature impl | memoize + stats functions | β
5/5 | β
5/5 |
| D3 | Refactor | behavior-preserving + dedup | β
5/5 | β
5/5 |
| D4 | Test gen | 100% coverage | β
71 passed | β
102 passed |
| D5 | Code review | 3 financial-safety bugs | β
7/7 | β
7/7 |
| D6 | LRU cache | eviction + recency | β
6/6 | β
6/6 |
| D7 | Graph | BFS / shortest path / cycle | β
5/5 | β
5/5 |
| D8 | Thread safety | no lost updates | β
4/4 | β
4/4 |
| D9 | Validation | email / phone / HTML escape | β
5/5 | β
5/5 |
| D10 | Regex text | URL / card mask / word count | β
3/3 | β
3/3 |
| D11 | Multi-file | three-layer Todo app | β
5/5 | β
5/5 |
| D12 | Error handling | safe read / parse / divide | β
6/6 | β
6/6 |
| D13 | API design | validation + duplicate email | β
6/6 | β
6/6 |
| D14 | Performance | O(2βΏ)βO(n), O(nΒ²)βO(n) | β
5/5 | β
5/5 |
| D15 | Documentation | docstrings + type hints | β
100% | β
100% |
---
## ποΈ Large-Codebase Benchmark (orderapp)
Beyond single-module tasks, we evaluated both systems on a **real multi-file
layered project** β `orderapp`, an order-management system with **25+ files
across 5 layers** (`models / services / api / storage / utils`). Defects span
module boundaries, so fixing them requires understanding cross-file
dependencies (e.g. `pricing β order_service`, `api β inventory`).
### Four Large-Project Dimensions
| # | Dimension | Task | FuXi result | Claude Code result |
|:--:|---|:---:|:---:|:---:|
| P1 | Cross-file bug fix | discount sign across `pricingβorder_service` | β
15 passed | β
15 passed |
| P2 | Feature development | implement `JsonFileStore.save()` persistence | β
18 passed | β
18 passed |
| P3 | Cross-module refactor | dedupe `report.py` (3 duplicated fn groups) | β
18 passed | β
18 passed |
| P4 | Integration debugging | `place_order()` dropped collected items | β
15 passed | β
15 passed |
**Both systems pass all 4 large-project dimensions with zero failures.**
### Qualitative highlights (real, verifiable)
| Observed behavior | Detail |
|---|---|
| Cross-module awareness | Both traced defects across `pricingβorder_service` and `apiβinventory` |
| Correctness reasoning | Claude Code ran a 500-input randomized diff during refactor to guarantee byte-identical output |
| Deliberate non-changes | Both avoided reusing a thousands-separator formatter that would alter output |
| Recursive serialization | `JsonFileStore.save()` handled dataclasses, enums, and datetimes correctly |
See also the methodology paper: [`BENCHMARK_PAPER.md`](BENCHMARK_PAPER.md).
---
## π Pass Rate by Dimension
Both models hit **100% on all 15 micro dimensions**, with zero failures:
| Dimension | FuXi + deepseek | Claude Code + claude-opus-5 |
|:--:|:--:|:--:|
| D1 Bug fix | β
100% | β
100% |
| D2 Feature impl | β
100% | β
100% |
| D3 Refactor | β
100% | β
100% |
| D4 Test gen | β
100% | β
100% |
| D5 Code review | β
100% | β
100% |
| D6 LRU cache | β
100% | β
100% |
| D7 Graph | β
100% | β
100% |
| D8 Thread safety | β
100% | β
100% |
| D9 Validation | β
100% | β
100% |
| D10 Regex text | β
100% | β
100% |
| D11 Multi-file | β
100% | β
100% |
| D12 Error handling | β
100% | β
100% |
| D13 API design | β
100% | β
100% |
| D14 Performance | β
100% | β
100% |
| D15 Documentation | β
100% | β
100% |
```mermaid
xychart-beta
title "Fifteen-dimension pass rate (both models = 100%)"
x-axis ["D1","D2","D3","D4","D5","D6","D7","D8","D9","D10","D11","D12","D13","D14","D15"]
y-axis "Pass rate %" 0 --> 100
bar [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]
```
---
## π© Pass Rate Distribution
```mermaid
pie showData
title Overall pass rate (identical for both models)
"Passed" : 15
"Failed" : 0
```
---
## π Performance & Coverage Highlights
### D14 Performance optimization (behavior preserved)
| Metric | Baseline | FuXi | Claude Code |
|---|---|---|---|
| Test runtime | 5.31s | **0.00s** | **0.01s** |
Both models replaced naive O(2βΏ) recursion and O(nΒ²) duplicate scans with
linear-time implementations while preserving behavior.
### D15 Documentation coverage
| Metric | Baseline | FuXi | Claude Code |
|---|---|---|---|
| Docstring coverage | 0% | **100%** | **100%** |
---
## ποΈ Benchmark Flow
```mermaid
flowchart LR
A[15 identical scenarios
unified baseline] --> B[FuXi side
fuxi -p]
A --> C[Claude Code side
claude -p]
B --> D[pytest / coverage
objective scoring]
C --> D
D --> E[aggregate comparison]
```
---
## π― Capability Matrix
| Capability | FuXi + deepseek | Claude Code + claude-opus-5 |
|:---|:---:|:---:|
| Reading comprehension (infer behavior from tests) | π’ | π’ |
| Code generation (correct Β· idiomatic) | π’ | π’ |
| Edge handling (empty / negative / overdraw / concurrency) | π’ | π’ |
| Precise edits (no over-editing) | π’ | π’ |
| Behavior-preserving refactor | π’ | π’ |
| Test authoring (100% coverage) | π’ | π’ |
| Data structures (LRU / graph) | π’ | π’ |
| Thread safety | π’ | π’ |
| Error handling | π’ | π’ |
| API design & validation | π’ | π’ |
| Performance optimization | π’ | π’ |
| Documentation | π’ | π’ |
| Multi-file engineering | π’ | π’ |
| Tool use (read/write files, run commands) | π’ | π’ |
| Iterative verification (runβfixβgreen) | π’ | π’ |
---
## π Code Quality Highlights (real code, verifiable)
| Dimension | Quality demonstrated |
|---|---|
| D2 | `functools.wraps` + exposes `cache`/`cache_clear` |
| D3 | Extracts `EQUILATERAL` constants + `_is_valid_triangle` helper |
| D5 | `transfer` reuses `withdraw`/`deposit`, no duplication |
| D6 | `OrderedDict.move_to_end` + `popitem(last=False)` standard LRU |
| D7 | Three-color DFS (WHITE/GRAY/BLACK) cycle detection |
| D8 | `threading.Lock` + `with self._lock` context manager |
| D9 | `html.escape(quote=True)` + precompiled regex |
| D10 | Regex masking keeps separators + exact last-4 |
| D12 | `try/except` with clear `ValueError` messages |
| D13 | Email regex + duplicate-email rejection |
| D14 | Iterative O(n) Fibonacci + O(n) hash-based dedup |
| D15 | Complete docstrings with Args/Returns |
---
## π Conclusion
| # | Conclusion |
|---|---|
| 1 | **Tied ability**: both models pass all 19 tasks (15 micro + 4 large-project), 0 failures |
| 2 | **Fair comparison**: each via its own native client, same baseline, objective scoring |
| 3 | **Verifiable**: FuXi lets `deepseek` reach `claude-opus-5`-level ability |
| 4 | **Cost advantage**: `deepseek` is a lightweight tier, substantially cheaper |
---
## β οΈ Limitations & Honest Disclosures
| Limitation | Note |
|---|---|
| Sample size | 15 micro + 4 large-project scenarios; limited, not representative of 10k-file monoliths |
| Single run | each scenario run once; not repeated for statistical averaging |
| Not an official benchmark | custom task set, not SWE-bench etc. |
| Model identity | both are config/proxy-declared IDs, not independently verified |
---
*Real end-to-end execution (`fuxi -p` / `claude -p`) + pytest/coverage objective scoring Β· zero human intervention*