pulse v1.0.0 · local-first

Download pulse

The local desktop app. Runs entirely on your machine. No account, no telemetry by default, no cloud calls except a once-daily FX rate fetch. MIT-licensed — audit the code yourself.

Windows
Available now
  • Windows 10 + 11 (x64)
  • ~80 MB installer
  • System-tray app + browser dashboard
  • Optional auto-start on login
Download installer (.exe)Portable .zip
macOS
From source today
  • macOS 12+ (Apple Silicon + Intel)
  • Works from source today (Python 3.12)
  • Universal2 .app bundle planned Q3 2026
  • Awaiting Apple Developer ID + notarization
Run from sourceNotify me when packaged
Linux
From source today
  • Any X11 / Wayland desktop
  • Works from source today (Python 3.12)
  • AppImage planned Q4 2026
  • Foreground detection via xdotool / wmctrl
Run from sourceNotify me when packaged
Verifying your download. Every GitHub release ships with SHA-256 checksums in the release notes. Verify with CertUtil -hashfile pulse-setup-1.0.0.exe SHA256 (Windows) or shasum -a 256 <file> (mac/Linux), then compare against the value on the release page.

Install in 4 steps (Windows)

  1. 1
    Download the installer

    Grab pulse-setup-1.0.0.exe from the latest release. First-time downloads may see a "Windows protected your PC" SmartScreen warning — this fades as more people install. Click More info → Run anyway.

  2. 2
    Run the installer

    Pick an install directory (default C:\Program Files\pulse\), choose whether to add a desktop shortcut, and whether to auto-start on login. No admin install required — pulse only writes to HKCU.

  3. 3
    Click the tray icon

    Pulse appears in your system tray (bottom-right of the taskbar). Click it to open the dashboard in your default browser at http://localhost:<port>.

  4. 4
    Run the 30-second first-run wizard

    Pick currency, set a monthly AI budget (optional), choose alert preferences. All skippable. Pulse auto-detects Claude Code logs at ~/.claude/projects/*.jsonl on first launch.

Where your data lives

Everything pulse collects stays on your machine. Nothing is uploaded unless you turn on cloud sync (Pro, not yet shipped).

LocationWhat's stored
%USERPROFILE%\pulse\data\tracker.dbSQLite database — subscriptions, AI usage, activity
%USERPROFILE%\pulse\backups\Auto-rotated DB backups (last 7 days)
%USERPROFILE%\pulse\logs\Diagnostic logs (rotated, last 30 days)
~/.claude/projects/*.jsonlPulse reads Claude Code token logs from here — never modifies

macOS / Linux equivalents: ~/Library/Application Support/pulse/ and ~/.local/share/pulse/.

Run from source (any OS)

macOS and Linux work today this way — no packaged build needed. Windows users can too, if they want to read or modify the code.

git clone https://github.com/walight999/pulse
cd pulse
pip install -r requirements.txt
python app.py

Requires Python 3.12+ and git. Full developer guide in INSTALL.md.

Troubleshooting

Windows Defender or SmartScreen blocks the installer+
The signing certificate is new, so SmartScreen will warn until enough people install. Click More info → Run anyway. If Defender quarantines the file, restore it from quarantine + add an exclusion for C:\Program Files\pulse\. See full steps in TROUBLESHOOTING.md.
The dashboard didn't open in my browser+
Pulse auto-picks an unused localhost port. Right-click the tray icon → Open dashboard to force-open. If still blocked, copy the URL from %USERPROFILE%\pulse\logs\app.log.
Claude Code logs aren't being detected+
Pulse looks at ~/.claude/projects/*.jsonl. If you've moved your Claude config, set CLAUDE_LOG_DIR to the right path before launch. The Settings → AI Usage tab also has a manual import button.
How do I uninstall and delete all local data?+
Settings → Apps → pulse → Uninstall. The uninstaller asks whether to keep your data. Choose No to wipe %USERPROFILE%\pulse\ completely. From-source installs: delete the cloned repo and the user-profile pulse folder.
Does pulse phone home? Track me? Sell my data?+
No, no, and no. The local app makes one outbound call: the daily FX rate fetch from frankfurter.dev, cached for 24h. Telemetry is opt-in and off by default. Cloud sync is Pro-only and not yet shipped. See Privacy + Security.