Project Icon

activitywatch

开源个人时间跟踪软件 保护隐私数据掌控

ActivityWatch作为开源个人时间跟踪软件,自动记录电脑使用情况,涵盖活跃应用、浏览器标签及键鼠活动。用户完全掌控数据,保障隐私安全。软件具备直观的数据可视化界面,跨平台兼容,支持插件扩展。通过分析时间分配,ActivityWatch有助于提升工作效率。

记录您的活动,让您了解自己如何度过时间
以安全的方式进行,您可以完全掌控数据


网站论坛文档发布
贡献者统计CI概览



您想接收重大公告的电子邮件更新吗?
注册订阅我们的通讯

目录

关于

ActivityWatch的目标很简单:在不损害用户隐私的情况下,尽可能多地收集有价值的生活数据。

为实现这一目标,我们创建了一个应用程序,用于在用户本地机器上安全存储数据,并开发了一系列监视器来记录以下数据:

  • 当前活动的应用程序及其窗口标题
  • 当前活动的浏览器标签页及其标题和URL
  • 键盘和鼠标活动,以检测您是否离开键盘("AFK")

作为用户,您可以自由选择收集多少或少量数据(我们希望一些用户能帮助编写监视器,以便我们收集更多数据)。

截图

您可以在网站上找到更多(和更新的)截图。

安装与使用

可以在发布页面下载。

有关如何开始使用的说明,请参阅文档中的指南

有兴趣从源代码构建吗?这里也有相关指南

这是又一个时间跟踪器吗?

是的,但我们发现大多数时间跟踪器都缺少一个或多个重要功能。

常见的问题:

  • 非开源
  • 用户不拥有数据(非开源选项常见)
  • 缺乏同步功能(即使有:通常是集中式的,同步服务器知道所有信息)
  • 难以设置/使用(大多数开源选项倾向于面向程序员)
  • 数据分辨率低(细节程度低,不存储原始数据,条目之间间隔长)
  • 难以或无法扩展(收集更多数据并不像它本可以的那样简单)

总结:

  • 闭源解决方案存在隐私问题和功能有限的问题。
  • 开源解决方案并非针对最终用户开发,通常不易扩展(缺乏适当的API)。它们也缺乏同步功能。

我们有计划解决所有这些问题,并且进展顺利。请参见下表了解我们的进展。

功能对比

基础功能
用户拥有数据图形界面同步开源
ActivityWatch:white_check_mark::white_check_mark:进行中,去中心化:white_check_mark:
Selfspy:white_check_mark::x::x::white_check_mark:
ulogme:white_check_mark::white_check_mark::x::white_check_mark:
RescueTime:x::white_check_mark:集中式:x:
WakaTime:x::white_check_mark:集中式客户端
平台
WindowsmacOSLinuxAndroidiOS
ActivityWatch:white_check_mark::white_check_mark::white_check_mark::white_check_mark::x:
Selfspy:white_check_mark::white_check_mark::white_check_mark::x::x:
ulogme:x::white_check_mark::white_check_mark::x::x:
RescueTime:white_check_mark::white_check_mark::white_check_mark::white_check_mark:功能有限
追踪
应用和窗口标题AFK浏览器扩展编辑器插件可扩展
ActivityWatch:white_check_mark::white_check_mark::white_check_mark::white_check_mark::white_check_mark:
Selfspy:white_check_mark::white_check_mark::x::x::x:
ulogme:white_check_mark::white_check_mark::x::x::x:
RescueTime:white_check_mark::white_check_mark::white_check_mark::x::x:
WakaTime:x::white_check_mark::white_check_mark::white_check_mark:仅适用于文本编辑器

有关ActivityWatch可以追踪的完整列表,请参阅文档中关于观察器的页面

架构

graph TD;
  aw-qt[<a href='https://github.com/ActivityWatch/aw-qt'>aw-qt</a>];
  aw-notify[<a href='https://github.com/ActivityWatch/aw-notify'>aw-notify</a>];
  aw-server[<a href='https://github.com/ActivityWatch/aw-server'>aw-server</a>];
  aw-webui[<a href='https://github.com/ActivityWatch/aw-webui'>aw-webui</a>];
  aw-watcher-window[<a href='https://github.com/ActivityWatch/aw-watcher-window'>aw-watcher-window</a>];
  aw-watcher-afk[<a href='https://github.com/ActivityWatch/aw-watcher-afk'>aw-watcher-afk</a>];
  aw-watcher-web[<a href='https://github.com/ActivityWatch/aw-watcher-web'>aw-watcher-web</a>];
  aw-sync[<a href='https://github.com/ActivityWatch/aw-server-rust/tree/master/aw-sync'>aw-sync</a>];

  aw-qt -- 管理 --> aw-server;
  aw-qt -- 管理 --> aw-notify -- 查询 --> aw-server;
  aw-qt -- 管理 --> aw-watcher-window -- 监视 --> S1[活动窗口] -- 心跳 --> aw-server;
  aw-qt -- 管理 --> aw-watcher-afk -- 监视 --> S2[AFK状态] -- 心跳 --> aw-server;
  浏览器 -- 管理 --> aw-watcher-web -- 监视 --> S3[活动标签] -- 心跳 --> aw-server;
  SF -- Dropbox/Syncthing等 --> SF;
  aw-server <-- 推送/拉取 --> aw-sync <-- 读/写 --> SF[同步文件夹];
  aw-server -- 提供 --> aw-webui -- 查询 --> aw-server;

  %% 用户 -- 交互 --> aw-webui;
  %% 用户 -- 观察 --> aw-notify;
  %% 用户 -- 交互 --> aw-qt;

classDef lightMode fill:#FFFFFF, stroke:#333333, color:#333333;
classDef darkMode fill:#333333, stroke:#FFFFFF, color:#FFFFFF;

classDef lightModeLinks stroke:#333333;
classDef darkModeLinks stroke:#FFFFFF;

class A,B,C,D,E,G lightMode;
class A,B,C,D,E,G darkMode;

%% linkStyle 0 stroke:#FF4136, stroke-width:2px;
%% linkStyle 1 stroke:#1ABC9C, stroke-width:2px;

关于此仓库

这个仓库是ActivityWatch核心组件和官方模块的集合(使用git submodule管理)。它主要用作提供所有组件的元包,便于打包和安装。这里也是发布完整套件的地方(参见releases)。

服务器

aw-server是核心服务的官方实现,其他ActivityWatch服务与之交互。它为数据存储和查询引擎提供REST API。它还提供aw-webui项目开发的Web界面(作为Web应用的前端部分)。

REST API包括:

  • 访问适用于时间序列/时间段数据的数据存储
  • 针对此类数据的查询引擎和语言

Web应用包括:

  • 数据可视化和浏览器
  • 查询浏览器
  • 导出功能

观察器

ActivityWatch预装了两个观察器:

  • aw-watcher-afk通过键盘和鼠标输入跟踪用户活动/非活动状态
  • aw-watcher-window跟踪当前活动的应用程序及其窗口标题。

ActivityWatch还有很多其他观察器可以跟踪更多类型的活动。比如aw-watcher-web可以跟踪在网站上花费的时间,多个编辑器观察器可以跟踪编码时间,还有更多!完整的观察器列表可以在文档中找到。

  • aw-core - 核心库,不提供可运行模块
  • aw-client - 客户端库,在编写观察器时很有用

文件夹结构

贡献

想要帮忙吗?太好了!请查看CONTRIBUTING.md文件

问题和支持

有问题、建议、遇到问题,或者只是想打个招呼?请在论坛上发帖!

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号