Skip to content

v4.1.3

Choose a tag to compare

@kennss kennss released this 10 Aug 06:43
· 11 commits to main since this release

Fleet can tell you which machine is generating, and how fast.

It already knew which models were resident on a remote box; it could not tell you whether anything was being done with them. GPU utilisation answers that badly — a 0.6B model held 260 tok/s on an RTX 3090 while the counter read 0 %.

  • Every machine reports the decode rate its runtime measured. The number appears in three places — the sidebar row, the Fleet tile, and the machine's own page — for Linux and Mac agents alike, and every card that was there before is unchanged. Two sources, because the runtimes disagree about how to expose it: llama.cpp's /metrics (start it with --metrics), and LM Studio via lms log stream --json --stats. Ollama publishes no server-side rate at all, so it stays absent rather than reporting a zero — a missing measurement and a measured 0 tok/s are different facts. (#37, asked for by @vade)
  • Every rate is shown with when it was measured, and dims once it stops describing the present. These are counts of work a runtime already finished, not a live gauge, and a rate presented bare reads as "right now".
  • Card titles are proportional. In SF Mono, G is a C with a short bar at mid-right, and at 9.5 pt that was enough to make the CPU and GPU cards hard to tell apart at a glance. Monospace is there to hold columns still and a title sits in no column, so it was costing letter shapes for nothing. Every reading, column and row label stays monospaced. (#36, reported by @Borda)

Also — three ways the machine list could strand you

  • Unpairing a machine left no way back. The detail view checked its cached readings before the pairing state, so a machine that had stopped authenticating kept rendering the snapshot it happened to hold while the Pair button sat in an unreachable branch. This also covers the case that is not a user action: an agent reinstalled with a fresh token starts answering 401.
  • A discovered machine can now be removed. mDNS finds it again a second later, so removal records the choice rather than deleting an address — and the sidebar offers it back, because a live machine that vanishes with no way to restore it is worse than one row too many.
  • The window could freeze while reading a pairing token. Discovery runs on the main actor and read the Keychain once per machine on every discovery change; a slow securityd, or an access prompt, stopped the whole app until it answered. Tokens are now read once per launch.