Hacker News

Show HN: Breathe CLI – Paced resonance breathing in the macOS terminal

93 points by marekkowalczyk ago | 14 comments
I built a terminal app that paces slow breathing at 6 breaths per minute for vagal tone training. It's a single Python file, stdlib only, no dependencies — just run breathe and follow the bar.

I'm a cardiology patient (HFrEF). Slow breathing at resonance frequency is one of the few non-pharmacological interventions shown to improve cardiac vagal tone and baroreflex sensitivity (Bernardi et al., Circulation 2002; Lancet 1998). I wanted a frictionless daily habit tool — no app store, no account, no subscription, just open terminal and go.

Design constraints, all grounded in the clinical literature:

- No breath retention — Valsalva risk in cardiac patients

- No rapid breathing — minimum 8-second cycles

- Exhale ≤ 2x inhale — no evidence for extreme ratios

- Immediate exit, always — q or Ctrl+C restores the terminal even on crash

The README includes a resonance frequency measurement protocol for anyone with a chest-strap HRV monitor who wants to find their individual optimum instead of using the 6 bpm default.

macOS only (uses afplay for audio cues). MIT licensed.

pip install breathe-cli

or

brew tap marekkowalczyk/breathe && brew install breathe.

samrivera |next [-]

37 days into quitting smoking and breathing exercises have been a huge help for the craving spikes. a simple terminal tool for paced breathing actually makes a lot of sense - when the craving hits at 3pm and youre staring at a screen anyway, having it right there in the terminal is way less friction than pulling out a phone app. starred.

Obscurity4340 |root |parent [-]

I've long wondered if a big unsung part of smoking is the way it gets normally high-strung, fast moving and shallow breathers to slow down and inhale deeply for 3-5 mins at a time. They might not get that kind of air any other way

ahmazroot |next |previous [-]

Not every project needs agents, workflows, and LLM integrations. Sometimes a focused tool is exactly what's needed.

skeledrew |next |previous [-]

Looks interesting. And it's pure Python with no 3p packages. Pretty trivial to support other OSes: make that audio player invocation configurable.

iammjm |next |previous [-]

Very nice. I have no heart issues but have been experimenting with extended breathing/longer exhales to calm down my sympathetic nervous system. I believe intentional breathing is a big, mostly underutilized tool all of us have to be generally more relaxed and healthier and also to calm ourselves down in stressful situations

mark_l_watson |next |previous [-]

I love the zero dependency implementation. I do this style of breathing during specific time periods of practicing Qi Gong. I will try your script when I get to my laptop. Thanks.

mpeg |next |previous [-]

This is cool, I have SVT and usually am able to stop an episode if I do slow breathing like that; although sometimes if that doesn’t work the modified reverse valsalva manoeuvre does it every time.

darcien |next |previous [-]

This reminds me of another HRV training from few years back shared here.

- https://news.ycombinator.com/item?id=37538028

- https://github.com/kieranabrennan/every-breath-you-take

glaslong |next |previous [-]

does it have modes for Hamon or Total Concentration breathing?

Ruslan1095 |next |previous [-]

Nice work on the zero-dependency approach. I'm building a similar tool for Windows (voice-to-text) and the "no account, just run" philosophy resonates — friction kills daily habits.

yong076 |next |previous [-]

wow this repo is peaceful

chrisvenum |next |previous [-]

Terminally breathing

fulafel |next |previous [-]

[dead]

edgardurand |next |previous [-]

[flagged]

michaelmjh |next |previous [-]

[dead]

plexescor |next |previous [-]

[dead]

georgefloid |next |previous [-]

[dead]

bakrisolo |previous [-]

[flagged]

arionmiles |root |parent [-]

AI slop comment

|root |parent [-]