Skip to content

Releases: cli-pulse/cli-pulse-distrib

CLI Pulse 1.47.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 07 Aug 15:54

Fixed: the background helper could stop starting after an update and stay stopped, with nothing on screen saying so. When that happened CLI Pulse found no CLI activity at all and simply showed nothing.

It now checks the helper's real state at every launch and re-registers it when it is registered but failing to start. The old signals could not tell those apart — a job that had failed to launch 22,138 times in a row still reported as enabled and registered.

Fixed: with local-only mode turned on, the first-run card about anonymous statistics said they were being sent. Nothing was — local-only mode already covers them.

Fixed: the counter for "CLI Pulse found a CLI on this machine" often wasn't recorded until a later launch, which made our own numbers read lower than reality. No change to what is collected.


macOS 13.0 or later, Apple Silicon. Signed with Developer ID and notarized by Apple.

sha256 521427dfe8b6d3b9d01bb79bade37ed8fd5ac1e294cade8fab969ae5c426a43b

CLI Pulse 1.46.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 07 Aug 12:47

Two fixes to the anonymous install statistics introduced in 1.45.

Fixed: with local-only mode turned on, the first-run card about anonymous statistics said they were being sent. Nothing was — local-only mode already covers them. The card now says so, and shows the switch as inactive.

Fixed: the counter for "CLI Pulse found a CLI on this machine" often wasn't recorded until a later launch, which made our own numbers read lower than reality. No change to what is collected or when you're asked about it.


macOS 13.0 or later, Apple Silicon. Signed with Developer ID and notarized by Apple.

sha256 23a8d137b259b716bac3fc5230fbc2dd6479190a6b3eb02a9c93b18c69e21f6e

CLI Pulse 1.45.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 07 Aug 04:40

Developer ID build (direct download / Homebrew). The Mac App Store and iOS builds of 1.45.0 are in review separately.

Fixed: the in-app Privacy Policy and Terms links opened a missing page. They have been broken in shipping 1.44.0 the whole time it has been live — the fix landed the day after that build was cut.

New: a first-run setup flow, and support for multiple accounts per provider.

New: an onboarding check that tells you why a CLI isn't being tracked, instead of just showing nothing.

New: anonymous install statistics, so we can tell whether CLI Pulse works for people who use it without an account. Two counters — installed, and whether it ever found a CLI. No account, and nothing that identifies you or your machine: no file paths, project names, provider names, token counts or costs. The id is random, is not derived from your hardware, and is deleted when you uninstall. It is explained on first launch, before anything is sent, and you can switch it off there or in Settings › Privacy. Local-only mode disables it too. Full detail: https://cli-pulse.github.io/cli-pulse/privacy.html

Fixed: holding down the menu bar button is no longer reported as the app freezing.


CLI-Pulse-1.45.0-arm64.dmg — Apple silicon, notarized and stapled
SHA256 b5699587a080be54c541e24d3f886d52222a64433bdca0f4e6a230c3c6e67a4f

CLI Pulse 1.44.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 01 Aug 05:18

Developer ID build of CLI Pulse 1.44.0 (build 97) — signed, notarized and stapled.

Machine health now works without a separate helper install. get_machine_snapshot previously existed only in the .pkg Python helper, so the Machine tab was blank for anyone running the app-bundled helper — which is the default. The bundled Swift helper implements it now: CPU, memory, battery, sensors, fans and the live process list.

  • Use it without an account — "Continue without account" is remembered across relaunches instead of dropping you back at the sign-in screen
  • Honest provider status — not installed, not running, and missing credentials are told apart rather than all showing as "no data"
  • Start at login is asked after you have seen real data, not before
  • Homebrewbrew tap cli-pulse/tap && brew trust cli-pulse/tap && brew install --cask cli-pulse

Verified before publishing: Gatekeeper accepted / source=Notarized Developer ID, bundle yyh.CLI-Pulse, team KHMK6Q3L3K, and the embedded helper answers get_machine_snapshot with all six capabilities live.

