What they did
Karatas, a former basketball player and backend engineer, signed up for a 70.3 thirty days out with no endurance background and a healing Achilles. Instead of chatting, he kept the project state in files inside a Claude Project with memory: an index read at the start of every session, a decision log where settled questions are marked as not to be reopened, and topic files for program, health, nutrition and data. Claude went from reading dictated numbers to pulling activities through a Strava connector, parsing exported .fit files with a parser it wrote, and finally reading every second of each recording through a Garmin MCP server on his Mac, all logged to one Excel file. Three scheduled tasks ran a morning summary, an evening summary and a Sunday review, appended to the log and moved Trello cards into Done, Has Important Notes or Missed using triggers agreed in advance. Ideas he emailed to the Trello inbox were researched and answered. Program changes waited for him to say apply.
How it went
He finished the race in 6:32:50. The swim, which a month earlier he could not do without stopping, came in at 2:30 per 100 m with no stops. A derived metric, the share of ground contact on the left foot, became the gate for returning to running after the Achilles flared. That flare was partly the loop's fault: Claude suggested raising cadence with no limit, he went from 142 to 164 to 168 in a week, and lost about a week plus a three week ramp. Patching the plan repeatedly around the injury made it incoherent until he asked Claude to review its own edits. The diet was rewritten five times.
Worth knowing
The loop had no rate limits until the injury forced them: one new load per week and cadence changes of at most 5 percent. In a field you do not know you only catch the model's mistakes after the fact, so keep a doctor in the loop. Big raw files were saved to disk and parsed in Python rather than read in the chat.