- Cursor attempted to make a browser from scratch: https://cursor.com/blog/scaling-agents
- Anthropic attempted to make a C Compiler: https://www.anthropic.com/engineering/building-c-compiler
A few weeks ago I posted xmloxide, an agent-made Rust replacement for libxml2 made by pointing Claude code at the libxml2 test suite: https://news.ycombinator.com/item?id=47201816
curl is arguably the most widely deployed software in the world. It's 180,000 lines of C with a history of memory safety CVEs. The curl project itself tried to address this by adding a rust-based HTTP backend using hyper, but after four years of work, they abandoned the effort in December 2024. Daniel Stenberg wrote that, "there simply were no users asking for it and there were almost no developers interested or knowledgeable enough to work on it".
- Daniel Stenberg's blog post on dropping hyper: https://daniel.haxx.se/blog/2024/12/21/dropping-hyper/
- Hacker News discussion: https://news.ycombinator.com/item?id=42478911
The key insight from my xmloxide work was that an agent can iterate very quickly when given a comprehensive test suite as a specification. The majority of the development for urlx was done in two ~16 hour long iteration loops where claude code would implement some features, run the tests, and then plan what to do next. Towards then end I took a more manual approach telling it to analyze the remaining failures, make issues, and submit them to teams of subagents to fix.
urlx now passes 1,300 of 1,300 applicable curl tests (100% pass rate). It supports HTTP/1.0-1.1, HTTP/2, HTTP/3 (QUIC), FTP/FTPS, SFTP/SCP, WebSocket, SMTP, IMAP, POP3, MQTT, DICT, TFTP, Gopher — with 261 CLI flags, authentication (Basic, Digest, NTLMv2, SCRAM-SHA-256, AWS SigV4), cookies, HSTS, proxy support (HTTP/SOCKS4/5/HTTPS tunnel), and a libcurl-compatible C ABI. There are some features still left to do that I might come back to.
- GitHub: https://github.com/jonwiggins/urlx
- crates.io: https://crates.io/crates/urlx-cli
- Install: cargo install urlx-cli or brew install jonwiggins/tap/urlx
The same lesson from xmloxide applies here: when a project has a good test suite, an agent can use it as a specification and converge on a working implementation surprisingly fast. curl's test suite turned out to be an excellent spec, the hard part was already done by the curl contributors over 25 years.
I don't expect anyone to replace curl with this, but I think there's something worth paying attention to in the pattern: take a well-tested project, point an agent at the test suite, and get a fast reimplementation. I think this also points to a need to adopt test-driven-development when using AI coding tools, as it allows them to iterate autonomously before needing human input. I also think this changes the economics of software development, what used to be a multi-year, multi-engineer commitment is becoming a task you can meaningfully attempt in days by setting up an agent to rapidly iterate on it alone.