manifest-fragment-arm64.json is what the in-app updater consumes. Its JasonYeYuhe/ URL prefix is deliberate — shipped apps pin that exact prefix.

CLI Pulse 1.43.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 26 Jul 16:15

CLI Pulse 1.43.0 (build 96)

A cleanup release. The headline is that the Companion CLI helper stops asking you to install an
update it could never actually apply.

The "Update available" that wouldn't go away

If your helper is the one built into CLI Pulse, Settings could show a permanent
"Update available → 1.30.0" that the Update button never cleared. Installing the standalone helper
package didn't clear it either, because that package doesn't replace a helper that ships inside the
app.

  • Built-in helpers now say so. Settings shows "Built into CLI Pulse — updates automatically when
    you update the app", and the install/uninstall controls that only apply to the standalone package
    are hidden.
  • The built-in helper is swapped the moment you update. Previously the old helper process kept
    running until your next login, so an updated app could still be talking to the previous version.
    Now it is restarted as part of the update.
  • Standalone-package users are unaffected. If you installed the helper package yourself, real
    updates are still offered exactly as before — only the false prompt is gone.

Also in this release

  • DEVID builds are now genuinely Apple-Silicon-only, matching what the download has always claimed.
  • The helper package ships a bundled tmux, so wrapped sessions no longer depend on your having one
    installed.
  • Better first-run diagnostics: the app now records which version it is running and, when a provider
    produces no usage data, whether that is because the CLI isn't installed, is switched off, or the
    read actually failed. This is what lets us fix "CLI Pulse shows nothing" reports without guesswork.

Requires macOS 13 or later. Apple Silicon.

CLI Pulse 1.42.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 20 Jul 15:06

CLI Pulse 1.42.0 (build 95)

Two features land in this release, plus the permission-prompt fix from 1.41.2.

Control the CLI sessions you started yourself

CLI Pulse could already drive sessions it launched. Now it can work with the claude and codex
sessions you started in your own terminal:

  • Approve or deny from your phone. With the opt-in approval hook installed, a permission request
    from any terminal-launched Claude or Codex can be answered remotely. If nothing answers in time it
    falls back to the normal local prompt — it never silently blocks your work.
  • Full read/write on wrapped sessions. An opt-in shell integration parks future claude/codex
    launches inside a CLI-Pulse tmux session, so you can attach from the app, watch the output live,
    and type into it.
  • Per-session "Show on my phone". Off by default. A session CLI Pulse didn't start stays entirely
    on your Mac unless you switch it on for that specific session, and switching it off stops the sync
    immediately while the real session keeps running untouched.

Attaching is non-owning: detaching or quitting CLI Pulse never kills your terminal session.

Pulse Cat

A companion that reflects your CLI usage — 361 hand-made frames, idle motions, and a floating
desktop companion. Animation runs on the render server and pauses itself when hidden, on battery, or
under Low Power Mode.

Also included

The 1.41.2 fix that stops macOS from repeatedly asking "CLI Pulse would like to access data from
other apps."
The helper's runtime files moved to a location macOS does not gate, so the request is
never generated — nothing to approve, and nothing to re-approve after an update.

Integrity

Signed with Developer ID, notarized and stapled.

CLI Pulse 1.41.2

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 19 Jul 08:12

CLI Pulse 1.41.2 (build 94)

Permanently eliminates the recurring macOS prompt"CLI Pulse" would like to access data from other apps — including after app updates. Recommended for all users, especially anyone who saw that dialog repeatedly on 1.41.x.

What was wrong

The app's bundled background helper kept its socket and auth token inside the macOS app-group container. For an unsandboxed helper launched by launchd, every touch of that container triggers a macOS privacy consult (SystemPolicyAppData) — and for this helper, macOS never persisted the answer: clicking Allow recorded nothing, so the dialog came back on every helper start and after every app update (a fresh binary restarts the cycle). "Don't Allow" made it ask forever.

What 1.41.2 does

