Been using a mix of ChatGPT/Claude/Gemini to help me put together a workout plan last couple years. I keep getting frustrated that those tools have zero context on my goals / preferences etc, and that I have to prompt them 2-3 times to get something I like when all I want to do is workout. The various chatbots don't know my goals, my current weights, what I did last week, or that my right shoulder has been bothering me.
So I built IronClaude - an AI fitness coach that runs on Telegram, uses ClaudeCode as the brain, and stores all your data as markdown files in a private GitHub repo you own.
How it works:
- Voice-first logging. At the gym, I send a voice note: "Bench press, 185 for 5, 5, 4 at RPE 8." It transcribes, logs, checks for PRs, and responds with coaching context. No forms, no typing between sets. No complex UI to learn.
- Context that persists. Your workout history, weekly plans, personal records, and profile all live in a GitHub repo as plain markdown and YAML. When the agent runs, it has your full training history loaded. When the agent runs, it has your full training history loaded — it knows your bench went from 135 to 225 over 6 months because it can read the logs. Everything is human-readable markdown in a private GitHub repo. No vendor lock-in, no proprietary database. git log is your audit trail.
- You can ask questions. "Why did you program front squats instead of back squats?" and it'll explain, based on your profile, your injury notes, and last week's volume to reason about. "What should I do next?" works mid-workout. It's a conversation, not a one-shot prompt.
- Weekly planning is interactive. Sunday evening, the bot asks how you're feeling, whether your schedule changed, what you want to focus on. Then it builds a plan with progressive overload logic, accounting for your recovery data if you have a Whoop connected.
Tech stack: Claude Code, Telegram Bot API, GitHub API for storage, Gemini for voice transcription, Fly.io for hosting (~$5/month).
Setup: `git clone && npm install && npm run setup`. A wizard runs that collects API keys, creates your private data repo, runs an AI onboarding conversation to build your athlete profile, and deploys to Fly.io.
Give it a go!
A note on the approach: I built this partly to explore using Claude Code as a general-purpose agent, not just a coding tool. The coaching logic, cron scheduling, integrations, and data storage are all Claude operating autonomously with a file system as its memory. It's not the most optimized architecture, but the pattern of "agent + file system = stateful app" has worked incredibly well.
This will never replace a real coach who can watch your form in real time and give you cues on the spot. But it has genuinely helped me get excellent, structured workouts in — with progressive overload, deload weeks, and actual continuity between sessions.
mosnicholas•1h ago
So I built IronClaude - an AI fitness coach that runs on Telegram, uses ClaudeCode as the brain, and stores all your data as markdown files in a private GitHub repo you own.
How it works:
- Voice-first logging. At the gym, I send a voice note: "Bench press, 185 for 5, 5, 4 at RPE 8." It transcribes, logs, checks for PRs, and responds with coaching context. No forms, no typing between sets. No complex UI to learn.
- Context that persists. Your workout history, weekly plans, personal records, and profile all live in a GitHub repo as plain markdown and YAML. When the agent runs, it has your full training history loaded. When the agent runs, it has your full training history loaded — it knows your bench went from 135 to 225 over 6 months because it can read the logs. Everything is human-readable markdown in a private GitHub repo. No vendor lock-in, no proprietary database. git log is your audit trail.
- You can ask questions. "Why did you program front squats instead of back squats?" and it'll explain, based on your profile, your injury notes, and last week's volume to reason about. "What should I do next?" works mid-workout. It's a conversation, not a one-shot prompt.
- Weekly planning is interactive. Sunday evening, the bot asks how you're feeling, whether your schedule changed, what you want to focus on. Then it builds a plan with progressive overload logic, accounting for your recovery data if you have a Whoop connected.
Tech stack: Claude Code, Telegram Bot API, GitHub API for storage, Gemini for voice transcription, Fly.io for hosting (~$5/month).
Setup: `git clone && npm install && npm run setup`. A wizard runs that collects API keys, creates your private data repo, runs an AI onboarding conversation to build your athlete profile, and deploys to Fly.io.
Give it a go!
A note on the approach: I built this partly to explore using Claude Code as a general-purpose agent, not just a coding tool. The coaching logic, cron scheduling, integrations, and data storage are all Claude operating autonomously with a file system as its memory. It's not the most optimized architecture, but the pattern of "agent + file system = stateful app" has worked incredibly well.
This will never replace a real coach who can watch your form in real time and give you cues on the spot. But it has genuinely helped me get excellent, structured workouts in — with progressive overload, deload weeks, and actual continuity between sessions.