新现在可以统计 Claude Code 与 Codex 为你工作了多久

看清你的一天,
究竟去了哪儿。

Weft 安静地待在菜单栏里,把你用过的应用、窗口和网站,编织成一天里反复回到的几条工作主线;编码 Agent 替你干活的时长,也记在同一条时间线上。所有分类都由 Apple Intelligence 在你的 Mac 上完成,数据从不外传。

免费开源macOS 26 及以上经 Apple 签名与公证

7 MB原生 SwiftUI 应用,没有 Electron,也不内置浏览器。
0 服务器无需账号,没有云端,也没有任何统计。
本机 AI分类和摘要都来自设备端的 Apple Intelligence。
免费 · MIT开源,没有订阅,也没有付费版。
核心理念

人很少一次只做一件事,时间追踪也不该假装如此。

写代码、查文档、回条消息,再回到代码,大多数时间追踪工具会把这些记成一长串应用切换。Weft 看到的是贯穿其中的那条线:30 分钟内的同类工作合成一条工作流,短暂的岔路折叠进去,相互重叠的工作流像日历里的日程一样并排摆放。

实际发生的70次应用切换
编织成
Weft 呈现的5条工作主线
09:0010:0011:0012:00

每条工作流,一句话说清

设备端模型会为每条工作流写一句摘要,告诉你那段时间到底做了什么,全程在本机完成。

重叠的工作,并排呈现

写代码时插进来一个会议?两者分栏并排显示,就像日历那样。

噪音自动收起

不足 10 分钟的工作流移到日志里,空闲时段折叠成一条细线,一天看下来始终清爽。

编码 Agent

Agent 到底干了多久,一目了然。

Weft 读取 Claude Code 和 Codex 本就保存在你 Mac 上的日志,统计每个会话真正在工作的时长:今天有 Agent 在为你干活的时间、所有会话加起来的总时长,以及最多有几个在同时运行。每个会话都会出现在时间线上,就在你自己的工作旁边。

2h 50m

今日 Agent 时长

至少有一个 Agent 在为你工作的时间。

4h 5m

所有会话合计

两个 Agent 并行工作一小时,就记为两小时。

2个同时

并行运行

今天 3 个会话中,同一时刻最多有几个在工作。

24m

等待 Agent

Agent 干活时你离开电脑的时间,也算进你的一天。

点开任意会话

它工作了多久、处理了几条提示词、等了你多久,以及这段时间里你在做什么,都清清楚楚。

  1. 1

    按真实工作时间计,挂着不算

    一轮从你发出提示词开始,到 Agent 给出回复结束。会话空等你下一条指令的那几个小时不算,等你授权或回答问题的停顿也会被剔除。时间线上,左侧色条实心处是 Agent 在工作,浅色处是在等你。

  2. 2

    等 Agent 也是在工作

    Agent 干活时你起身离开,这段时间照样计入每日目标,上限由你设定。专注分数则只衡量你自己。

  3. 3

    多台机器,一并统计

    借助 HAPI,你在其他机器上运行的 Agent 也会出现在这里;本机已经能读到的会话不会重复计算。

Claude Code Codex 更多 Agent(通过 HAPI)

Weft 只保存每个会话的标题、项目文件夹和工作时段,从不保存你的提示词或 Agent 的回复。

隐私为本

你的一天,完完整整留在你的 Mac 上。

不用注册账号,没有要同步的服务器,也没有需要手动关闭的数据统计。Weft 用 Apple 的设备端模型完成分类、摘要和回顾,历史记录就存在一个你能在访达里打开的文件夹中。

你的 Mac
你在用什么应用、窗口标题、标签页地址
Apple Intelligence在设备端完成分类与摘要
你的历史记录存放在 ~/Library 中的一个文件夹,随时打开、导出或删除
没有账号、没有服务器、没有统计。无需同步,也就无从泄露。

Weft 会记录

  • 最前方的应用
  • 它的窗口标题
  • 受支持浏览器中当前标签页的地址
  • 编码 Agent 的工作时段

Weft 从不记录

  • 屏幕截图
  • 键盘输入
  • 屏幕上显示的内容
  • 你的提示词和 Agent 的回复

由你掌控

  • 不记录窗口标题
  • 网址只保留域名
  • 完全排除指定的应用和网站
  • 随时暂停,一键导出 CSV

想换个模型?可以在 Settings → Model 中接入任意兼容 OpenAI 的 API,比如 DeepSeek、OpenRouter 或 OpenAI。远程模型只会收到需要它分类的应用、网站和窗口标题,以及用于生成回顾的每日汇总;接入 Ollama 或 LM Studio 的话,连这些也不会离开你的 Mac。

地道原生

用起来就是 macOS,几乎不耗电。

Weft 用 Swift 和 SwiftUI 编写,外观、滚动和交互都与 Mac 上的其他应用一致。它不会每秒轮询好几次窗口,而是等 macOS 通知有变化时看上一眼,然后继续休眠。

7MB

整个应用的大小

没有 Electron,也不内置浏览器。安装包只有 4 MB 左右。

事件驱动

没有轮询循环。只在应用、窗口或标题变化时醒来,外加每分钟一次的轻量心跳。

知道你何时离开

空闲 5 分钟、合上屏幕或锁屏时就停止计时。开会时例外。

