跳转到内容

本地 AI 用量桌面客户端设计

当前实施状态及剩余验收见 执行计划。本目录只保留最新设计, 公开文档、固定版本源码和实际实现分别作为依据;样本、原生桌面与 CI 验证结果分列。 来源能力与限制见 接入矩阵,已授权只读范围见 实施与验证边界。Copilot 配置、看板交互和价格参考 分别见 遥测配置、看板交互及价格。 本机 HTTP 的来源认证、凭据与失败/撤销规则见 接收认证。

产品目标与边界

向用户展示本机各 Agent、各模型在今天和历史期间的可观测用量, 判断主要消耗来自哪里、缓存使用是否变化、哪些来源尚未完整采集。 仅统计本地数据,无账号登录、云同步或外部数据库要求;统计不需要额外调用大语言模型。

“本机”指当前电脑上的 Agent 运行实例产生的日志、数据库、用量文件及显式启用的本机遥测。 读取本机 Agent 对云端模型的调用记录仍属于本地统计;这不要求模型本身离线运行。 本机 WSL/容器须显式添加,记录发行版/实例身份并去重;不自动扫描或启动其环境。 SSH/远端 Gateway、网络共享、云端账单与企业/跨设备账号报表均不接入; 远端导出下载到本地、远端会话同步到本地或文件来自云同步盘,都不能据此证明本机归属。 本地会话导出须保留可核验的本机来源和原生粒度;无法确认归属的记录不纳入总计,并显示排除原因。 没有数据不是零用量,源日志存在也不代表所有模型请求都被记录。

已确认 Windows 11 x64 首发,GitHub CI 保留 Windows/macOS/Linux 的实际构建与测试任务。 本地可用 WSL 2 尝试 Linux 构建;WSLg 冒烟、CI 编译和真实桌面验收分别记录。 Harness Agent 已确认是 Hermes Agent,接入依据见 A24。 用户已允许实施阶段提取本机真实 Agent 数据验证;按最小字段、只读和脱敏流程进行。 F1 IDE 本轮已授权核查,缺安装或本地记录的项移出活动计划,能力限制留在矩阵; Zed 内置和 Junie CLI 归 M8;Zed 1.22.0 的指定外部 Provider 已有两模型/缓存原生用量样本, 不能据此确认 hosted 或其他 Provider; 有本地字段依据的扩展/遥测继续按原阶段推进,详见接入矩阵。

主要决策

决策 作用与约束
Tauri 2 + Rust 后端 系统 WebView;文件与数据库访问集中在本地后端,包体、全进程资源和平台行为按实际环境验收
SQLite,单写者 + WAL 本地事务、唯一约束、修订更新与汇总;无额外数据库服务,保留清理和恢复不得改动源库
Svelte + TypeScript,ECharts 按需导入、SVG 渲染 页面以筛选、设置与图表为主;产物和资源已有实测,未做纯 TypeScript 对照,不推断性能差值
本地历史、显式遥测与本机会话导出 每源独立核验版本、字段、生命周期和本机归属;本地格式未核验的 IDE 后移 F1,不接远端用量 API
区分事件、累计值、区间报表和额度 消息行数、直方图样本数、积分不折算为请求或 token;字段级样本分别核对
稳定主机/来源身份与版本化交换 主机名只用于辨认;聚合与完整标准化明细包分别导入,保留修订、冲突和封存
内置编译型适配器及独立版本目录 按应用升级分发,产品内维护历史实现;未知版本先兼容尝试,通过后保留未核验版本标记

技术依据及替代方案见 架构;来源依据见 调研记录。

页面与交互

软件更新规定自动与手动检查、可选自动下载、全局进度、包身份 和安装版、便携版的替换及恢复行为。

