Releases: EvilIrving/light-stats
Release list
Light Stats v1.9.6
Light Stats 1.9.6
这一版新增窗口管理:把窗口拖到屏幕边缘即可吸附成对半、四角或三分,再用顶部边缘的布局岛在更多布局之间一键落位;每个动作都能绑定自己的全局快捷键。「拖到边缘」由谁执行可以二选一——Light Stats 自己的引擎,或 macOS 自带的平铺——两个实现不会同时生效。同时加入 Dock 点击收起窗口、摇晃隐藏与恢复、菜单栏的窗口控制菜单,以及清理页的固定批处理退出分组。窗口管理默认关闭,在设置里开启。
This release adds window management: drag a window to a screen edge to snap it to a half, a corner, or a third, then use the layout island on the top edge to place it in one move across more layouts; every action can have its own global shortcut. Who performs the edge gesture is a choice — the Light Stats engine, or macOS' built-in tiling — so two implementations never run at the same time. It also brings Dock-click collapse, shake to hide and restore, a window-control menu in the menu bar, and a pinned batch-quit group in Cleanup. Window management is off until you enable it.
新增
- 拖到屏幕边缘吸附:对半、四角、三分(含 1/3 与 2/3)、底边三分位;顶部边缘的布局岛可直接把窗口落位到某一格
- Drag a window to a screen edge to snap: halves, corners, thirds (including 1/3 and 2/3), and bottom-edge thirds; the layout island on the top edge places a window straight into a tile
- 布局岛内的布局可切换(对半、三分、四角、六格、九格、左右堆叠),并能选择岛里显示哪些
- The island's layouts are switchable (halves, thirds, quadrants, sixths, ninths, left and right stack), and you choose which ones it offers
- 每个吸附动作都能自定义全局快捷键,包括移到上一块/下一块显示器、居中、最大化、最小化与还原
- Every snap action can have its own global shortcut, including previous/next display, centre, maximize, minimize, and restore
- 按住 Fn 拖动时改用指针下的窗口,适配自绘标题栏的应用
- Holding Fn targets the window under the pointer instead, for apps that draw their own title bar
- 拖到边缘的执行方二选一:Light Stats 引擎或 macOS 自带平铺;系统那一侧的两个开关一起写,且只在实际切换时写一次
- Choose who owns drag-to-edge: the Light Stats engine or macOS' own tiling; the system's two switches are written together and only when the choice changes
- Dock 点击收起:点最前面 App 的 Dock 图标把它的窗口收进 Dock,再点一次放回来
- Dock-click collapse: click the frontmost app's Dock icon to put its windows away, click again to bring them back
- 拖动窗口时左右摇晃隐藏其他 App,再摇一次恢复
- Shake a window sideways while dragging to hide other apps, shake again to restore
- 菜单栏新增窗口控制图标:列出目标 App 的窗口并执行吸附动作
- A window-control item in the menu bar lists the target app's windows and runs snap actions
- 清理页新增固定批处理退出分组:把一组 App 固定下来,一次全部退出
- Cleanup gains a pinned batch-quit group: pin a set of apps and quit them all at once
- 诊断报告更自解释:附带环境信息、实时硬件探针、每次启动的会话清单与可读摘要
- Support reports are self-explaining: environment context, fresh hardware probes, a per-launch session list, and a readable digest
- 「找鼠标」换用动画钻石演示指针,可在设置里按缩略图挑选配色(可选开启)
- Find My Mouse gains an animated diamond presentation pointer, chosen from thumbnails in Settings (opt-in)
改进
- 状态栏支持可选分隔线、对齐的网络速率,以及按方向着色的流量数字
- The status bar gains an optional divider, aligned network speeds, and direction-coloured traffic numbers
- 无风扇、无内置电池的机器不再显示对应的风扇与电池界面
- Machines with no fan or no internal battery no longer show the fan or battery surfaces
- 电量健康度可在「设计比例」与「系统读数」之间切换,切换时数字滚动过渡
- Battery health can switch between the design ratio and the system reading, rolling between the two numbers
- AI 用量卡片按「最近重置」的窗口显示额度,而不是按用量最高的窗口
- The AI usage card shows the window nearest its reset instead of the one with the highest usage
- 面板关闭后不再逐帧重绘:风扇图标改由 Core Animation 图层旋转,待机更省电
- A closed panel no longer redraws every frame: the fan rotates on a Core Animation layer, so idle costs less
修复
- 电池健康度与温度改从嵌套的电池层级读取,此前可能读到错误的值
- Battery health and temperature are read from the nested battery layers; earlier releases could report the wrong value
- 多显示器下统一了吸附坐标的翻转参照高度,避免窗口被放到错误的位置
- The snap coordinate flip now uses one reference height on multi-display setups, so a window is not placed at the wrong position
- 状态栏流量配色在未启用时保持关闭,不再残留
- Status-bar traffic colours stay off until enabled instead of leaving a residue
Full Changelog: v1.9.5...v1.9.6
Light Stats v1.9.5
Light Stats 1.9.5
修复应用内更新的可靠性。此前某些版本会在更新窗口切换状态时崩溃,安装没完成、用户也没有任何反馈;替换过程还可能先删掉旧包。1.9.5 重做了安装交接:旧版本始终保留、失败自动回滚、重启后核对实际版本,并在失败时给出明确提示和手动下载入口。
A reliability release for in-app updates. Some earlier versions crashed while the update window changed state, so the install never finished and the user got no feedback; the replace step could also delete the old bundle first. 1.9.5 rebuilds the handoff: the old version is always kept, failures roll back, the actual version is verified after a restart, and failures show a clear message with a manual download link.
修复
- 更新窗口在 macOS 26 上切换状态时可能崩溃导致安装未完成:窗口现在由 AppKit 持有固定尺寸,不再随内容自动缩放
- The update window could crash on macOS 26 while switching states, leaving the install unfinished: the window now keeps an AppKit-owned fixed size instead of resizing with its content
- 替换不再先删旧包:旧版本先保留为备份,移动或启动失败会自动回滚;等待旧进程退出超时会中止并保留旧包
- Replacement no longer deletes the old bundle first: the previous version is kept as a backup, move and launch failures roll back, and an exit timeout aborts while keeping the old app
- 重复安装与换包期间的误清理被阻止:跨进程锁保证同一时间只有一个安装器,且安装器结束前不会清理暂存文件
- Duplicate installs and premature cleanup are blocked: a cross-process lock keeps one installer at a time and stops cleanup while it is still running
- 重启后核对实际运行版本:成功显示已安装版本;失败显示目标版本、当前版本和手动下载页面,并把失败阶段写入诊断日志
- The actual running version is verified after a restart: success shows the installed version, failure shows the target and current versions plus the manual download page, and the failing stage is written to the diagnostic journal
- 本次无法修复已运行旧版的更新动作:若你的旧版本在更新过程中崩溃过,需从下载页面手动安装一次;之后的应用内更新即自行恢复
- This release cannot repair an old version's running update action: if an older version crashed mid-update, install once manually from the download page; in-app updates then recover on their own
Full Changelog: v1.9.4...v1.9.5
Light Stats v1.9.4
Light Stats 1.9.4
相对 v1.9.3 的修复版。1.9.3 的右键菜单和更新安装都存在可用性问题,建议所有 1.9.3 用户升级。
修复
- 右键菜单点击无反应:菜单项改回按 tag 派发。FinderSync 把菜单编组交给 Finder 后,
representedObject到点击时已是 nil,导致所有动作静默返回——菜单弹得出来,点了什么都不发生 - Finder menu actions did nothing: items dispatch by tag again. FinderSync marshals the menu to Finder, so
representedObjectwas nil by click time and every action returned silently — the menu appeared, but clicking it did nothing - 粘贴 API token 保存后没有任何反馈:按钮现在会短暂显示「已保存」并弹一条提示,保存失败同样有提示,不再静默
- Saving an API token gave no feedback at all: the button now briefly shows a saved label and raises a toast, and failures are surfaced instead of being swallowed
- 更新安装可能失败:切到「安装中」那一步触发 AppKit 异常终止进程,而它发生在替换脚本启动之前,于是包没被换掉。现在替换脚本先脱离进程跑起来,之后即使崩溃也不再丢更新
- An update could fail to install: the installing-phase redraw tripped an AppKit exception that aborted the process before the replace script started, so the bundle was never swapped. The script now runs first, which makes such a crash harmless
- 本地构建会向系统留下未签名、未沙盒的同名 Finder 扩展,被 pkd 判为 mis-configured plugin,连带影响已安装的那一份
- Local builds left an unsigned, non-sandboxed copy of the Finder extension behind, which pkd rejected as a mis-configured plugin and which tainted the installed copy
Full Changelog: v1.9.3...v1.9.4
Light Stats v1.9.3
Light Stats 1.9.3
相对 v1.9.2 的正式版。
新功能
- AI 用量扩到 15 家:Claude Code、Codex、Gemini、Grok、Warp、Trae、OpenCode Go、Cursor、Kimi、Qoder、DeepSeek、Z.ai、MiniMax、OpenRouter、MiMo;一家一开关,默认全关
- AI usage covers 15 providers: Claude Code, Codex, Gemini, Grok, Warp, Trae, OpenCode Go, Cursor, Kimi, Qoder, DeepSeek, Z.ai, MiniMax, OpenRouter, MiMo; one switch each, all off by default
- 概览用量行折叠:多窗口只显示最紧的一条,点击展开全部;余额型沉底、只显示金额不画进度条
- Overview quota rows collapse to the tightest window, tap to expand; balance-only providers sink to the bottom with no bars
- 右键菜单:新建 Word / Excel / PowerPoint 与自定义文件模板;移动/复制到常用目录;隐藏/显示选中项
- Finder menu: Word / Excel / PowerPoint blanks and custom templates, move/copy to favorites, hide/show items
- 默认输入法:切换 App 后回到选定的系统输入源,默认关闭
- Default input source: return to your chosen input source after app switches, off by default
- 清理快捷键:在指针处打开清理页的可选全局热键,无需辅助功能权限
- Cleanup shortcut: optional global hotkey that opens Cleanup at the pointer, no Accessibility permission needed
- 诊断报告:故障日志始终开启,设置中可导出 ZIP;48 小时性能记录与故障日志永久分离
- Diagnostic reports: always-on fault journal with user-exportable ZIP; 48-hour performance recordings stay separate
调整
- 窗口管理改为原生优先:先按 macOS 窗口菜单分屏,失败再走自有几何
- Window management prefers macOS' own tiling, then falls back to its own placement
- Cursor 主窗口口径改为 auto(Cursor Models)百分比
- Cursor's primary window follows the auto (Cursor Models) percentage
- 仅支持 Apple Silicon,不再产出 x86_64 切片
- Apple Silicon only; x86_64 slices are gone
修复
- 应用退出恢复为即时完成;Grok 周额度重置边沿不再显示为「—」
- Instant quit is back; Grok no longer shows "—" at the weekly reset edge
Full Changelog: v1.9.2...v1.9.3
Light Stats v1.9.2
更新内容 / What's Changed
✨ 新功能 / Features
- add stable Charge Limiter route
- 支持自由录制触发快捷键
🐛 修复 / Fixes
- simplify shortcut key labels
- restore persisted history reliably
- 将 Codex 显示名称改为 ChatGPT
Full Changelog: v1.9.2-beta.7...v1.9.2
Light Stats v1.9.2-beta.7
更新内容 / What's Changed
✨ 新功能 / Features
- add persistent presentation halo
- add permanent gift licensing
🐛 修复 / Fixes
- 修复虚拟显示器崩溃并统一输入设备禁用状态
- hide internal build number
Full Changelog: v1.9.2-beta.6...v1.9.2-beta.7
Light Stats v1.9.2-beta.6
更新内容 / What's Changed
🔧 其他 / Other
- remove charge control helper
Full Changelog: v1.9.2-beta.5...v1.9.2-beta.6
Light Stats v1.9.2-beta.5
更新内容 / What's Changed
✨ 新功能 / Features
- add Find My Mouse spotlight
🐛 修复 / Fixes
- stop DDC I/O after a hung bus
- keep DMG checksum names stable
Full Changelog: v1.9.2-beta.4...v1.9.2-beta.5
Light Stats v1.9.2-beta.4
更新内容 / What's Changed
🐛 修复 / Fixes
- allow distributed helper to launch
- register helper from initial not-found state
Full Changelog: v1.9.2-beta.2...v1.9.2-beta.4
Light Stats v1.9.2-beta.2
更新内容 / What's Changed
✨ 新功能 / Features
- add opt-in charge protection
🐛 修复 / Fixes
- tighten resource rows and show one-decimal load
Full Changelog: v1.9.2-beta.1...v1.9.2-beta.2