不止于此

小巧,却出乎意料地完整。

专注分数

每天一个 0–100 的分数,衡量深度工作与分心程度。点开就能看到完整的计算方式。

自动分类

内置约 360 个常见应用和网站,其余交给 Apple Intelligence,任何结果都可以手动修正。

专注时段与拦截

从菜单栏开始专注、会议或休息时段。一旦跑去容易分心的地方,Weft 会把你轻轻拉回来。

健康作息

按时提醒你休息,每日目标会告诉你:今天已经够了。

每日与每周回顾

一段简短的当日回顾和明日建议,以及本周与上周的对比。

报告

按类别和应用查看每天、每周的时间分布,并与近期对比。

自定义规则

按应用、网站或窗口标题设定规则,Weft 会照你的意思归类,连过去的记录也一并更新。

自选模型

所在地区用不了 Apple Intelligence?可以接入 DeepSeek 等兼容 OpenAI 的 API,或本地的 Ollama、LM Studio。

数据归你

随时把全部数据导出为 CSV。想清除历史记录,删掉一个文件夹就行。

读懂你的浏览器

支持读取 Safari、Chrome、Arc、Edge、Brave、Vivaldi、Opera、Dia 和 Comet 的当前标签页。

自动化

通过 weft:// 链接,从 Raycast、Alfred、快捷指令或任意脚本控制 Weft:开始时段、暂停记录、打开今日页面。

$ open "weft://focus?minutes=25"
$ open "weft://meeting"
$ open "weft://pause"
有何不同

与常见的时间追踪工具相比

项目Weft常见的云端追踪工具
价格免费,MIT 许可按月订阅
账号不需要必须注册
历史数据存放在你的 Mac对方的服务器
分类方式设备端 AI云端
一天的呈现方式工作主线应用切换日志
编码 Agent 时长按会话精确统计—
应用本身原生,7 MB常为 Electron
源代码开源闭源
开始使用

一分钟即可上手。

安装

  1. 1

    下载

    从 GitHub Releases 获取最新的 Weft-<版本号>.dmg。

  2. 2

    拖入「应用程序」

    已经过 Apple 签名和公证,打开时不会弹出安全警告。

  3. 3

    授予辅助功能权限

    这样时间线才能显示你在哪个文档或项目里,而不只是哪个应用。

需要 macOS 26 或更高版本。推荐开启 Apple Intelligence,但并非必需:没有它,Weft 依然认识数百个应用和网站,其余的会先给出猜测,等你之后确认。如果所在地区暂不支持 Apple Intelligence,也可以在 Settings → Model 中接入 DeepSeek 等兼容 OpenAI 的服务,或本地的 Ollama。

或者自己编译

需要先安装 Xcode 和 Homebrew。

$ brew install xcodegen
$ git clone https://github.com/tiann/weft.git
$ cd weft && xcodegen generate
$ xcodebuild -project Weft.xcodeproj \
    -scheme Weft -derivedDataPath build/DerivedData build

欢迎提交问题和 Pull Request。架构和测试方法请看 AGENTS.md。

常见问题

你可能想知道

Weft 真的免费吗?
是的。Weft 采用 MIT 许可证,没有订阅、没有付费版,也不需要账号。你可以阅读、修改并自行编译源代码。
Weft 是怎么统计编码 Agent 时长的?
它读取 Claude Code 和 Codex 保存在你 Mac 上的日志(~/.claude/projects 和 ~/.codex/sessions),按轮次计时:从你发出提示词到 Agent 给出回复,再减去它等你授权或回答的时间。会话在两次提示词之间空闲的时间不算。Today 页面会显示至少有一个 Agent 在工作的时长和所有会话的合计时长,时间线上的每个会话也会标出自己的工作时长。配合 HAPI 0.33 或更高版本,其他机器上的 Agent 也会一并统计。
必须开启 Apple Intelligence 吗?
不必,但推荐开启。没有它,Weft 依然能识别内置的应用和网站以及你自己设定的规则,其余的会根据应用的 App Store 分类或网站名称来猜测。你也可以接入任何兼容 OpenAI 的 API,比如 DeepSeek,或本地运行的 Ollama、LM Studio。
Weft 到底能看到什么?
最前方的应用、它的窗口标题,以及受支持浏览器中当前标签页的地址。它从不截屏、不记录键盘输入,也不读取屏幕内容。你可以关闭窗口标题记录、网址只保留域名,或完全排除某些应用和网站。
会拖慢 Mac 或耗电吗?
它就是为此而设计的。Weft 是原生应用,没有轮询循环:只在 macOS 报告应用、窗口或标题变化时做出反应,其余时间每分钟才看一眼。
Weft 和 Rize 有什么不同?
Weft 借鉴了 Rize,但出发点不同:人很少一次只做一件事,所以 Weft 不展示应用切换日志,而是展示你反复回到的那几条工作主线。此外,它免费、开源,并且完全在你的 Mac 上运行。
数据存在哪里?怎么删除?
存放在 ~/Library/Application Support/Weft/。可以在 Settings → Data 中导出为 CSV;想清除的话,退出 Weft 并删除这个文件夹即可。

看看今天的时间都去了哪儿。

免费、开源,从第一分钟起就是私密的。