logoalt Hacker News

malisperyesterday at 9:57 PM4 repliesview on HN

My approach has changed throughout the course of this project. Throughout most of the project, we were working off of a c2rust translation of Postgres to Rust. That gave us a bunch of Rust code that was unsafe but did pass the Postgres test suite and was fast. c2rust had split Postgres into 1000 different crates. We then went through 1 by 1 and rewrote each crate into idiomatic rust.

This naturally lended itself to a suite of skills to describe how to rewrite a crate from unsafe rust to idiomatic rust. The main three skills I had were 1) a skill for identifying the next crates to port 2) a skill for rewriting a crate and 3) a skill for auditing a crate and making sure there weren't any outstanding issues.

My exact approach for managing subagents changed throughout the project. Initially I was doing parallel coding sessions with Conductor. After dynamic workflows came out, I used that as it was really easy to spin up dozens of parallel subagents and manage it from a single orchestrator. Over time I switched from using dynamic workflows to manually spinning up subagents from a central agent. The issue with dynamic workflows is they waterfall. Each step needs to finish before the next one starts. By manually spinning up subagents, I could have claude start porting a new crate as soon as a prior subagent finished.


Replies

ismailmajtoday at 3:05 AM

I think I would be horrified looking at your Claude API bill.

KolmogorovComptoday at 11:24 AM

Thanks for the insights, are the skills available anywhere?

krashidovyesterday at 10:35 PM

Did you hand write the skills or did you have an agent audit your work and infer patterns?

show 1 reply
solomatovyesterday at 10:28 PM

Thanks for sharing.