数据只在本机
所有记录写在 ~/.orea/(或 $OREA_HOME)下的 JSON Lines 文件里,一行一件事。插件不联网,不上传。
希曼 Sumery Libra(天秤座)
把工作时长、疲劳信号与身体数据放在一起,在你自己的电脑上计算。
IDE 开了十个小时,其中写代码的是多少?开着没动、在看文档、在开会的又是多少?一天结束时很难说清,因为能看到的只有「窗口在前台」。
Libra 的 IDE 插件只在你编辑代码的时候记时间。停下超过 3 分钟,这一段就结束在你最后一次键入的那一刻,之后停下来的时间不计入。
面向 VS Code 与其分支(Cursor、Windsurf 等),以及 GoLand、WebStorm、IntelliJ IDEA 等 JetBrains IDE。实测环境:VS Code 1.139、GoLand 2026.3。
你在当前编辑器里键入、删除、粘贴时,插件往本机文件里追加一行时间。打开文件、翻代码、切窗口、git 在磁盘上改写文件,都不写。
停下想一两分钟再接着写,算同一段;停下超过 3 分钟,这一段在最后一次编辑处结束。切到别的应用时,插件立刻把最后一次编辑写出来。
IDE 插件、DSH 会话、macOS 前台应用各记各的,Libra 取并集:编辑器和终端同时观测到的那段时间只算一次。空闲、锁屏、睡眠从总数里扣掉。
今日工作时长、和昨天比、最长连续工作、休息次数、按小时的分布,以及每一天按来源分开的时段。
~/.orea/ide-heartbeats.jsonl),没有别的:{"source":"ide","kind":"heartbeat","at":1789500000000,"sessionId":"jetbrains:GO:/Users/me/work/libra","appId":"jetbrains:GO","appName":"GoLand","cwd":"/Users/me/work/libra"}
时间、IDE 名称、项目根目录。不记文件名、代码内容、编程语言、窗口标题和按键。
先说清楚它在哪里、做什么、做不到什么。
所有记录写在 ~/.orea/(或 $OREA_HOME)下的 JSON Lines 文件里,一行一件事。插件不联网,不上传。
不装 Libra 桌面应用,这些文件也是你的:tail -f ~/.orea/ide-heartbeats.jsonl 就能看,用任何脚本都能算。字段含义写在插件说明里。
Libra 里每个来源一个开关,关掉是真的停止采集,不是忽略数据;已经记下的不会被删除。插件关掉后几秒内停止写入,不用重启 IDE。
| 来源 | 回答什么 | 回答不了什么 |
|---|---|---|
| IDE 插件 | 在 VS Code 系或 JetBrains IDE 里编辑代码的时段 | 读代码、想方案的时间(超过 3 分钟不编辑就不算) |
| DSH 插件 | AI 编程会话里每一轮、每次工具调用的时间 | 对话内容:只记时间,不记 prompt 与回复 |
| macOS 前台与空闲 | 哪个应用在最前面、多久没碰键盘鼠标、锁屏与睡眠 | 窗口标题(需要额外授权,默认不采) |
| 搜狗输入法 | 今天通过输入法上屏的中文字数 | 英文键盘直接敲的字符;写了什么 |
| Keep | 运动记录、体重、静息心率(不计入工作时长) | 全天步数、睡眠、HRV |
| 专注计时 | 你主动开始的每一轮专注与休息 | 没有开计时的工作 |
插件现在就能用;桌面应用即将推出。
VS Code 与 Cursor、Windsurf 等分支。声明兼容 VS Code 1.75 起,实测 1.139。
命令行:code --install-extension libra-coding-time-x.y.z.vsix(Cursor 把 code 换成 cursor);或在扩展面板「⋯ → 从 VSIX 安装」。
SHA-256:—
GoLand、WebStorm、IntelliJ IDEA、PyCharm、DataGrip 等。声明兼容 2024.2 起,实测 GoLand 2026.3。
Settings → Plugins → ⚙ → Install Plugin from Disk…,选中下载的 .jar。
SHA-256:—
即将推出。插件记下的时间会一直留在 ~/.orea/ 里,桌面应用发布后直接读取,不需要重新采集。
为了防止链接被转发盗用和批量抓取,下载链接由服务器按次生成、一次性有效,同一网络短时间内点得太密会稍等几秒——按钮会自己恢复,不用刷新。
两个插件均按Sumery Libra IDE 插件许可协议提供。
本页用自托管的 Umami 统计访问量与按钮点击:不设 Cookie,不存用户 ID。