pulse commit --since=yesterday

Own your health data.
Commit it.

Export your Apple Health data to your own Git repository and Telegram chat — a clean, machine-readable commit every day. No backend. No analytics. No middleman.

v1.0 shipping soon · join the waitlist
# one email when it ships. no spam, no list-selling.
Read-only Health access Secrets in Keychain $9.99 once · no subscription
9:41
8 / 10 RUNS
Pulse Commit
v1.0.0 · iPhone 15 Pro · Europe/Lisbon
$ pulse commit --since=yesterday
Export Now
Since yesterday · ready to commit
HOLD today · yesterday · 7d · custom
LAST COMMIT
a8f3c2d · main 2m ago
2026-05-13 · 12.5k steps · 1 workout · sleep 7h12m
SINKS · NEXT RUN
GitHub
Telegram

Three steps. Then it just runs.

Tap once, or wire it to a Shortcut and forget it. Every run reads, normalizes, and commits — atomically, to destinations you own.

01

Read from Health

Read-only access to 14 HealthKit categories — steps, heart rate, HRV, sleep, workouts, nutrition and more. The app never asks to write.

02

Normalize & serialize

Daily snapshots become clean summary.json, raw samples, workouts and GPX routes — every file stamped schema_version for forward compatibility.

03

Commit everywhere

One atomic commit to GitHub main, plus a Markdown summary and JSON archive to Telegram. Both succeed, or the cursor stays put and retries.

Readable by you. Parseable by your agent.

The same day, three ways. Feed the JSON to your own AI agent, skim the Telegram summary on your phone, or browse the commit history on GitHub.

summary.json
telegram
commit tree
{ "schema_version": "1.0", "date": "2026-05-14", "timezone": "Europe/Lisbon", "metrics": { "steps": { "total": 12483, "unit": "count" }, "active_energy": { "total": 612, "unit": "kcal" }, "resting_heart_rate": { "value": 58, "unit": "bpm" }, "hrv_sdnn": { "avg": 47, "unit": "ms" }, "sleep": { "duration_minutes": 432, "stages": { "deep": 78, "rem": 92, "core": 240 } }, "weight": { "value": 76.4, "unit": "kg" } }, "workouts": [ { "type": "outdoor_run", "distance_km": 6.2, "avg_hr": 152 } ] }
🫀 Pulse Commit · 2026-05-14 🏃 Activity • Steps: 12 483 • Active energy: 612 kcal • Stand: 11 h · Exercise: 42 min ❤️ Heart • Resting HR: 58 bpm · HRV: 47 ms • VO₂ max: 48.2 😴 Sleep 7h 12m · deep 1h18m · rem 1h32m 🏋️ Workouts (1) • Outdoor Run — 38 min · 6.2 km · avg HR 152 schema_version: 1.0 🔗 View on GitHub → # + attachment: pulse-commit-2026-05-14.zip # JSON archive · 14 files · schema 1.0
$ git log --oneline -1 a8f3c2d Pulse Commit · 2026-05-14 · 12.5k steps · 1 workout · sleep 7h12m $ tree 2026-05-14/ yuriy/health-data on main └── 2026-05-14/ ├── summary.json ├── samples/ 11 files │ ├── steps.json │ ├── heart-rate.json │ ├── hrv.json │ └── … sleep, nutrition, vo2max, … ├── workouts/ │ └── 7f3a-outdoor-run.json └── routes/ └── 7f3a-outdoor-run.gpx # idempotent — re-running a day overwrites the same folder

Pay once. Keep it forever.

Try it free for 10 export runs. Then unlock everything with a single $9.99 purchase — no recurring charges, no tiers, no rug-pull.

pulsecommit.unlock
$9.99one time

Everything, forever

  • Unlimited export runs
  • Custom backfill — 7 / 30 / 90 days or any range
  • All categories & every App Intent
  • All future categories — no extra IAPs
Join the waitlist
Free trial: 10 runs · all sinks · all categories
App Store privacy label: Data Not Collected

It can't leak what it never collects.

There is no Pulse Commit server. Your data goes from your phone straight to the destinations you configure — and nowhere else.

No backend

Nothing is uploaded to us, because there is no “us” in the loop. The app talks only to GitHub and Telegram — your accounts.

No analytics

Zero third-party SDKs, trackers or crash reporters. We don’t know you opened the app, let alone what’s in your data.

Keychain-only secrets

Your GitHub token and Telegram bot token live in the iOS Keychain, this-device-only. Never synced, never shown again.

the app only ever contacts: HealthKit · api.github.com · api.telegram.org

Your health data.
Your repo. Your call.

v1.0 shipping soon
Join the waitlist