Cursor Composer 2 turned out to be Kimi K2.5 with coding-focused RL
The day after Cursor announced Composer 2, developer Fynn (@fynnso) hit Cursor’s OpenAI‑compatible API endpoint directly, and the internal model ID came back in plain text.
accounts/anysphere/models/kimi-k2p5-rl-0317-s515-fast
kimi-k2p5 is Moonshot AI’s Kimi K2.5, rl indicates additional training via reinforcement learning, and 0317 is the training date (March 17, 2026). Cursor’s official blog said nothing about the base model and read as if it were proprietary, so the Hacker News thread climbed to 264 points.
Kimi K2.5 architecture
Kimi K2.5 is an open‑weights Mixture‑of‑Experts (MoE) model released by Moonshot AI. In MoE, the model is split into multiple “expert” networks and, for each token, only a subset of experts is activated. This keeps compute in check even when the total parameter count is very large.
| Field | Value |
|---|---|
| Total parameters | ~1T |
| Active parameters per token | 32B |
| Number of experts | 384 |
| Experts selected per token | 8 + 1 (shared) |
| Context length | 256K tokens |
| Attention | MLA (Multi‑Head Latent Attention) |
| Vision encoder | MoonViT (400M parameters) |
| Training tokens | ~15T total (vision + text) |
Benchmark results are as follows.
| Benchmark | Score |
|---|---|
| AIME 2025 | 96.1 |
| GPQA‑Diamond | 87.6 |
| SWE‑Bench Verified | 76.8 |
| LiveCodeBench v6 | 85.0 |
| HLE‑Full (tool use) | 50.2 |
Moonshot AI also employed a method called PARL (Parallel‑Agent RL) to train Kimi K2.5. It decomposes monolithic tasks into subroutines that run in parallel and trains only the orchestrator. On BrowseComp it improved from 60.6% to 78.4% (+17.8 pts).
RL added by Cursor
What Cursor applied is coding‑specialized reinforcement learning that rewards “long‑horizon coding tasks requiring hundreds of actions.” They say roughly one quarter of the total compute comes from the base model and the remaining three quarters from Cursor’s own RL training. For inference, they use Fireworks AI’s hosted RL and inference platform.
CursorBench (Cursor’s internal benchmark) results are below.
| Model | CursorBench |
|---|---|
| GPT‑5.4 Thinking | 63.9 |
| Composer 2 | 61.3 |
| Claude Opus 4.6 | 58.2 |
| Composer 1.5 | 44.2 |
That’s a 17‑plus‑point improvement over the previous version (1.5), putting it close to GPT‑5.4 Thinking.
How the licensing issue unfolded
The Kimi K2.5 license is a Modified MIT that requires services with over 100 million MAU or more than 167 million (about $2 billion annualized), well above the threshold.
Right after the discovery, Yulun Du, Moonshot AI’s pretraining lead, independently verified via tokenizer analysis that the model was Kimi K2.5 and publicly alleged on X a licensing violation and non‑payment. A few hours later, Moonshot AI’s official account (@Kimi_Moonshot) issued a statement.
“Congrats to the @cursor_ai team on the launch of Composer 2! We are proud to see Kimi-k2.5 provide the foundation. (…) Cursor accesses Kimi-k2.5 via Fireworks AI hosted RL and inference platform as part of an authorized commercial partnership.”
The original accusatory post was deleted, and it was confirmed that there was a formal commercial agreement. Cursor co‑founder Aman Sanger also acknowledged that “not naming the base model in the blog was a mistake,” promising to disclose it from the outset going forward.
What Cursor’s “in‑house model” really is
On HN, many comments noted, “Composer 1 is Qwen (Alibaba), Composer 2 is Kimi (Moonshot AI), and the IDE is based on VS Code.” The picture that emerged is not of a company with a $29.3B valuation doing its own pre‑training, but of taking Chinese open‑weights models and applying domain‑specific RL before shipping them.
As for the attribution clause, it was not revealed proactively by Cursor. An external developer found the model name in an API response, and a Moonshot AI engineer called it out—only then did the issue surface. A commercial contract did exist, but disclosure to users likely wouldn’t have happened without community pressure.