首版为一个主窗口、五个导航入口:总览、趋势、数据源、详情、设置(M6 已按此实施)。 总览/趋势的面板可隐藏与拖拽排序。自动采集为单一全局间隔(默认 1 小时,0=关闭), 逐源可启停并配置间隔/每日/每周计划;登录时启动和 Windows 后台任务默认关闭。 系统任务每分钟检查采集计划是否到期,已保存的设置与实际生效状态分开;关闭自动采集后不扫描。 关闭窗口、退出进程、休眠和注销时能否采集在设置页分别说明,详见 调度规则。

页面 显示内容 操作及失败反馈
总览 今日汇总、小时图、模型/Agent 分布和明细;历史调用与会话、token 用量图 今日/近 2 个自然日/7 天/30 天/365 天;今日和历史独立拖选时段,汇总及分布联动;刷新进度与失败时间可见
趋势 调用与会话、token 用量(日/周/月/时)、API 价格参考、模型/Agent 分布及模型表;最后展示活动热力图和周分布 点击或横向拖选时段,汇总、分布及模型表统一限制范围;恢复操作清除选区;热力图和周分布显示完整范围
数据源 发现/启用状态、版本、本机归属、字段支持、最近/下次提取、错误摘要、归属用户与用户切换 添加本地目录、逐源启停、立即提取、重扫、移除、重新分配归属用户;显示受限原因
详情 用量明细分页表(时间、Agent、模型、类别、输入、缓存读、输出、总 token、耗时、会话);不显示提示词、回答和工具输出 Agent/模型筛选;上/下页与跳页
设置 常规(时区/语言/每周起始日/采集间隔)、分级归档保留(各层统计与手动清理、清理全部数据)、启动与后台、来源身份(主机别名)、导出/导入 预览下次执行与配置影响;Windows 系统任务显式开启/关闭,失败显示实际生效状态

“直观图表”具体包括:调用与会话图、token 图(总 token/输入——缓存命中与未命中 堆叠——/输出/缓存命中率四个子图)、模型/Agent 占比饼图与明细表、 今日小时图、活动日历热力图及周分布。费用、错误率和延迟图按来源能力启用。 同一图避免把 request 和 token 放在相同数轴;比例不能与数量堆叠。 图表必须同时提供可读表格,支持键盘、深浅主题、色觉友好配色及明确单位。 应用图标和界面静态资源见 资源说明,已有本地预览页; 业务界面、托盘和空状态交互验收随 M6 桌面逐操作验收进行。

示意布局用于说明信息层级(M6 已按此实现,面板可隐藏与拖拽排序):

[总览] [趋势] [数据源] [详情] [设置] [时间范围] [采集并刷新] [用户]
输入(含缓存命中)| 输出 | 总 token | 缓存命中 | 未命中缓存 | 缓存命中率
今日小时图 · 模型/Agent 饼图与明细表(总览-今日区块)
调用与会话 · token 用量 · 热力图 · 周分布(总览-历史/趋势页)
用量明细分页表(详情页):时间 / Agent / 模型 / 类别 / 输入 / 缓存读 / 输出 / 总 / 耗时 / 会话

建议增加的统计

内容 用户价值 数据条件与限制 阶段
缓存读取/创建拆分及加权命中率 定位高输入消耗和缓存复用变化 缓存创建计入总输入;未知字段不补零 首版
单次调用 token 均值、P50/P95、异常大请求 识别大上下文、少量高消耗调用 只用逐请求完整数据;不混入会话累计记录 首版,按能力
项目/工作区、主调用/子 Agent/辅助调用占比 识别标题生成、压缩和后台工作的消耗 项目维度默认关闭;父级汇总和子级事件不可双计 首版,按能力
重试、错误、取消及错误请求的已知 token 解释消耗增长和服务稳定性 需要请求生命周期或遥测;日志只记录成功时不显示“成功率 100%” M5
TTFT、请求时长 P50/P95、输出速度 了解交互等待和服务变化 TTFT 要有首 token 时间;速度用对应生成时段,不能从文件时间推断 M5
估算费用、记录费用、本机可归属的积分消耗 管理消耗;比较模型与缓存成本 本地用量与版本化价目;渠道不明不套价,参考估算不等于实际账单 F2;估算与在线刷新默认关闭
同期对比、用量和费用提醒、趋势异常 发现持续增加或某日激增 今天对比昨日相同已过时段;默认关闭的日/月 token 或单币种估算提醒;未知覆盖附说明 M6/F2,用量和费用提醒
采集新鲜度、解析失败、字段完整性 让总计可解释、可核查 只表示已发现来源/已观测记录的覆盖,不能估计未被记录的调用总数 首版
会话数、活跃天数和用量热力图 回看使用习惯 独立会话做 DISTINCT;活跃日期不等于工作时长或生产力 首版