The helper's runtime files move to ~/.clipulse, a plain per-user directory that macOS does not gate. The privacy consult is never generated at all — there is no dialog to answer, nothing to re-approve on update, and no grant that can silently fail to persist. Measured on the affected machine: first container touch under launchd was 1–10 s (sometimes >20 s) and could prompt; the new location is ~29 ms and structurally cannot prompt.

Additional hardening that shipped with the move:

  • The directory is validated before receiving secrets (symlinks, wrong ownership, and foreign pre-planted directories are refused; loose permissions are tightened to 0700).
  • The app picks the live helper by actually connecting, so a stale socket file can no longer mask a healthy helper.
  • A CI guard now fails any future build in which the helper's daemon path touches a TCC-protected prefix again.

Compatibility

  • The separate Companion CLI Helper (.pkg) is unchanged and keeps working; the app automatically talks to whichever helper is live.
  • No action needed after updating. If you previously clicked "Don't Allow" on the dialog, no reset is required — the new version simply never asks.

Integrity

Signed with Developer ID, notarized and stapled. Verification battery: Gatekeeper accepted (Notarized Developer ID), helper embedded and confirmed to carry the fix, zero container access by the live daemon (lsof-verified), TCC database row count unchanged across a full daemon lifecycle.

CLI Pulse 1.41.1

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 17 Jul 15:23

CLI Pulse 1.41.1

A focused fix for the background helper. Recommended for everyone on 1.41.0.

Fixed

The helper could hang on launch and repeatedly show a macOS permission prompt. On some Macs, the first time the bundled helper started it would block inside the system "CLI Pulse would like to access data from other apps" permission check — and if that dialog wasn't answered, it hung there. Because the helper is relaunched by the system, the dialog could reappear over and over, and the app would report the helper as not running the whole time.

1.41.1 makes the helper wait for that permission check on a background thread instead of freezing on it, and never re-triggers a second prompt while one is already open. If you were seeing the "access data from other apps" dialog come back after dismissing it, this release stops that.

Under the hood this also ships the companion CLI helper fix (1.29.1), which had the same root cause: a per-process macOS permission consult that a restart can never speed up, so the helper now waits it out instead of restarting into it.

Nothing else changes from 1.41.0.

CLI Pulse 1.41.0

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 09 Jul 12:11

CLI Pulse 1.41.0 (build 92)

Keep Awake

  • One click keeps your Mac running while the display sleeps — pick a duration or go indefinite, with a live countdown
  • New lid-closed option keeps the Mac awake with the lid shut (AC power)

Remote machine control (opt-in)

  • Your iPhone can now request fan boost, Low Power Mode and Keep Awake on this Mac
  • The Mac stays in charge: every boost auto-reverts when its timer ends

Fan control polish

  • In Auto the slider tracks the live RPM; reverting snaps back to the real fan speed

Companion release

  • iOS 1.41.0 (App Store, in review): Machine view for paired Macs, remote controls, usage heatmap, Apple Watch machine cards

Requirements: macOS 13+, Apple silicon.
SHA-256: 1f774dd4a04444c53f484ca5c9d75d6b4c9264d0c148932b83b81b93dfaf3f28

CLI Pulse 1.40.0 (build 91)

Choose a tag to compare

@JasonYeYuhe JasonYeYuhe released this 08 Jul 11:32

CLI Pulse 1.40.0 (build 91)

Glass Dashboard + provider catch-up.

  • Providers 49 → 55: Poe, CrossModel, Chutes, Qoder, Sakana, Zed
  • New Usage Dashboard — full-year activity heatmap, by-model / by-provider breakdowns, daily trends
  • 毛玻璃 frosted-glass card refresh + a slide-out dashboard panel that extends to the left of the menu popover
  • Multi-currency cost display
  • Adaptive refresh cadence
  • Fixes: the latest Claude Opus model is now labeled correctly, the activity heatmap ends at "now", and the slide-out panel fits on one page

macOS 13+ · Apple Silicon · Developer ID signed & notarized.