Skip to content

How treams-rs was built

AI coding agents wrote treams-rs in 16 working days. The port itself took 29 hours.

  • 233 messages from the human, about 4,900 words
  • 25 conversations
  • about 920 helper agents

The chart of the work per day needs JavaScript. The table below has the same numbers.

One column per day; quiet days are compressed.

Show the days as a table
Day Phase Hours with agents working Messages from the human Conversations
Day 1 The port 3.5 14 1
Day 2 The port 20.3 10 2
Day 3 Beyond the port 12.0 36 1
Days 4–9 6 quiet days – – –
Day 10 Finishing the core 3.1 16 2
Day 11 Finishing the core 4.7 8 2
Day 12 1 quiet day – – –
Day 13 Second opinions and proofs 0.9 2 1
Day 14 1 quiet day – – –
Day 15 Second opinions and proofs 2.0 10 1
Day 16 Second opinions and proofs 1.0 2 1
Day 17 Improve, then trim 12.8 5 1
Day 18 Improve, then trim 6.7 0 1
Day 19 Improve, then trim 16.6 1 1
Day 20 Improve, then trim 24.0 4 1
Day 21 Improve, then trim 18.9 8 1
Day 22 Ready for other people 24.0 14 3
Day 23 Ready for other people 24.0 15 7
Day 24 Release 22.9 78 14
Day 25 Release 3.3 10 4

The port

Codex first measured treams: about 22,700 lines of Python and Cython. Fifteen minutes in, the brief became a full rewrite in Rust, soon extended to strong tests and the best possible speed and memory use. One agent did the work alone. Asked about slowdowns, it reported one case running 12% slower than treams.

ok that's unacceptable. treams-rs must make no compromises on performance. fix that, and then finish the rewrite

Human, day 2 · In the conversation

The agent fixed the slowdown and had ported every treams feature on its list.

2 conversations · Codex app · gpt-6-astra, effort level high, then xhigh · no helper agents · 50 changes

Beyond the port

The brief grew to include a browser version, GPU calculations, connections to JAX and PyTorch, reproductions of published results, and benchmark plots against treams, for speed and for accuracy:

we also need some convincing benchmark plots regarding accuracy to completely overwhelm any "oh but this ai slop this cant possibly be correct"

Human, day 3 · In the conversation

Checks against independent high-precision values showed treams-rs returning zero Mie coefficients for a large metallic sphere. A helper agent's fix reached treams-rs on day 10.

1 conversation · Codex app · gpt-6-astra, effort level ultra · 61 helper agents · 15 changes

Finishing the core

Two helper agents on gpt-5.6-luna ran the long correctness and speed checks, on one condition:

make sure NOT to let the luna agent make any judgement calls though

Human, day 10 · In the conversation

On Linux, all 615 correctness cases passed, and treams-rs was faster than treams 0.4.5 in 664 timed comparisons, by a median 5.1× over 527 cases; four other cases stayed slower. After the Python interface was redesigned, fresh agents with only the installed package passed 118 of 120 attempts at ten test tasks, up from 110.

3 conversations · Codex in a terminal · gpt-6-astra, effort level medium, high and xhigh · 9 helper agents, 2 of them on gpt-5.6-luna, effort level medium · 10 changes

Second opinions and proofs

Claude Code reviewed treams-rs and judged its numerical core and checks strong. In a second conversation it wrote models of six routines in Lean, a language for computer-checked proofs, and proved properties over exact arithmetic; one proof exposed a bug that could drop diffraction orders exactly on the cutoff.

ok so bottom line here? did you implement anything useful or was this just an experiment

Human, day 16 · In the conversation

The agent's answer: the bug fix was the clear gain; the rest mostly added confidence.

2 conversations · Claude Code · claude-opus-5-5, effort level xhigh · 1 helper agent · 4 changes

Improve, then trim

The task was to improve treams-rs while keeping every feature and keeping results equal up to rounding. The agent later reported that the code had grown by about 30,000 lines, mostly tests and reference data.

ok that seems like too much. without regressing performance or correctness, cut the code and make it more maintainable

Human, day 21 · In the conversation

The cut made the code about 4,000 lines shorter; every numerical function gave identical results at the same speed.

1 conversation · Claude Code in the cloud · claude-opus-5-5, effort level xhigh with ultracode · about 240 helper agents, about 230 of them in 34 planned groups · part of the 8 changes condensed on day 24

Ready for other people

On day 21 the goal became publishing treams-rs, with code that others can read and maintain. On day 22 the lead agent started two conversations, for the Python package and the documentation.

i also want us to better utilize other sessions. if we are constrained by hardware then just start new sessions and coordinate with them

Human, day 22 · In the conversation

Three more conversations in the cloud, started by hand on day 23, took on separate tasks; one rewrote a routine from published formulas so that the MIT license alone applies.

7 conversations, 6 of them new · Claude Code in the cloud and the Codex app · claude-opus-5-5, effort level xhigh, also with ultracode; gpt-6-astra, effort level xhigh · about 380 helper agents, about 370 of them in 72 planned groups · part of the 8 changes condensed on day 24

Release

On day 24 the work in the cloud stopped on request; four conversations left written handoff notes. Codex, running locally, brought the remaining lines of work together, removed personal details and condensed the history of changes. A plain-language rule, first set for the documentation on day 22, was extended to all text:

also make sure all language is objective, concise, jargon-free (especially programming. physics is ok) approachable but not verbose. basically respect the readers’ time, no slop grenades

Human, day 24 · In the conversation

After final reviews, version 0.1.0 was published; version 0.1.1, with faster calculations, followed on day 25.

17 conversations, 11 of them new · Codex and Claude Code · claude-opus-5-5, effort level xhigh with ultracode; gpt-6-astra, effort level xhigh, ultra and max · about 230 helper agents, about 100 of them in 18 planned groups · 30 changes, 8 of them condensed from days 17–24

How the work was split

  • Alone. One agent did the port. See it in a conversation
  • With helper agents. An agent handed parts of the work to helper agents, some of which started their own. See it in a conversation
  • Planned groups. Helper agents worked in stages from a written plan, often: make a change, look for faults, fix them. See it in a conversation
  • Parallel conversations. One conversation started two others and briefed them in writing; they reported back through files in the repository. See it on the map

All conversations, day by day

Models and effort levels

The effort level sets how long the model may reason before it answers.

Tool Model Effort levels Conversations Phases
Codex gpt-6-astra medium, high, xhigh, ultra, max 15 The port; Beyond the port; Finishing the core; Ready for other people; Release
Claude Code claude-opus-5-5 xhigh, also with ultracode 10 Second opinions and proofs; Improve, then trim; Ready for other people; Release
Codex gpt-5.6-luna medium – Finishing the core (two helper agents)

Ways of working

Running and judging kept apart. The helper agents that ran the long checks made no judgements; the lead agent judged the results. In the conversation

Faults looked for on purpose. Separate agents looked for faults in the work from day 3, and in most changes from day 17. In the conversation

Evidence a skeptic would accept. Results were checked against treams, high-precision values, physical laws, published results and proofs; slower or failed cases were reported, not dropped. In the conversation

Written handoffs. When work was paused or handed on, a written note of its state went with it. In the conversation

What is left out

Command output, file contents, the agents' reasoning and personal details are left out, as are six conversations that were not part of building treams-rs. About the records has the details.

Messages Conversations