不从 token 推导代码质量、节省工时、个人绩效或模型能力排名。 碳排放、GPU 时间和真实缓存内部命中概率缺乏必要数据,暂不设计为产品指标。 界面显示名为“缓存命中率”,数学定义仍是缓存输入占比(cache_input_ratio), 详见 统计公式。

需求映射

用户要求 设计说明 验收检查
参考 previous-draft 原型核对,保留有用的维度及图表交互 不修改原型;历史迁移独立审计
各模型统计与汇总 数据规则,模型/供应商/Agent 分离 V01–V06,M1/M6
历史保存数据包含主机等来源,支持导入/导出/Merge 判断 来源身份、明细合并 V28,M1a/M6;聚合和完整标准化明细均已实施
模型 API 按量价格快照与 token 费用估算 费用规则及 价格规则 V29/F2,发生时估算与当前 API 参考分别核对
界面多语言与本地化格式 多语言方案调研 V31,F3 调研 + M6 实施
当天刷新 采集流程 V07–V12,M2/M6
自动任务定时提取 调度与后台生命周期 V23/V24,M1/M6
仅本地;全部 Agent 分期尝试提取 本文来源边界及 矩阵 V17/V25,M2–M5/M8 逐适配器验收;本地用量格式尚未核验的 IDE 留 F1
实施可用本机真实数据;IDE 后移;平台方案确认 开工准备 许可与阶段明确;准备检查通过,实施结果另记
Windows 首发、三平台 CI、WSL 构建 平台与 CI V26/V27,M0/M7
Windows 本机与 Linux Podman 安装生命周期;取消 macOS 桌面及特定硬件要求 安装要求、真实来源准备 安装验收、容器来源;宿主系统集成另验
日/周/月汇总 时间规则 V04–V06
其他有意义的统计 本文建议表,按字段能力分期 V01–V06、V18
保留和维度有界面配置 设置规则 V13–V16,M6
图表展示 本文页面说明 V18,真实桌面检查
国内外 Agent 扩展 全部指定工具矩阵及扩展覆盖矩阵 M2–M5/M8 逐适配器验收;F1 不参与首版必验
每个 Agent 一个目录,兼容的历史版本在其内部实现 目录与版本组织、迁移步骤 V30,M2–M5;F1 开始实施时沿用
未知版本先尝试最新解析器 兼容读取规则 V17/V30,M2–M5;F1 沿用
小巧数据库 数据库决策 V11/V15/V20
轻量客户端 资源目标 V19–V21,实际 release 制品
初始设计后继续实施 Plan.md、实施边界 当前交付与剩余条件见计划,原始设计调研保留历史范围

文档职责

Plan.md 维护未完成任务;execution.md 描述任务输出和先后关系;data-contract.md 是统计行为的主要说明文件; adapters.md 维护工具支持范围;research.md 保存来源调研;validation.md 保留稳定验收条件。 current-acceptance.md 汇总最新结果,专项验证记录保存环境、命令、首次失败和历史范围。 实现改变设计要求前先更新对应设计,不在多个地方复制公式或散落互相冲突的支持声明。