What’s new in FitHarness — features, improvements, and fixes as they ship.
Conditioning sessions done outside your plan are now properly reflected in your day status instead of being ignored.
Fixed a bug where the home dashboard, page header, and training page could disagree about whether a day was skipped, trained, or completed. They now always show the same status.
The macro-trends chart is now clickable, so you can jump straight to a specific day's details.
Fixed an issue where changing your nutrition target retroactively changed how past days looked on your charts. Historical days now show percent-of-target and coloring based on the target that was active that day.
Your calorie recommendations can now adapt based on how your actual weight trend compares to what you're eating, giving more personalized targets over time instead of relying on estimates alone.
Circuit-style workouts with loaded movements now correctly count working sets and give proper muscle-group credit, so your stats and program recommendations reflect that work.
Training-volume and calorie-intake bars on your home dashboard now link straight to that day's workout or nutrition log.
You can now log non-structured physical activity (light, moderate, or heavy) with duration and optional calories. It counts toward your energy and makes the day a training day for macros, without affecting your lifting stats.
The weight-trend insight now shows the actual number of days it covers instead of always saying 30 days, so it stays accurate when you have less history.
Your recommended working weight now appears on the Today dashboard session card too, plus a helpful hint the first time you see it.
Logged activity now appears as its own summary on the Progress page, and activity-only periods no longer get mislabeled as "no training logged."
The stats page and the home page teaser now stay up even if there's a temporary issue loading the underlying data, instead of failing to load.
Top movements now show up correctly by matching logged exercises to the library even when they weren't linked by an exact ID.
Added a public stats page showing aggregate activity across training, conditioning, nutrition, recovery, and the movement library, plus a teaser with key numbers on the home page and footer links to see more.
If you skip your prescribed session but log a different workout that day, it's now correctly treated as a training day: your dashboard shows what you actually did, and your macros stay at training levels instead of dropping to rest-day carbs.
The link to this changelog is now shown in the signed-in app footer alongside Terms, Privacy, and Disclaimer, not just when logged out.
Coaching and account emails now carry consistent branding; invites can be resent or revoked; fixed a problem that could break email attachments.
Lifts can carry a style modifier like tempo, paused, or alternating, so programs say exactly how a movement should be performed.
When a coach invites a client, the coach can set up the training plan on their behalf, and both sides are notified when it's ready.
Admins can send a written announcement to all users, so meaningful updates reach people directly.
The exercise library gained endurance movements and a dedicated skill slot for a wider range of work.
Programs for far-off events now build a proper base phase, and generic slots rotate across the whole week so the same lift doesn't repeat.
A skipped session shows as a clear rest-day state instead of looking unfinished, and sessions can be permanently deleted.
Trainer Mode lets a coach invite clients, view and update their training, and see an aggregated roster with per-client trends.
A client invited by a coach gets full access while the relationship is active and returns to their own plan if it ends.
Admins can grant free access to an existing account, and select coaches can have an uncapped client roster.
Behind-the-scenes fixes tightened data isolation between accounts and strengthened request handling.
A 30-day trial with no card required, converting to a monthly subscription, with clear terms, privacy, and disclaimer pages.
Exercises can be grouped as supersets across planning, logging, and the dashboard.
Training load counts every kind of effort — strength, conditioning, bodyweight — and gives cardio its own energy view.
New line charts track macros over time across nutrition, progress, and home, with time-window filtering.
Metcons and circuits are a proper planned part of a session with live tracking, backed by 39 new functional movements.
Meals and workouts record the time of day, powering dashboards of when you train and when your calories land.
Injuries can load a movement differently rather than removing it, with an enforced limit mode and named affected slots.
New users can add a companion skill during setup for extra coaching context.
Setup now correctly explains the connector is added from a computer, with phone-aware onboarding.
Programs are authored in conversation with Claude and validated by the server, so plans build quickly around your real context.
Admins can issue, list, and revoke invitations directly through the connector.
The public site gained a real hero, clear hierarchy, and a proper share card.
Building a program is resilient to slow generation, written all at once so it can't half-save, and undoable.
Blocks are built around your goals, key lifts, injuries, and history, with event-aware periodization.
The product moved to its own domain, with the previous address redirecting.
FitHarness became a multi-user product with conversational onboarding where Claude sets up your training and nutrition.
Export your full history and permanently delete your account whenever you choose.
An admin console with per-user limits, invite handling, and full control of the shared exercise library.
Duplicate meals are refused with an easy override, near-identical pantry items merge, and the alcohol ring appears on home.
Nutrition targets can be drafted for you as a starting point you can adjust.
Set goals tied to a sport or upcoming event, and your program points toward it.