Pacevera Training decision engine
Install for Claude Desktop

Adaptive training, made accountable

Know what to do today.

Pacevera turns your training evidence into an explainable change to the workout you already planned. Keep your AI coach. Add a decision layer.

Pacevera runs on your own machine, inside the AI you already use. No account. No health history handed over.

Local-first decision engine · evidence stays in your control One file, drag into Claude Desktop · no account, no API key, no config field
Today’s brief · engine output Evidence checked

Morning readiness

Today’s Brief

Adjust today
Planned session · scheduled Threshold Intervals 60 min · High
Today’s session Moderate run 60 min · Moderate
Readiness
52
Sleep
5h 00m
Leg fatigue
8 / 100
Training load
1.3h this week

Why this changed: Readiness 52 is below 60, so intensity comes down. At moderate intensity the session is no longer “Threshold Intervals”; it becomes “Moderate run”. RULE EVD-R-002

Live local Decision output when pacevera-home-live.js is present; otherwise this page shows reviewed engine scenarios.

Five decision types, one engine. Keep is a decision too — checked, and cleared to execute.

One decision, end to end

One person, one day, one decision.

The brief above is the last step of a chain. Here is the whole of it — what arrived, what it computed, what it decided, what changed in the plan, and why. These are the values this page loaded, not an illustration: they come from the same engine output the brief is rendered from, so if the engine changes its mind, this section changes with it.

01EvidenceWhat the caller supplied. No account, no fetch.
sourcesapple_health, garmin, google_health_api, strava
window2026-07-20 → 2026-07-22
recovery signals7 usable · none missing
training signals0 usable · trainingLoad missing
02Fitness stateComputed from the signals that were fresh, weights renormalised across them.
readiness54
recovery76
fatigue46
03DecisionThe intent. One of keep, adjust, substitute, defer, advance.
typeadjust
intentreduce_today_intensity
04ActionThe same intent lands differently on different equipment, time or injury.
Planned session Threshold Intervals 60 min · high
Today’s session Moderate run 60 min · moderate
changedfocus, intensity
05ReasonTied back to a value and a versioned rule, so it still reads in October.
  1. 01Readiness 54 is below 60, so intensity comes down.
  2. 02At moderate intensity the session is no longer “Threshold Intervals”; it becomes “Moderate run”.
ruleEVD-R-002 · Low readiness pulls intensity down one step
measuredreadiness_score = 54
thresholdreadinessReduce < 60
confidencemedium
engine · rules1.6.0 · 1.5.0

Confidence is medium, not high, and the reason is on the first row: no training load arrived, so the load side of the picture is missing and the engine says so rather than filling it in. That is the whole difference between a decision you can act on and a sentence that sounds right.

Training data is useful. A decision is better.

Readiness is a signal, not the destination. Pacevera makes it useful by showing exactly what changes in today’s scheduled session — and why.

01 / TODAY’S BRIEF

One clear decision

See the session you planned, the session to execute, and the evidence that connects them.

02 / TRACEABLE

Reasons you can inspect

Every decision carries its rule, evidence coverage, missing signals, and confidence — not a black-box score.

03 / YOUR BOUNDARY

Evidence under your control

Designed for local-first and private deployments. Your health history is not our product.

AI Coaching

Your AI can coach. Pacevera helps it decide.

Use the AI host you already trust to ask questions and communicate in your own words. Pacevera takes the structured part: calculating fitness state, applying rules, and returning an action that can be checked later.

01

You ask your coach

“Should I keep today’s Threshold Intervals?”

02

Pacevera evaluates evidence

Recovery, fatigue, load, constraints and the scheduled workout.

03

You receive a decision

A concrete change to the planned session, with reasons and limits.

Planned session: Threshold Intervals

60 min · high intensity

Today’s session: Moderate run

60 min · moderate intensity

Decision: adjust

Readiness 52 · high confidence

Decision Layer

Not another recommendation. A change you can act on.

Pacevera starts with the session you planned. It returns an accountable change — keep, adjust, substitute, defer, or advance — instead of inventing a workout from scratch.

Advice is cheap. A decision has a prior state.

A general model knows the sports science. What it does not know is what you were supposed to do today, what your baseline HRV actually is, or that your sleep feed has been empty for a year. That gap is not a prompt problem.

A general AI coach

“You trained hard yesterday — take an easy Zone 2 run today.”

Where it comes fromInferred from language
Prior state neededNone
Auditable laterNo record of what drove it
A frontier modelCan do this today

Pacevera

“Your scheduled threshold intervals drop to moderate intensity — readiness 48, rule EVD-R-002.”

Where it comes fromYour evidence × a versioned rule
Prior state neededThe session you had scheduled
Auditable laterValues, rule id, missing signals, versions
A frontier modelCannot — it does not know today’s plan

Provenance

Every threshold names its source. Including the ones with none.

Decisions rest on numbers somebody chose. Pacevera stores each threshold together with where it came from and returns that with the decision — and the rule library fails to load if a real paper is attached to a score we invented. Ten of twelve rules carry no literature, and they say so.

