VS Code Companion

TimeLens VS Code 扩展

记录你在 VS Code 中的编码时间,按语言、项目、工作区维度统计,并与桌面端 TimeLens 数据打通。

版本 v0.4.0 · 支持 VS Code ≥ 1.100.0

它如何工作

扩展在 VS Code 启动后激活,通过监听编辑器活动判断当前编码会话,按项目与语言聚合时间,并周期性推送到本机 TimeLens API。

会话追踪

基于编辑器焦点与空闲检测生成编码会话。空闲超过阈值后会自动拆分会话,避免长时间离开被误统计。

语言 & 项目统计

支持 basic / standard / detailed 三档追踪粒度,分别记录总时长、语言时长、项目时长。

本地优先

数据仅发送到本机 TimeLens API,不收集源代码内容或文件路径,API 密钥仅存储在本地 VS Code 设置中。

扩展功能一览

编码会话追踪

自动记录每次在 VS Code 中的活跃编码时间,桌面端 VS Code Insights 页面展示总时长与会话数。

按语言统计

standard / detailed 模式下,统计各类编程语言的使用时长并在桌面端展示排行榜。

按项目统计

detailed 模式下按项目/工作区聚合时长,帮助识别主要投入项目。

扩展桥接密钥

通过 TimeLens 桌面端生成的桥接密钥对请求签名,未授权工具无法访问本地 API。

智能端口发现

支持手动 API 基础 URL、缓存模式(时长 / 下次启动前)与自动备用端口扫描,适配本地 API 动态绑定的场景。

侧边栏看板

内置 VS Code 侧边栏视图,显示连接状态、今日编码时长、语言/项目排行与快捷操作按钮。

两种安装方式

1

方式 A:Marketplace

在 VS Code 中搜索 TimeLens 或访问 Marketplace 页面 安装。

2

方式 B:本地 VSIX

克隆仓库后进入 vscode-extension/ 目录,运行 npm install && npm run package 生成 .vsix,然后在 VS Code 中通过“从 VSIX 安装”加载。

3

配置桥接密钥

首次激活时会提示配置。也可随时运行命令 TimeLens: Set/Update Extension Bridge Key 或点击侧边栏配置按钮。

设置项说明

v0.4.0 起新增 timelens.apiBaseUrlCacheModetimelens.apiBaseUrlCacheSeconds,与浏览器扩展保持一致。

设置项说明
timelens.enabled 是否启用追踪。
timelens.apiBaseUrl 本地 API 地址,默认 http://127.0.0.1:49152。如果桌面端实际绑定了备用端口,可手动修改或清空后依赖自动发现。
timelens.apiBaseUrlCacheMode duration:按秒缓存发现的 API 地址;startup:本次 VS Code 运行期间缓存,重启后重新发现。
timelens.apiBaseUrlCacheSeconds duration 模式下的缓存秒数,默认 60,最大 3600
timelens.bridgeKey 从 TimeLens 桌面端 Settings 获取的 Extension Bridge Key,用于请求签名。
timelens.trackingLevel basic(仅时长)、standard(+ 语言)、detailed(+ 项目)。
timelens.flushIntervalSeconds 队列刷新间隔,默认 30 秒,范围 5–600 秒。
timelens.idleThresholdSeconds 空闲拆分阈值,默认 120 秒,范围 30–1800 秒。

获取桥接密钥

打开 TimeLens 桌面端 → Settings → Local API / Extension Bridge → 点击复制 Extension Bridge Key。侧边栏和命令面板均可输入并保存。

可用命令

命令作用
TimeLens: Open Sidebar打开 TimeLens 侧边栏视图。
TimeLens: Enable Tracking启用编码追踪。
TimeLens: Disable Tracking禁用编码追踪。
TimeLens: Show Tracking Status显示当前状态与待同步队列大小。
TimeLens: Set Detail Level切换 basic / standard / detailed 追踪粒度。
TimeLens: Set/Update Extension Bridge Key输入或更新桥接密钥。
TimeLens: Open Dashboard打开桌面端 Dashboard(编辑器标题栏图标)。

常见问题

提示 “Extension bridge key authentication failed”

  1. 从 TimeLens 桌面端 Settings 重新复制 Extension Bridge Key。
  2. 运行 TimeLens: Set/Update Extension Bridge Key 粘贴保存。
  3. 确认桌面端 Local API 已启用并正在运行。
  4. 重启 VS Code。

提示 “未连接到 TimeLens 桌面端”

  1. 启动 TimeLens 桌面应用。
  2. 检查 timelens.apiBaseUrl 是否与桌面端实际端口一致。
  3. 如果 49152 被占用,可清空地址让扩展自动扫描备用端口,或查看桌面端显示的实际端口。

数据未同步

  1. 确认已配置桥接密钥。
  2. 确认侧边栏中 Tracking 处于启用状态。
  3. 打开 VS Code Output 面板,选择 TimeLens 通道查看日志。
  4. 尝试运行 TimeLens: Open Dashboard 强制刷新快照。

端口 49152 被占用

TimeLens v2.0.2 桌面端会在 49152 不可用时自动扫描 49152–50151 并绑定到第一个可用端口。扩展也支持自动回退扫描;如未触发,请检查 timelens.apiBaseUrl 是否留空或正确。

继续阅读