Your ride. Your data.
Your AI.

A Karoo extension that connects your Polar H10 directly, computes HRV on the Karoo, and sends your ride to a dashboard your own Claude can coach from. We never analyze your rides.

Sound familiar?

Garmin Connect+

Features you already had, now behind a $7/month paywall. Training status everyone hates. And they own your data.

Karoo's missing pieces

No HRV. No direct H10 RR-interval capture. No way to hand a ride to your own AI. The hardware is great but the software gaps are real.

AI coaching that isn't

Every platform promises "AI insights." They mean a canned report from a model that doesn't know you. That's not coaching.

Your strap already does this. Nobody told you.

A Polar H10 sends four signals over Bluetooth. Your bike computer shows you one. veloVigil reads three of them on the Karoo, from the strap you already own.

The H10 sendsKaroo showsveloVigil reads
Heart rateYesYes
Beat-to-beat RR intervalsNoYes → HRV (RMSSD, SDNN, pNN50) on the Karoo
3-axis accelerometer, 200 HzNoYes → filtered g-force, airborne time, a crash detector (alert not wired yet)
Single-lead ECG, 130 HzNoNot yet

What veloVigil does

Karoo 2 and 3, with a Polar H10. The extension talks to the H10 directly; other straps keep working with the Karoo but veloVigil does not read them yet. No app to install. No subscription to forget about.

Real HRV from RR intervals

RMSSD, SDNN, pNN50 computed from your Polar H10's beat-to-beat data. Not the smoothed-over estimate your watch gives you.

G-force, filtered

H10 accelerometer at 200 Hz through a 50 ms RMS window, so road buzz is rejected. Peak and average g, airborne time. A crash detector (4 g sustained 200 ms) runs on-device; the alert isn't wired up yet, and we say so.

📈

Your AI, your coaching

Open your ride on the dashboard, copy the markdown, paste it into your Claude. It reads the summary and gives you a debrief. The intelligence runs on YOUR AI, not ours.

🔒

Data sovereign

Your biometrics stay yours. We provide the capture and the pipe. Your Claude does the thinking. We never analyze, sell, or share your ride data; someone has to run the database, and that is the only sense in which we can see it.

🚜

Rider dashboard

Every rider gets a web dashboard: each ride's summary, live latest point during a ride, and a one-click markdown copy for coaching. No app required.

🏋

No subscription. Ever.

The extension is free and open source. The data pipe is free. There are no paid tiers today; if that changes it will say so here first.

Three steps. That's it.

1

Install the extension

Sideload veloVigil, allow the Bluetooth permission it asks for, register with your invite code, pair your Polar H10. The whole path, step by step.

2

Ride

HR, power, cadence, speed - all streaming to your dashboard. The H10 gives HRV and g-force on top. Data buffers offline, flushes when you're back in signal.

3

Get your coaching

After your ride, open your dashboard, copy the ride's markdown and paste it into Claude. It reads the summary and gives you a debrief. No configuration.

Here's what you actually get

An example of the kind of debrief Claude writes from a ride's markdown. Illustrative; your numbers and your Claude will differ.

Ride Summary: Tuesday PM — 1h22m, 34km The big picture: solid endurance ride. 78% of your time in Z2, which is exactly where you want to be for base building. HR averaged 138, power averaged 185W — good ratio for you. One thing I noticed: your RMSSD dropped from 42 to 18 in the last 20 minutes. Combined with your HR drifting up 8 BPM at the same power, you were fatiguing. Not a problem for a Tuesday ride, but if you see this on back-to-back days, take an easy day. Cadence was 88 avg — right in your sweet spot. For Thursday: keep it under 2 hours and stay in Z2. Your HRV at ride start was lower than your last three rides (28 vs 35 avg), so your body is still absorbing this week's load. One thing to try: on your next Z2 ride, check in at 45 minutes. If HR has climbed more than 5 BPM from the 10-minute mark at the same power, take a gel. That drift pattern often responds to fueling.

15 minutes to your first debrief.

Install the extension. Allow the permission. Ride. Paste your ride into Claude. That's the whole setup.

Get Started