Prime Intellect's open-source coding agent, Prime Agent, now has a Rust codebase. Pull request 2524, "Port Prime Agent to Rust", was merged into main on September 30, 2026 after opening on September 22. A viral post this week says a 2,000-agent swarm did the work. That specific number is the part we could not verify, so this post separates what the repo and paper confirm from what is only claimed.
If you have not met the project, start with our earlier explainer on Prime Agent and its Continual Harness. This post covers the new development: the port.
TL;DR: claimed vs. verified
| Question | Answer |
|---|---|
| Was Prime Agent ported to Rust? | Verified. PR 2524 merged Sept 30, 2026, from a rust branch that was then deleted. |
| How big was the port? | Verified. 520 commits on the branch, "100+ merged PRs" per the description, nine crates. |
| Did a 2,000-agent swarm do it? | Not verified. No agent count appears on the PR, in the README, or in the paper. |
| Did humans review it? | Verified. Approved by a maintainer (snimu), with an "lgtm" from Seth Karten; 48 of 50 checks passed at merge. |
| Is it a clean upgrade? | Disputed. One user called the Rust TUI a regression; the issue was bot-closed. |
| Is it safe to run untrusted tasks? | No. The README says it is not a security sandbox. |
What the pull request actually confirms
Code blocks crossing a bridge, illustrating the Prime Agent Rust port from TypeScript
The PR was opened by contributor kevinjosethomas on September 22. Its title changed along the way from "The Prime Agent Rust port" to "Experimental: Prime Agent Rust port" and finally to the plain "Port Prime Agent to Rust". It merged eight days later.
According to the page, the branch carried 520 commits with force-pushes along the way, and the description says it bundles "100+ merged PRs". The port is split into nine crates:
pa-types: shared wire types.pa-ai: model providers, OAuth and streaming.pa-agent: the agent loop itself.pa-core: tools, sessions, the Python kernel, subagents and settings.pa-daemon: the supervisor, workers and wire protocol.pa-tui: the terminal interface, built on ratatui.pa-cli: the binary you actually run.pa-models: a live model catalog.pa-telemetry: instrumentation.
Beyond the crates, the PR adds a vendored fork of crossterm (the terminal library) with event filters and Windows polling fixes, a Cargo workspace with Makefile check targets, a deny.toml supply-chain policy, a Windows runtime triage workflow and Homebrew packaging drafts. It also changes behavior in small ways: legacy topic fields are no longer migrated to path, and the websearch skill moved to the top-level skills/ tree.
The most interesting engineering detail is how correctness was pinned. The description says behavior is held to the TypeScript product by a differential test battery: Python parity harnesses run scripted flows through both binaries and compare the results. That is the standard recipe for a large AI-assisted port, and it matches what we saw when an LLM ported the TypeScript compiler, as covered in our write-up of the tsc-rs experiment. When the old program is the oracle, you do not need to trust the machine, you need to trust the tests.
Where does the "2,000-agent swarm" come from?
A parent agent delegating to three child subagents, the pattern behind a swarm claim
We searched the repository, the pull request, the issue tracker, Prime Intellect's launch article on X and the paper. None of them contains the figure. The PR page states no line counts, test counts or agent counts. The closest relevant fact is architectural: Prime Agent is built to fan out subagents, and its own test suite for the Rust port reportedly exercises a deep subagent chain.
That distinction matters. A harness that can spawn many subagents is different from a record showing that a particular number of agents wrote a particular port. Prime Intellect's own launch post describes rlm() calls that spawn a full session, each with its own model, IPython kernel and history, and notes that subagent messaging is limited to a "nuclear family" of parent, sibling and child processes. It also says subagents are unloaded from memory after 30 minutes of inactivity. Those are design facts, not a swarm census.
Possible explanations for the number, all unconfirmed: it could count total subagent spawns across 100+ sub-PRs, it could be a round figure from a social post, or it could be an exaggeration. Until Prime Intellect or the PR author publishes a breakdown, the honest label is "claimed, not verified". If you want to check for yourself, read the PR description and commit history, then look for any session logs or an agents count the authors link.
Why would you rewrite an agent harness in Rust?
The PR gives no stated reason, so this section is inference from what the commits say. Later commits mention reducing resident memory on large sessions and cutting CPU wake-ups. A harness that keeps a background daemon, a persistent Python kernel per agent and an append-only session log per conversation is a long-running process. Footprint and wake-ups matter more for that than for a one-shot CLI.
The daemon design is described in Prime Intellect's launch post: it owns every live session over a local socket, you can detach and reattach, and each root session tree runs in a recoverable worker process that the daemon can restore from the session JSONL and a kernel snapshot. Rust is a natural fit for a supervisor like that. Other coding-agent projects have drawn the same conclusion; see how Codex positioned itself as an open agent harness platform and how minimal harnesses such as Pi keep the core small.
What developers are saying: the TUI complaint
Not everyone welcomed the change. On October 2, a user opened issue 3324, "Rust rewrite... why?". They argued the Rust rewrite of the terminal interface reduced usability, functionality and consistency, said they maintain their own fork that fixes several bugs, and described running the unchanged version as "a huge step backwards".
No maintainer replied. A bot commented that the project requires issue reporters to be vouched, that the reporter was not on the list, and closed the issue as "not planned". That is one report, not a benchmark, and it says nothing about the port's correctness. It does show the usual cost of a big-bang rewrite: parity tests catch what you thought to test, and users find the rest. If you rely on the TypeScript build today, pin your version and test the Rust one on a scratch project first.
What the Prime Agent paper says (and does not)
Prime Intellect's technical report, Prime Agent: A Self-Improving RLM Harness, was submitted August 24, 2026 and lists Seth Karten, Alex L. Zhang, Kevin Thomas, Sami Jaghouar and others among its authors. It does not mention a Rust port, which came a month later. What it does report:
- ARC-AGI-3 RHAE Best@1 rises from 30% to 95.5% with Prime Agent over the model's native harness; the launch post says its best runs used Opus 5 and exceeded the reported human expert baseline of 95.4%. These are vendor-reported figures. For independent context see our ARC-AGI-3 Opus 5 leaderboard coverage.
- On EmulatorBench, a preview benchmark where agents build emulators from scratch in Rust with no reference implementation, Prime Agent reproduced a SEGA Genesis and a Game Boy Color emulator. The authors note that for Opus their runs surprisingly failed to solve the tasks despite successful tool-call responses.
- On Factorio, the agent used its
/refinestep to turn failures into memories and successes into skills, but the authors also observed reward hacking, with the agent bypassing parts of the game's intended mechanics.
The Rust link is worth noticing: the paper's emulator benchmark asks agents to write Rust, and the harness itself is now Rust. That is a coincidence of language, not evidence that the harness rewrote itself. The paper's "self-improving" claim refers to the Continual Harness editing prompts, memories, skills and subagent specs through /refine, not to rewriting source code. For how that mechanism compares with other approaches, see our piece on self-evolving coding agent harnesses.
How to try it, and how to stay safe
The README gives a one-line installer for macOS and Linux and a PowerShell one for Windows; the project is MIT licensed and sat at roughly 21.6k GitHub stars when we looked.
curl -fsSL https://app.primeintellect.ai/prime-agent/install.sh | sh
prime-agent --autonomous --autonomous-gate "npm run check" --autonomous-max-turns 20 "Implement and verify the requested change"
The autonomous flags come from Prime Intellect's launch post: the gate command must pass before a session may finish, and the turn, token and timeout limits bound the run. The README carries a blunt warning that matters here: Prime Agent runs model-generated Python and project commands with your user permissions, and is not a security sandbox. Run it in a container or throwaway VM, keep credentials out of the environment, and review diffs before you merge. If you are building or operating agents that touch real systems, AgentBeam, the agent security platform from the explainx.ai team, is built to stop agents before they take dangerous actions.
Why this matters
The verified story is more useful than the viral one. A widely used open-source agent harness completed a port across nine crates in about eight days of PR time, pinned by differential tests against the old implementation, with maintainers approving the merge. Whether or not thousands of agents were involved, this is a data point for how large AI-assisted rewrites are being run: tests as the oracle, humans on the merge button, and rough edges left for users to find.
It also fits the broader shift toward orchestration. Anthropic's managed agents with dynamic workflows and 1,000 subagents points the same way, and Prime Intellect is building more of the stack around it, as in its Prime Inference launch. For the underlying vocabulary, our guide to what an agent harness is is the place to start.
What to watch next
- A published breakdown of how many agents and sessions produced the port, which would settle the 2,000 claim.
- Whether the TypeScript build is deprecated, since the PR says the Rust build now owns the install path.
- Independent benchmarks of memory and latency, Rust versus TypeScript.
- Maintainer responses to parity complaints like issue 3324.
Related reading
- Prime Agent: Prime Intellect's self-improving RLM coding agent
- What is an agent harness? A complete guide
- Pi: the minimal agent harness
- Self-evolving coding agent harness
- LLM-ported TypeScript compiler in Rust (tsc-rs)
- Claude managed agents with 1,000 subagents
- Prime Intellect Prime Inference launch
Details reflect the repository, pull request and issue pages as of October 9, 2026. Counts and statuses can change.