EVD-R-006Externally defined metric
Thresholdacwr > 1.4
Basisexternal_metric
SourceGabbett 2016 · BJSM
Study designobservational
Supports thresholddirection only
Loaded against itImpellizzeri 2020 · Lolli

The paper says 0.8–1.3 is the sweet spot and ≥1.5 is the danger zone. 1.4 is neither — we chose it, and that sentence lives in the rule’s own limitation field. Citing Gabbett without loading his critics is the version that gets caught.

EVD-R-002Score we composed ourselves
Thresholdreadiness < 60
Basisinternal_composite
Sourcesempty
Study designnone
Supports thresholdinternal_heuristic
Rules like this10 of 12

Readiness is our own weighted composite. No study has ever used this score, so its threshold can never have a citation. The empty sources field is an honest state, not an unfinished one.

Attaching a real study to an invented score is the worst mistake this product could make. So it is a load failure, not a guideline.

Each citation also carries how far it was verified — down to unverified. Making that field mandatory immediately surfaced a citation nobody had ever checked, and a review has since withdrawn claims rather than reword them.

The review log

A mechanism is worth what it catches on its own side.

Provenance you cannot see fail is a marketing claim. These are the times ours refused something we had already published.

2026-08-07
Three rule sources re-reviewed: one up, two down

The Gabbett citation matched an open full text and was upgraded. A claim that VO₂max drops 4–7% in two to three weeks appeared in neither abstract and sat behind a paywall — the passage was removed rather than rephrased.

2026-08-07
Verification level made mandatory

The same day, an unverified citation surfaced that had survived that review. While the field was optional, “never checked” and “nothing to note” looked identical in the output.

2026-08-08
The counter-evidence exemption was closed

Counter-evidence had been exempt on the grounds that we do not assert it — but it is still a claim about what a paper says, and readers do not draw that line. Both counter-citations on EVD-R-006 failed immediately; one turned out to be an editorial with no abstract at all. Both were downgraded, with the withdrawn text kept in the record.

Standing
A study on an invented score is a load failure

Ten of twelve thresholds are internal composites. The library will not start if one of them cites literature.

Six ways to ask. Five kinds of answer.

Paste any of these after installing. Every output below came out of the engine and is pinned by a test — if this page and the code disagree, the test fails.

01 · No files, spoken evidence only

“I ran 80 minutes yesterday and felt wrecked, slept six hours. Today’s plan is VO₂max intervals, 60 minutes. Should I still do it?”

Keepas plannedconfidence low · missing HRV, resting HR, stress

It did not change the session. “Checked, and cleared to execute” is a decision — and it admits the confidence is low, because only one of four recovery signals is present.

02 · Strava only — zero recovery signals

“Here are my last four weeks of Strava activities. Threshold repeats, 60 min high intensity today — should I run it?”

Adjusthigh → moderateEVD-R-006 · ACWR 1.61 · confidence low

Strava measures no HRV and no sleep. What it has is per-session load, and that is enough to decide. Ask where 1.4 came from and you get Gabbett 2016, the loaded counter-evidence, and the admission that 1.4 is neither published number.

03 · Garmin only — vendor score as first-class evidence

“Here’s my Garmin data for today. Tempo Run, 50 minutes, high intensity.”

Adjusthigh → moderateEVD-R-002 · readiness 48 · confidence high

Same decision type as 02, same one-step drop, completely different reason — load climbing too fast versus poor recovery today. Body Battery is Garmin’s own composite and is ingested, not recomputed: the watch is on the wrist and integrates signals we cannot see.

04 · Oura only — no load curve at all

“Here’s today’s Oura data. Low-intensity intervals planned for 60 minutes and I feel great — can I push?”

Advancelow → moderateEVD-R-008 · readiness 96 · confidence low

This one goes up. Confidence stays low because Oura does not compute training load, so neither do we — multiplying duration by an intensity label would be easy, and that fabricated curve becomes a “back off today” three weeks later.

05 · Injury substitution — a hard filter

“My knee is bothering me. What can I swap today’s squats for? I have a barbell, a rack and dumbbells.”

SubstituteBarbell → Bodyweight SquatEVD-R-012 · Front Squat hard-filtered

The returned reason names it: movements contraindicated for the knee were hard-filtered out — Front Squat. Equipment was complete on purpose, so the only remaining reason is the knee. A model can be argued past a safety rule; a deterministic filter cannot.

06 · Whoop only — the session is removed

“Here’s today’s Whoop data. VO₂max intervals, 60 min high intensity — do I still do it?”

Defer60 min high → 30 min recovery + mobilityEVD-R-001 · readiness 6 · confidence high

Five fields change, exercises included. Adjust softens the session; defer takes it away and puts something else there. Confidence is high — Whoop does not measure stress, that cell stays empty, but three recovery signals plus the vendor score are present, and that is enough to cancel a hard session outright.

Two of them attach no file at all. Importing data is not a prerequisite — and when you ask what to train with no plan on the table, the engine says that is a request for advice, not a decision, instead of inventing one.

