Releases: JamesLi-dev/torli-stats
Releases · JamesLi-dev/torli-stats
Release list
Torli Stats 1.6.1
Torli Stats 1.6.0
English
- Introduces a shared adaptive color system for Dashboard and Statistics views. Semantic accent, activity, success, caution, warning, and critical tokens now adapt consistently to light and dark appearances.
- Refines Dashboard process and network modules:
- CPU, memory, download, and upload headers have consistent interactive sorting feedback.
- Process CPU and memory values use aligned usage thresholds, while network lists reserve stable row space and animate rate updates without changing card height.
- Improves battery accessory grid balance and aligns card-header icon rendering.
- Adds global menu-bar item spacing controls in Status Bar settings, with a
-8 ptto+8 ptoffset and a restore-system-default action.- Applying a spacing change updates the host-scoped macOS preference, refreshes SystemUIServer and ControlCenter, restarts compatible user menu-bar agents, and relaunches Torli Stats.
- Foreground work apps and unsupported/system helper processes are not force-terminated; such items can retain their previous spacing until their owning app restarts.
- Improves Statistics overview sections by surfacing key period metrics directly, showing clearer no-data states, and hiding empty daily-detail lists.
中文
- 为 Dashboard 和统计页引入统一的自适应颜色系统。强调色、活动色、成功、提示、警告和严重状态等语义令牌现会在浅色与深色模式下保持一致。
- 改进 Dashboard 的高占用进程与网络模块:
- CPU、内存、下载和上传标题提供一致的可交互排序反馈。
- 进程 CPU 与内存数值采用统一的使用阈值;网络列表保留稳定的行空间,并在不改变卡片高度的情况下平滑更新速率。
- 优化电池配件网格的平衡感,并统一卡片标题图标的层级渲染。
- 在状态栏设置中新增全局菜单栏项目间距控制,支持
-8 pt至+8 pt偏移和恢复系统默认值。- 应用间距会更新 host-scoped macOS 偏好、刷新 SystemUIServer 和 ControlCenter、重启兼容的用户菜单栏代理,并重新启动 Torli Stats。
- 不会强制终止前台工作 App、未受支持的进程或系统辅助进程;这类项目可能需在所属 App 重启后才会使用新间距。
- 优化统计概览区:直接展示周期关键指标、提供更清晰的无数据状态,并在没有活动时隐藏空的每日详情列表。
Torli Stats 1.5.5
English
- Refines the Settings visual system without changing settings behavior:
- Simplifies all Settings pages to a two-level hierarchy: the window background and section card. Account rows, status messages, sensor capabilities, reorder rows, and destructive actions no longer introduce nested cards.
- Unifies section surfaces, field labels, inline help, drag-order rows, tab selection, and empty/status presentation across Appearance, Status Bar, Dashboard, Monitoring, Development, System, Notes, and Statistics settings.
- Clarifies action hierarchy: connection and authorization actions are prominent; refresh, test, and copy actions are secondary; remove, uninstall, reset, and clear actions are consistently destructive.
- Keeps a neutral active-tab treatment with stronger contrast, avoiding a blue-tinted Settings surface.
中文
- 改进 Settings 视觉系统,不改变任何设置行为:
- 将所有设置页面统一为两层结构:窗口背景与 Section 卡片。账户行、状态提示、传感器能力项、排序行和危险操作不再创建嵌套卡片。
- 统一外观、状态栏、面板、监控、开发统计、系统、便签和统计设置中的卡片表面、字段标签、行内提示、拖拽排序行、页内 Tab 及空状态/状态信息。
- 明确操作层级:连接和授权为主操作;刷新、测试和复制为次操作;移除、卸载、重置和清空统一为危险操作。
- 保持中性的 Tab 激活态并提高对比度,避免为 Settings 表面增加蓝色调。
Torli Stats 1.5.3
Torli Stats 1.5.2
What's Changed
- Release 1.5.2 dashboard panel refinements by @JamesLi-dev in #29
Full Changelog: v1.5.1...v1.5.2
Torli Stats 1.5.1
What's Changed
- Refine dashboard statistics and accessory layout by @JamesLi-dev in #26
- Unify Notes settings card background by @JamesLi-dev in #27
- Release 1.5.1 dashboard refinements by @JamesLi-dev in #28
Full Changelog: v1.5.0...v1.5.1
Torli Stats 1.5.0
English
- Adds privacy-preserving Codex Token activity tracking from local
token-countevents. Activity is shown as a Dashboard heatmap and is cached per Codex Home in a hashed system-cache path; conversation content is never stored or read. - Adds activity heatmaps to Development Statistics for coding time and AI tokens, and to Typing Statistics for daily key counts across the retained year of local history.
- Refines the Statistics settings layout with consistent card surfaces, compact activity controls, localized labels, and clearer period, overview, and daily-detail sections.
- Revises memory reporting to estimate memory in use without file cache, report macOS memory pressure separately, and clarify the displayed status.
- Improves the Dashboard Codex card with compact token-activity spacing and account display behavior that keeps the first two accounts visible while allowing additional accounts to expand.
- Refactors Notes editor and deck views, settings state, and statistics components into focused source files for easier maintenance.
中文
- 新增保护隐私的 Codex Token 活动统计:仅读取本地
token-count事件,在 Dashboard 以热力图展示;缓存按 Codex Home 隔离并使用哈希化的系统缓存路径,不读取或保存对话内容。 - 开发统计新增编码时长与 AI Token 热力图;输入统计新增基于本地保留一年记录的每日键数热力图。
- 优化统计设置页布局,统一卡片背景与样式,精简活动切换控件,并改善统计周期、概览和每日明细的层次。
- 调整内存指标:估算不含文件缓存的已用内存,单独显示 macOS 内存压力,并明确状态含义。
- 优化 Dashboard Codex 卡片的 Token 活动间距与账号展示方式:默认显示前两个账号,其余账号可展开查看。
- 按职责拆分 Notes 编辑器和 Deck 视图、设置状态及统计组件,便于后续维护。
Torli Stats 1.4.2
English
- Adds optional local Codex CLI activity tracking with daily active duration, latest active time, and a seven-day trend.
- Restricts activity tracking to checking whether a
codexprocess exists; terminal content, command arguments, project paths, and input are never recorded. - Displays Codex Credits, unlimited-credit status, and rate-limit warnings alongside quota information and recent refresh details.
- Adds a menu-bar Codex account display limit of one, two, or three accounts, while keeping the Dashboard collapsed to at most two accounts before expanding.
- Adds confirmation before removing a Torli Stats-managed Codex account and clarifies that the local Codex Home and sign-in state are preserved.
- Refreshes the settings sidebar spacing and icon sizing, and aligns typing chart bars with the development statistics blue.
中文
- 新增可选的本地 Codex CLI 活跃统计,显示每日活跃时长、最近活跃时间和近 7 天趋势。
- 活跃统计仅检测是否存在
codex进程,不记录终端内容、命令参数、项目路径或输入内容。 - 在额度信息旁显示 Codex Credits、Credits 不限量状态和限额提示,并保留最近刷新信息。
- 菜单栏 Codex 逐账号模式新增显示 1、2 或 3 个账号的上限;面板仍默认最多展示两个账号,其他账号可展开查看。
- 移除 Torli Stats 管理的 Codex 账号前增加确认,并明确保留本机 Codex Home 和登录状态。
- 优化设置侧栏图标与文字间距和图标尺寸,并将输入统计柱图统一为开发统计使用的蓝色。
Torli Stats 1.4.0
English
-
Torli Stats 1.4.0 adds configurable monitoring pause behavior, richer battery and process information, and additional dashboard/status-bar display settings.
-
Monitoring:
- Adds manual pause/resume through the status-bar menu.
- Adds
manualanddashboardClosedpause reasons with localized dashboard and resume messages. - Supports persisted
manualMonitoringPausedandbackgroundMonitoringEnabledsettings. - Resolves monitoring state across manual pause, system sleep, display sleep, screen lock, night schedule, dashboard visibility, and adaptive sampling.
- Keeps explicit refreshes available while automatic sampling is paused.
- Pauses automatic Codex, WakaTime, and typing-stat refresh work during paused states; adaptive low-frequency mode continues to affect local metric sampling separately.
- Re-evaluates monitoring when the new settings change.
-
Dashboard:
- Adds persisted toggles for
showDashboardDeviceInfo,showTemperatureTags, andshowProcessPID; all default to enabled and are included inresetToDefaults(). - Device information, CPU/GPU temperature tags, and detailed process PIDs can now be hidden independently.
- Popover sizing is recalculated when these dashboard display settings change.
- Process columns now follow
processSort: CPU, memory, or both forcombined; PID remains available only in detailed density when enabled.
- Adds persisted toggles for
-
Battery and thermal status:
BatterySnapshotnow includesSystemThermalState, mapped fromProcessInfo.ThermalState; unknown thermal states are treated ascritical.- Non-compact power views display a localized thermal-status tag alongside battery health and cycle count.
- Battery ring colors now distinguish low, warning, moderate, and normal levels; health and thermal states use corresponding severity colors.
- Bluetooth battery rings use each device’s battery level color, including compact layouts.
-
Process ranking and status data:
ProcessReaderaddsProcessSortOption.combined, ranking processes by normalized CPU plus normalized memory usage before applying the configured limit.MetricsStorenow passes raw download and upload rates intoStatusLineinstead of formatting them there.- New persisted status-bar settings include
statusBarFontSize,showStatusBarMetricIcons,networkRateUnit, andnetworkRateDecimalPlaces; changes to these settings trigger a status-bar title update.
-
Release and platform constraints:
CFBundleShortVersionStringis updated from1.3.0to1.4.0.LSMinimumSystemVersionremains15.0.- No new permission declarations are added in
Info.plist; adaptive idle detection continues to use the permission-freeCGEventSource.secondsSinceLastEventTypepath shown in the implementation.
中文
-
Torli Stats 1.4.0 新增可配置的监控暂停行为、更丰富的电池与进程信息,以及额外的 Dashboard 和状态栏显示设置。
-
监控:
- 状态栏菜单新增手动暂停/恢复监控入口。
- 新增
manual和dashboardClosed暂停原因,并提供对应的 Dashboard 与恢复提示本地化文本。 - 新增持久化设置
manualMonitoringPaused和backgroundMonitoringEnabled。 - 监控状态现在综合处理手动暂停、系统睡眠、显示器睡眠、屏幕锁定、夜间计划、Dashboard 可见性和自适应采样。
- 自动采样暂停时仍保留显式刷新能力。
- 暂停状态下会暂停 Codex、WakaTime 和 typing 的自动刷新;自适应低频模式仍单独影响本地指标采样。
- 新增设置发生变化时会重新评估监控状态。
-
Dashboard:
- 新增持久化开关
showDashboardDeviceInfo、showTemperatureTags和showProcessPID;默认均为启用,并纳入resetToDefaults()。 - 设备信息、CPU/GPU 温度标签以及详细进程 PID 现在可以分别隐藏。
- 这些 Dashboard 显示设置变化时会重新计算弹出面板尺寸。
- 进程列现在跟随
processSort显示:CPU、内存,或combined模式下同时显示两者;PID 仅在启用且密度为详细模式时显示。
- 新增持久化开关
-
电池与温度状态:
BatterySnapshot新增SystemThermalState,由ProcessInfo.ThermalState映射而来;未知温度状态按critical处理。- 非紧凑模式的电源视图会在电池健康度和循环次数旁显示本地化温度状态标签。
- 电池环现在区分低电量、警告、中等和正常电量,并为健康度与温度状态使用相应严重程度颜色。
- Bluetooth 电池环会根据各设备自身电量显示颜色,紧凑布局同样适用。
-
进程排序与状态数据:
ProcessReader新增ProcessSortOption.combined,按照归一化 CPU 使用率与归一化内存使用量之和对进程排序,再应用配置的数量限制。MetricsStore现在向StatusLine传递原始下载和上传速率,不再在此处预先格式化。- 新增持久化状态栏设置
statusBarFontSize、showStatusBarMetricIcons、networkRateUnit和networkRateDecimalPlaces;这些设置变化会触发状态栏标题更新。
-
发布版本与平台限制:
CFBundleShortVersionString从1.3.0更新为1.4.0。LSMinimumSystemVersion仍为15.0。Info.plist未新增权限声明;实现中继续使用标注为无需权限的CGEventSource.secondsSinceLastEventType路径进行自适应空闲检测。
Torli Stats 1.3.0
English
- Redesigns Torli Stats, Torli Notes, and detailed-statistics preferences with compact left-side navigation and a consistent right-side detail layout.
- Unifies their neutral light/dark surfaces and adds a native frosted-glass background that extends through the titlebar, while retaining readable material setting cards.
- Shows the specific monitoring-pause reason in Dashboard, such as night schedule, screen lock, display sleep, or system sleep.
- Avoids redundant adaptive-sampling broadcasts and timer recreation; pause state and its Dashboard message now update atomically, while inactive Settings windows reduce visual-effect compositing work.
- Refines Notes settings and library-window spacing, alignment, and compact sizing; navigation shortcuts appear last and inactive navigation rows no longer draw a blue focus ring.
- Brightens the shared Settings glass surface to reduce wallpaper colour cast, and adds constrained, column-following daily-chart tooltips for typing and development details.
- Adds date ticks to detailed daily charts, and refines the Notes library with a compact, theme-aware glass shell that preserves each note's readable paper colour.
- Makes the Notes library sidebar an AppKit-native splitter with a persisted 180–340pt width and a 200pt default, avoiding editor flicker while resizing.
- Checks GitHub's latest-release redirect instead of its rate-limited REST API, so update checks remain available on shared networks.
- Stops low-frequency disk, Bluetooth, process, and sensor reads when no visible Dashboard module needs them, while retaining battery reads for power policy decisions.
- Reduces each automatic WakaTime refresh from five requests to three by fetching only the selected breakdown and deriving the 7-day trend from the 30-day summary; the alternate breakdown loads only when its detail view is opened.
- Consolidates Notes preferences into the main Settings window, with existing Notes menu and Deck entry points opening its new Notes page.
- Establishes an application-wide language preference shared by Torli Stats and Torli Notes, preserving the existing System Default, English, and Simplified Chinese choices.
- Completes English and Simplified Chinese coverage across Settings, Dashboard, statistics, WakaTime, Codex, sensors, status-bar content, diagnostics, tooltips, and accessibility labels; adds a safe Restart action when a language change needs relaunching.
- Moves Typing and Developer Statistics into the main Settings window as a dedicated Statistics page, so all preferences and detailed metrics share one navigation surface.
- Refines Settings visual consistency with aligned sidebar icons, responsive Menu Bar controls, compact English labels, and matching material cards for Notes and Statistics pages.
- Makes legacy installed sensor helpers return localized diagnostic text and corrects localized numeric-format paths that could otherwise display corrupted values or crash.
中文
- 重构 Torli Stats、Torli Notes 与详细统计窗口:使用紧凑的左侧导航和统一的右侧详情布局。
- 统一亮色与暗色下的中性配色,并加入延伸至标题栏的原生毛玻璃背景,同时保留清晰可读的材质化设置卡片。
- Dashboard 现在会按夜间时段、屏幕锁定、显示器休眠或系统睡眠展示具体的监控暂停原因。
- 避免智能采样的冗余状态广播与定时器重建;暂停状态和 Dashboard 文案改为原子更新,设置窗口失焦后也会减少毛玻璃合成开销。
- 优化便签设置与所有便签窗口的间距、对齐和紧凑尺寸;快捷键移至导航末尾,未选中导航项不再显示蓝色焦点框。
- 提亮统一设置毛玻璃表面以减少壁纸色偏,并为输入统计和开发统计加入受边界约束、随柱子横向移动的每日 Tooltip。
- 为详细统计的每日图表补充日期刻度,并优化所有便签窗口:使用紧凑且跟随主题的毛玻璃外壳,同时保留每张便签清晰可读的纸张主体色。
- 所有便签左栏改为 AppKit 原生可调分栏,宽度可在 180–340pt 间调整、默认 200pt 且会记忆;拖动时不再引发编辑器闪动。
- 更新检查改用 GitHub 最新发布页面的跳转地址,不再依赖容易触发限额的 REST API,共享网络下也能正常检查更新。
- 未显示对应 Dashboard 模块时,不再进行低频磁盘、蓝牙、进程和传感器读取;电池读取仍会保留,以支持电源策略判断。
- WakaTime 自动刷新从每次 5 个请求降至 3 个:仅请求当前选择的概览,并由 30 天汇总推导近 7 天趋势;另一周期的概览仅在打开其详情时按需加载。
- 便签设置已并入主设置窗口;菜单和便签栏入口会直接打开新的“便签”页面。
- 建立由 Torli Stats 与 Torli 便签共用的应用语言偏好,保留原有的跟随系统、English 与简体中文选项。
- 完成 Settings、Dashboard、统计、WakaTime、Codex、传感器、状态栏、诊断、Tooltip 与无障碍文案的 English / 简体中文覆盖;语言变更需要重启时提供安全的“重启”操作。
- 输入统计与开发统计已并入主设置窗口的“统计”页面,偏好与详细指标共用同一套导航入口。
- 统一设置视觉细节:对齐侧栏图标,优化状态栏设置的自适应布局和英文短文案,并为便签、统计页面补齐一致的材质化圆角卡片。
- 兼容旧版已安装传感器辅助进程的诊断文案本地化,并修复可能显示异常数值或导致闪退的本地化数字格式路径。