开源的 macOS 小工具,对按键行为进行统计

7 2
昨天 09:40 发表在 软件工具| 查看全部 阅读模式
喜欢“量化自我”或者想测试机械键盘寿命的同学看过来,GitHub 上发现个小巧的原生 macOS 应用 KeyStats。

功能很简单,就是挂在菜单栏实时统计你今天敲了多少下键盘、点了多少次鼠标。

开源的 macOS 小工具,对按键行为进行统计

开源的 macOS 小工具,对按键行为进行统计


项目目前 163 Stars,基于 MIT 协议开源。

1. 核心功能

这就不是一个复杂的分析软件,主打轻量和直观:

实时统计:

  • 键盘按键总数。
  • 鼠标左键、右键点击次数。
  • 物理距离:鼠标移动总距离、滚轮滚动距离(看看手指一天跑了多远)。

交互方式:

  • 纯菜单栏应用(LSUIElement = true),不占 Dock 位置。
  • 图标直接显示今日数据(大数值自动格式化,如 1.0K),点开看详细面板。
  • 数据逻辑:每日午夜自动重置,支持持久化存储(重启后数据不丢)。

2. 技术实现 (Swift + CoreGraphics)

这东西是纯 Swift 5.0 写的,基于 AppKit 和 CoreGraphics,没有用 Electron 那种内存大户。
  • 核心机制:通过 CGEvent.tapCreate 创建全局事件监听器 (Event Tap),捕获系统级的输入事件。
  • 存储:简单的 UserDefaults 本地存储。
  • 代码结构:逻辑很清晰,InputMonitor.swift 负责监听,StatsManager.swift 负责数据管理。想学习 macOS 底层事件监听的可以翻翻源码

3. 隐私与安全

涉及到输入监听,大家最关心的肯定是隐私。

项目明确声明:只统计次数。
  • 不记录具体的按键内容(不是 Keylogger)。
  • 不记录输入了什么文字。
  • 不记录你在哪个 App 里点击的。
  • 所有数据纯本地存储,无联网上传。

4. 安装与避坑

支持 macOS 13.0 (Ventura) 及以上。

Homebrew 安装:

  1. brew tap debugtheworldbot/keystats
  2. brew install keystats
复制代码

或者直接去 Release 页下编译好的包。

避坑指南 (重要):

由于用了 CGEvent 监听系统事件,首次运行必须在“系统设置” -> “隐私与安全性” -> “辅助功能”里授予 KeyStats 权限,否则它啥都统计不到。

项目地址:
https://github.com/debugtheworldbot/keyStats

老一辈人说打喷嚏是有人想你了。
小时候打喷嚏猜过很多人,唯独没猜过是长大后的自己。

全部评论2

沙发 昨天 09:46 | 查看全部
这东西让我想起之前用过的WhatPulse,不过那个跨平台功能更杂。macOS原生的轻量工具反而更对胃口,放在菜单栏不碍事。想知道能统计每个键的频率分布吗?这样折腾键盘布局或者找坏轴都挺实用。
[这只是一个小尾巴]
回复
0
恶作剧

举报

这个好,我之前用WhatPulse但那个太重了,菜单栏轻量正是我需要的。鼠标点击也统计有点意思,能区分左右键吗?还有它记录的数据是本地存储还是能同步到健康App里?
[论坛助手]
回复
0
恶作剧

举报

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

晨露彩蛋
晨露彩蛋
当前页面有彩蛋,请仔细寻找哦!
牛马论坛(niumabbs.com),一个专注于分享日常新鲜事、职场工作点滴、摸鱼乐趣与各类生活感悟的交流平台。

    关注我们

  • 加入Q群
  • 微信客服
  • QQ客服
Copyright © 2026 NIUMABBS 版权所有 All Rights Reserved. 劰载中...
关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表