Nobody has to complete the set.

Strava only? That is load. Oura only? That is recovery. Every combination produces a decision; the difference is which evidence it rests on and how much confidence it claims. Weights renormalise across the signals that are actually fresh — missing is never filled in with a neutral value.

What you haveWhat it decides onDecision quality
Strava onlySession load · ATL / CTL / TSBAdjusts intensity and volume off the load curve
Apple Watch onlyHRV · resting HR · activityAdjusts off recovery signals and muscle-group fatigue
Garmin onlyBody Battery · recovery time · loadAdjusts off the vendor composite and load
Oura onlySleep · HRV · resting HR · readinessAdjusts off recovery state, no load curve
Whoop onlyRecovery signals + per-session strainBoth sides covered
Garmin + Apple HealthAll of the above + HRVThe same decisions, at higher confidence

Adding a source never moves a decision from impossible to possible — only from lower to higher confidence. Which is why this product is not measured in connector count.

A ✓ never means that watch measured it.

Apple Health and Google Health are destinations as well as sources — other apps write into them. So “this came from Apple Health” tells you where it was exported from, not who measured it. Every reading therefore carries its writer and its last date, all the way through to the tool output.

Garmin syncs into Apple Healthsleep · resting HR · steps · workouts
The sync does not includeHRV
So the HRV in that exportall of it from an Apple Watch retired two years ago
hrv_msApple Watch · last 2023-08-03
sleep_duration_hoursGarmin Connect · last 2026-07-15
resting_hr_bpmGarmin Connect + Apple Watch

Ask only “is there HRV?” and the answer is yes — then a plan gets built on a signal this person stopped producing two years ago. It also lets missing have a type: a Garmin HRV field returning the same sentinel for 330 days is not a watch that cannot measure it, it is a watch that was not worn overnight. “Your device can’t” is a dead end; “wear it to sleep and it will” is actionable.

Who it is for

People who already have the data and will not hand it over again.

Not the general fitness market. Athletes and coaches already using an AI, already holding an Apple Health, Garmin or comparable export, whose open question is not “another dashboard” but whether today’s scheduled session should still be run.

First success is one traceable change to a plan, inside ten minutes.

The four questions everyone asks first.

Does it replace the AI I already use?

No. You keep asking your own AI in your own words; Pacevera takes the structured part — computing fitness state, applying rules, and returning a change that can be checked later.

Do I have to upload my health history?

No account and no upload. The engine runs on your machine, and evidence arrives as an export file, a training log, or simply what you type. Pacevera stores no Apple or Garmin credentials.

Where do the thresholds come from?

Each one is stored with its provenance and returned with the decision. Ten of twelve rules are internal composites with no literature, and they are labelled that way — the library refuses to load if a real paper is attached to one of them.

What if I only have one data source?

Every combination still produces a decision. Weights renormalise across the signals that are fresh, missing signals are named, and confidence is reported honestly rather than inflated.

Outcome · prototype

A decision is useful when you can say what happened next.

Try the review step for this example. This preview records your selection only in the page session; it does not create an account or send health data anywhere.

How did today’s change land?

Select the outcome, then add the effort you perceived.

Public preview · $0

Start with the decision.

One path in, and it works right now on your own machine. Pacevera Desktop is the current install path while we validate the decision engine with serious athletes and coaches. No account, no health-data signup, and no email to hand over.

Pacevera Desktop · preview

Install now

$0 Available today

Pacevera Desktop is the current install path while we validate the decision engine with serious athletes and coaches. Everything on this page runs from one file on your own computer — no account, no API key, no settings screen, because the extension does not need to know who you are.

  • Local Pacevera MCPB for Claude Desktop
  • Today’s session decisions: keep, adjust, substitute, defer, advance
  • Evidence coverage, missing signals and confidence
  • Decision reason and rule trace
  • No account and no health-data upload to Pacevera

Before you click · two requirements

Confirm both, then download

pacevera.mcpb · macOS & Windows · ~360 KB
The prerequisites are the whole gate — there is no account to create

Four steps. None of them is a login.

What the install actually consists of, in case you would rather read it before downloading anything.

01

Download one file

pacevera.mcpb from the release page — a single file containing the runnable service and the entire rule library.

02

Check the fingerprint

shasum -a 256 pacevera.mcpb against fileSha256 in the public MCP registry. That number lives somewhere we do not control, so it is not us vouching for ourselves — and every version since 0.1.0 is kept, never overwritten.

03

Claude Desktop → Settings → Extensions → Install

Drag it in. There is no settings screen, because the extension declares no user config: it does not need to know who you are.

04

Ask

The decision tools go live immediately. No import step — what you say counts as evidence, and so does an export file.

Pacevera

Every training decision deserves a reason.

Your readiness score is only the beginning. Pacevera shows what changes in today’s planned session, why it changed, and what evidence is still missing.

Three months from now, you should still be able to ask why today changed: which rule fired, which values triggered it, what was missing, and which version of the engine and rule library produced it.