
【免费下载链接】codeburnFree, local tool to track AI coding token usage and cost across 37 tools and agents (Claude Code, Cursor, Codex, Gemini and more), by model, project, and task. npx codeburn项目地址https://gitcode.com/gh_mirrors/co/codeburn点击查看免费下载CodeBurn 是一个免费的本地工具用于追踪 Claude Code、Cursor、Codex、Gemini 等 37 款 AI 编程工具与 Agent 的 token 用量和成本按模型、项目、任务维度统计。gnome/README.md 介绍了它的 GNOME Shell 扩展把AI 编码成本追踪器直接放进 GNOME 桌面顶栏无需打开终端即可随时查看今日花费、调用次数、token 趋势与预算告警。读完本文你将掌握该扩展的完整安装、配置、卸载流程理解面板指示器与弹出面板的界面构成以及它如何通过codeburn status --format menubar-json与 CLI 数据管道协同工作并学会本地开发调试扩展的方法。前置要求扩展的运行环境要求非常简洁详见 gnome/README.mdGNOME Shell 45 或更高版本扩展的 metadata.json 声明支持的 Shell 版本为[45, 46, 47, 48, 49, 50]即 GNOME 45 起的各主要版本。CodeBurn CLI通过npm i -g codeburn全局安装。扩展本身不解析会话日志所有数据都来自 CLI 输出。glib-compile-schemas编译 GSettings schema 的工具通常随glib2-develFedora/RHEL 系或libglib2.0-devDebian/Ubuntu 系一起提供。从实现层面看install.sh 会调用glib-compile-schemas ${SCRIPT_DIR}/schemas/来编译设置模式因此该工具是安装的必要依赖。安装扩展安装过程围绕一条命令展开cd gnome chmod x install.sh ./install.sh安装脚本 install.sh 实际做了以下几件事编译 GSettings schemaglib-compile-schemas schemas/生成设置模式的二进制缓存。创建安装目录${HOME}/.local/share/gnome-shell/extensions/codeburncodeburn.dev。拷贝扩展文件metadata.json、extension.js、indicator.js、dataClient.js、prefs.js、stylesheet.css以及schemas/与icons/目录下的全部资源。扩展的 UUID唯一标识是codeburncodeburn.devGNOME Shell 依据该目录名识别扩展。重启 GNOME Shell安装完成后需要重启 Shell 使扩展生效重启方式取决于你的显示协议Wayland注销后重新登录Wayland 下 Shell 不能热重启。X11按AltF2输入r回车即可快速重启 Shell。启用扩展gnome-extensions enable codeburncodeburn.dev启用后顶栏右侧会出现一个 火焰图标旁边显示当前周期花费的金额标签如$2.7k。图标与标签的构建逻辑见 indicator.js面板按钮由codeburn-flame图标与codeburn-label成本标签组成标签在开启紧凑模式Compact Mode后会被隐藏。配置扩展配置方式有两种gnome-extensions prefs codeburncodeburn.dev或者打开GNOME Extensions 应用gnome-extensions-app在 CodeBurn Monitor 条目下点击齿轮图标。偏好窗口本身由 prefs.js 用 libadwaitaAdw.PreferencesPage构建分为Display、Budget Alerts、Providers、Advanced四个分组。设置项速查设置默认值说明Refresh Interval30s轮询 CodeBurn CLI 的间隔Default PeriodToday打开面板时默认显示的时间周期Compact ModeOff隐藏成本标签只显示图标Budget Threshold$0每日预算阈值0 禁用Budget AlertsOff花费超出阈值时显示警告CLI Path(自动)自定义codeburn可执行文件路径这些设置的真正定义位于 GSettings schema 文件 schemas/org.gnome.shell.extensions.codeburn.gschema.xml 中其中还包含了 README 表格之外更精细的选项键名类型默认值范围/取值说明refresh-intervalu无符号整数305 ~ 300 秒自动刷新数据间隔即上表的 Refresh Intervaldefault-periods字符串todaytoday/week/30days/month/all打开扩展时默认显示的周期budget-thresholdddouble0.00 ~ 1000偏好面板中的 SpinRow 上限每日预算阈值美元设为 0 表示禁用budget-alert-enabledb布尔false—是否启用预算告警compact-modebfalse—面板上只显示图标隐藏成本标签force-dark-modebfalse—弹窗始终使用深色主题不跟随系统show-exact-costsbfalse—显示完整金额如$2,655.23而非紧凑写法如$2.7kcodeburn-paths留空则使用 PATH自定义 codeburn 可执行文件路径provider-filtersall—默认的 provider 过滤项disabled-providersas字符串数组[]—从成本核算与显示中排除的 provider 列表偏好窗口中的Providers分组即为disabled-providers提供了开关prefs.js关闭某个 provider 的开关会将其 id 追加到disabled-providers数组重新打开则移除。可用的 provider 开关包括 Claude、Codex、Copilot、Cursor、Devin、Droid、Gemini、Goose、Kilo Code、Kiro、Kimi、OpenClaw、OpenCode、Pi、Qwen、Roo Code、Antigravity 等prefs.js。设置如何即时生效指示器在 indicator.js 中对关键设置注册了changed::监听修改后无需重启扩展refresh-interval变化 → 重启轮询定时器_restartRefreshLoopcompact-mode变化 → 立即显隐面板成本标签codeburn-path变化 → 更新 DataClient 路径并强制刷新default-period变化 → 切换默认周期并刷新budget-threshold/budget-alert-enabled→ 重算预算告警force-dark-mode/show-exact-costs/disabled-providers→ 立即重渲染界面。理解面板与弹出界面扩展的入口在 extension.jsenable()时实例化CodeBurnIndicator并通过Main.panel.addToStatusArea添加到状态区disable()时销毁指示器。指示器的完整实现位于 indicator.js弹窗内容相当丰富品牌头部CodeBurn 标题与 AI Coding Cost Tracker 副标题L215-L223。Agent 标签页自动探测本机已安装的 AI 工具检测~/.claude/projects、~/.codex/sessions、~/.config/Cursor/User/globalStorage/state.vscdb、~/.copilot/session-state、~/.local/share/devin/cli、~/.kimi/sessions、~/.pi/agent/sessions等目录是否存在见 L501-L513只显示检测到的 provider 标签若只检测到一种则显示为徽章而非标签页。Hero 区大号金额如$0.00、当前周期标签、calls 次数、session 数量与本地模型节省金额。周期标签页Today / 7 Days / 30 Days / Month / 6 Months 五个周期快速切换。洞察胶囊Activity活动、Trend趋势、Forecast预测、Pulse脉搏、Stats统计五个视图。Token 柱状图最近 19 天的 input/output token 柱状图L611-L676悬停某根柱子可查看该日的 token 与成本详情图表顶部汇总 In/Out token 总量。活动表Top 10 活动按成本排序显示名称、成本、turns、1-shot 比例并配有成本占比进度条其下是 Top 3 模型行模型名、成本、本地模型节省额、calls。优化发现FindingsCTA当optimize数据中有发现时显示X optimize findings / save ~$Y按钮点击后在终端中运行codeburn optimizeL364-L374。页脚货币选择器USD/EUR/GBP/JPY/CNY 等 18 种货币见 L57-L76、Refresh 按钮、Full Report按钮运行codeburn report --period period --provider provider见 L449-L451和设置齿轮按钮。其中 Forecast 视图会基于最近 7 天日均花费推算整月预估并给出日环比Day-over-day百分比Pulse 视图展示成本、calls 与缓存命中率cache hitStats 视图展示最爱模型、活跃天数、连续使用天数和峰值日L743-L805。货币与汇率指示器会读取~/.config/codeburn/config.json中的currency.code作为默认货币L853-L867切换货币时通过codeburn currency code子命令持久化L873-L881并从 Frankfurter 汇率 API 拉取 USD 到目标货币的实时汇率用于换算L883-L906。金额格式化的核心逻辑formatCostL88-L96非精确模式下金额 ≥ 1000 时压缩为$2.7k、≥ 10000 时取整为$3k精确模式则输出带千分位逗号的完整金额。数据链路扩展如何拿到账单数据扩展本身不直接解析 Claude/Cursor 等的会话文件而是把数据获取委托给 CodeBurn CLI。核心实现在 dataClient.js构造命令L66-L86默认执行codeburn status --format menubar-json --period period [--provider provider] --no-optimize若在设置中配置了codeburn-path则用自定义路径替换codeburn路径会经过SAFE_ARG_RE /^[A-Za-z0-9 ._/\-]$/白名单校验防止注入。PATH 增强由于 GNOME Shell 启动时的环境变量可能不含用户级 npm 全局 bin 目录DataClient 会把/usr/local/bin、~/.local/bin、~/.npm-global/bin、~/.volta/bin、~/.bun/bin、~/.cargo/bin、~/.asdf/shims、~/.local/share/fnm/aliases/default/bin、~/.local/share/pnpm追加到子进程 PATH 中L7-L20、L88-L96确保能找到 CLI。超时与取消15 秒超时强制结束子进程TIMEOUT_SECONDS 15L121-L126新请求会取消上一次未完成的请求Gio.Cancellable。解析将 CLI 的 stdout 按 JSON 解析JSON.parse并按period:provider键缓存L44-L63。在 CLI 侧status命令由 src/main.ts 定义--format支持terminal、menubar-json、json三种输出--period支持today、week、30days、month、all、lifetime--no-optimize跳过优化发现以加快响应另有--day指定单日并覆盖--period、--from/--to自定义日期范围、--days多日逗号分隔等参数。扩展侧还使用--no-timeline之外的默认行为扩展未显式传入但--no-optimize已保证速度。面板每次打开周期/提供者标签切换时都会通过_refresh()触发一次新的 CLI 调用并用 300 秒CACHE_TTL_MS的 TTL 缓存避免频繁唤起子进程indicator.js。卸载扩展gnome-extensions disable codeburncodeburn.dev rm -r ~/.local/share/gnome-shell/extensions/codeburncodeburn.dev第一条命令停用扩展第二条删除安装脚本拷贝到用户扩展目录的完整目录。本地开发与调试不安装即可测试改动# 编译 schema改动 gschema.xml 后必须执行 glib-compile-schemas schemas/ # 用符号链接指向源码目录改动即时生效 ln -sf $(pwd) ~/.local/share/gnome-shell/extensions/codeburncodeburn.dev # 实时查看 GNOME Shell 日志 journalctl -f -o cat /usr/bin/gnome-shell开发时请注意schema 修改gschema.xml中新增或修改键后必须重新执行glib-compile-schemas schemas/并重启 Shell否则设置无法识别。日志指示器在初始化、刷新出错等场景会调用log()写入 Shell 日志例如CodeBurn: refresh error: ...见 indicator.js用上述journalctl命令可实时跟踪。CLI 未找到时的表现若codeburn不在 PATH 中面板标签会显示!弹窗内提示 CodeBurn CLI not found 与安装命令npm i -g codeburnL819-L830。主题适配弹窗支持深色/浅色主题默认跟随系统org.gnome.desktop.interface的color-scheme也可通过force-dark-mode强制深色L981-L992所有样式类定义在 stylesheet.css 中弹窗主体尺寸为 340×540 像素。常见问题排查现象原因与处理面板上一直显示!CLI 未找到或执行出错。确认npm i -g codeburn已执行若 npm 全局 bin 不在 GNOME Shell 的 PATH 中在设置中显式填写codeburn-path数据长时间不更新检查 Refresh Interval5~300 秒设置也可在弹窗页脚手动点击 Refresh 强制刷新设置了预算不弹警告需同时满足Budget Alerts 开关打开、Budget Threshold 大于 0、当前周期花费 ≥ 阈值indicator.js告警文案为Budget exceeded: 花费 / 阈值切换 provider 后数据为空该 provider 未被_detectProviders探测到本机没有对应工具的会话目录时不会出现在标签页中也可在 Preferences 的 Providers 分组检查是否被disabled-providers关闭弹窗内容异常打开终端运行codeburn status --format menubar-json --period today查看 CLI 原始输出扩展只是原样渲染该 JSON小结CodeBurn GNOME 扩展把AI 编程成本监控下沉到桌面面板一级顶栏一个火焰图标 金额标签点开后是完整的成本看板——多 Agent 标签、周期切换、token 柱状图、活动/趋势/预测/脉搏/统计五大洞察视图、预算告警、多货币换算与优化建议入口。其设计精妙之处在于职责分层扩展gnome/只负责 UI 呈现与轮询调度所有统计口径与数据解析均由 CodeBurn CLI 的status --format menubar-json完成因此扩展本身体积小、升级维护简单。对于在 Linux 桌面上重度使用 AI 编程工具、又不想反复打开终端查账单的开发者这是一个即装即用的理想方案。赞分享【免费下载链接】codeburnFree, local tool to track AI coding token usage and cost across 37 tools and agents (Claude Code, Cursor, Codex, Gemini and more), by model, project, and task. npx codeburn项目地址https://gitcode.com/gh_mirrors/co/codeburn点击查看免费下载相关推荐重温经典GNOME Shell 桌面立方体扩展重温经典GNOME Shell 桌面立方体扩展 项目介绍 你是否还记得 Compiz 的 3D 桌面立方体那个曾经让无数 Linux 用户为之着迷的炫酷特效探索科技新维度GNOME Shell 桌面立方体扩展探索科技新维度GNOME Shell 桌面立方体扩展 项目介绍 对于那些怀念Linux早期3D桌面立方体效果的用户有一款新的开源项目将为您的GNOME Sh9Router 配额跟踪与用量监控实战指南实时追踪 Token 消耗、成本估算与告警机制9Router 配额跟踪与用量监控实战指南实时追踪 Token 消耗、成本估算与告警机制 导读 本文围绕 9Router 的配额跟踪Quota Tracki人工智能LLM 网关AI 应用创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考