Goal-centered strength and conditioning
Pick the number. Pick the date. Zero in.
Zeroing a sight means adjusting it until the shot lands where you aim. Zeroed does that for your training. Your goals are the aim. Every session is a shot. The coach reads where they land and adjusts the plan, and you approve each move on your phone.
Runs in the browser and installs to your home screen. Plans with Claude through the Zeroed connector. iPhone app in progress.
- 1 Zeroed
- 2 On course
- 1 Off course
- 1 Needs a test
Example goals. Each goal owns a sector, and its points close on the center as it nears the target. Color says where it stands.
Aim, shoot, adjust
-
01 Aim
A goal is a number and a date: Strict press 130 lb by Nov 27. Everything else answers to it.
-
02 Shoot
Every session is a shot. Log a set that matches a goal and the goal moves on its own.
-
03 Adjust
Claude reads where the shots land and proposes a move, with its reason. You accept it on your phone.
The aim
Every goal says where it stands.
Not a progress bar to squint at. Zeroed takes your last three real measurements, projects them to the due date, and compares that with the target. There are four answers, and only one of them asks you to act.
- Zeroed
- You hit the number. The brackets close and the goal turns confirmed green.
- On course
- The forecast reaches the target by the date. Plain text, no color. Most goals, most days.
- Off course
- The forecast misses, however far away the date is. Signal yellow, because it's the one to act on.
- Needs a test
- No recent real measurement, so the number is unproven. Amber and dashed until you test it.
Each state has its own shape as well: a closed square, a dot, a diamond, a dashed ring. None of them depends on telling colors apart.
The goal page
Tap a goal. See the goal.
Every goal has a page of its own. It answers the question first, will you make it, and then shows its working.
- History and a forecast. Your real measurements, then a cone out to the due date. Off course means the cone misses the target.
- What feeds it. The lane that trains it, that lane's rule, and the sessions this week that move it.
- The coach's moves, with reasons. Every change that touched this goal, why it was made, and whether Claude or the engine made it.
- A test when it needs one. Logging a measurement is a button on the page, and the main button only when the goal needs a test.
Lanes
Color is status. Shape is lane.
Lanes are how goals get trained. Each lane has its own progression rule and serves the goals bound to it, and one session can run several. Lanes are told apart by glyph and name, which leaves color free to mean one thing: where a goal stands.
Lifting
tm_wave · rpe_autoreg
Bench rides a training-max wave. Press adds 5 lb only when every set lands at or under the target RPE; otherwise it holds.
Conditioning
time_interval · contacts
Alactic rounds build 8, 10, 12. Jump contacts stay inside 40 to 80 a week.
Mobility
measurement
Range you can measure, like hip internal rotation, tested on both sides every two weeks.
Hypertrophy
double_progression
Load goes up once every set reaches the top of the rep range.
Your sport
manual
Basketball, a run club, a mat class. The coach sets its values. The sport itself stays yours.
Sessions and sets
Every set is evidence.
Each goal names the metric that moves it. When a logged set matches, the goal moves on its own. You never retype a number into a goals screen.
Beat your best mid-session and the goal on that exercise ticks up. Reach the target and it turns green. The big moment waits for the finish line, where Goals moved shows what the session changed.
Goal source what moves it
- top_set:Strict Press
- Heaviest completed set
- e1rm:Bench Press
- Best estimated 1RM in a session
- distance:Broad Jump
- Best rep
- rounds:Alactic Bike
- Completed rounds
- test:Hip IR
- Measured by hand, on a cadence
The Claude connector
Claude adjusts the sight. You approve on your phone.
Connect Zeroed to Claude and plan in conversation. Claude reads where you stand against each goal, the lanes and sessions that feed it, and what you've logged. It proposes a move with its reason. The move shows up in the app on the goal it serves, and you accept it or ask why.
- Goals in your own words. Tell Claude what you're after and it sets the goal: a number, a date, and the metric that moves it.
- Every move keeps its reason. It sits on the goal and in Coach, so a press that held comes with the why.
- Claude proposes. The engine writes. Accepting runs the same engine the app uses, so Claude and your phone never disagree on a number. Nothing changes until you say yes.
Connect Claude
claude.ai and Claude Desktop, on Pro or Max. About two minutes.
Claude's Request headers option isn't on every account yet. On Team or Enterprise plans, an Owner adds the connector under Organization settings → Connectors.
Already connected? Zeroed's server has a new address. Edit the Zeroed connector in Claude and set its URL to https://zeroed.madeforgreatnesslabs.com/functions/v1/mcp. Your token keeps working.
- In Zeroed, open You → Claude connector. Name a token (say, “Claude”), tap Create, then Copy URL + token. It's shown once; Zeroed only keeps a hash.
- In Claude: Customize → Connectors → + Add → Add custom connector.
- Name it Zeroed, paste the server URL you copied from the app, and hit Continue.
- Authentication: No sign in.
- Under Request headers, add header name
authorizationwith valueBearer YOUR_ZEROED_TOKEN, then Add. - Enable Zeroed in a chat and ask: “Where do I stand on my goals?”
Alternative: Claude Desktop config file
Needs Node.js. In Claude Desktop open Settings → Developer → Edit Config and add the server below. Then fully quit Claude Desktop and reopen it.
{
"mcpServers": {
"zeroed": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://zeroed.madeforgreatnesslabs.com/functions/v1/mcp",
"--header", "Authorization: Bearer YOUR_ZEROED_TOKEN"
]
}
}
}
Revoke a token any time from the same screen. Tokens are rate-limited per key. Never paste a real token anywhere public.
Under every goal
The engine does the math. Every number shows it.
Goals sit on top of the same training engine as before. It's built for the gym floor: fast with a chalked thumb, fine with no signal.
-
Today's number, with its working
Every load carries its reason line, like 235 = 94% of TM 250. The training max comes off the RPE chart, not a guess. Tap Why for the rest.
-
Back-offs follow the top set
A point heavy takes 5% off the back-offs. A point light adds 2.5% for upper body, 5% for lower.
-
A check-in that moves numbers
Sleep, readiness, both knees. Optional and one line long, and it changes today's loads instead of just being filed.
-
Intervals on a clock you can read
Tabata, EMOM, or 6 × 30s on / 90s off, run full screen. The phase owns the color, with a sound cue on every change.
-
One tap repeats a set
The check carries your last numbers into the empty fields, and the dimmed placeholder shows exactly what it will log.
-
Logs with no signal
A finished session saves on your phone first, counts on your week at once, and syncs when you're back.
Set the aim.
Tell Zeroed what you're training for, in your own words. Your first read takes about 30 seconds, then your first session. No password: a code lands in your inbox.
Open ZeroedWorks in any modern browser; add it to your home screen. iPhone app in progress.