同一个终端窗口里切项目,密钥别再共用
一把密钥喂两个项目,月底账单拆不开
每天在同一个终端窗口里切目录,上午写内部工具,下午改客户项目,两处读同一个 FLUXO_API_KEY,月底只剩一行总花费。Fluxo 按真实 token 计费,缓存读写都算在内,也没有月费,每次调用都留下痕迹,可痕迹落在同一把密钥上,你就分不清哪段预算属于哪个项目。
把密钥当成项目资源,而不是个人账号的附属品:每个仓库、每个环境各建一把,名称里带上项目和用途。一把密钥配一个基础地址 https://api.fluxorelay.com,Claude Code、Codex、Gemini CLI 和任何 OpenAI SDK 都走同一套配置,Claude、GPT、Gemini、DeepSeek、Kimi、GLM、Qwen、Grok 等模型都在这把密钥背后,换模型不用换密钥。
这样拆开之后,刷 token 的脚本一跑就能定位到具体项目,不用把全组的调用都当成嫌疑。
- 给每个仓库单独创建一把密钥,并在名称里写清项目和运行环境。
- 把项目密钥放在仓库内的 .env.example 里只写变量名,真实值永远留在本地环境文件中。
- 在团队文档里维护一张项目与密钥对照表,方便月底核对每一笔 token 花费。
环境变量切项目时忘了清掉旧密钥
在终端里 export FLUXO_API_KEY 切项目很顺手,问题是这个变量会活到下一个 shell 会话。你以为在跑实验脚本,其实调用挂在客户的密钥上,花费被记到别人的项目里,等你发现时那笔账已经说不清了。
另一个常见场景是多终端并行:一个窗口跑客户项目,另一个窗口做实验,两个窗口共享同一份 shell 初始化文件时,后启动的窗口会覆盖先启动的导出值。
用 direnv 或编辑器的目录级配置,让密钥随目录进入而加载,离开目录立刻卸载,而不是靠记忆去覆盖旧值。本地和 CI 用同一套命名,避免某个脚本偷偷带上另一把 key。
- 用目录级环境工具加载项目密钥,离开目录时自动卸载,避免旧值跟着你进入下一个任务。
- 切换项目后先打印一次当前环境变量,确认密钥属于预期项目再开始长时间跑批。
- 不要把密钥写进 shell 配置文件的默认导出,那会让所有终端会话共享同一把密钥。
预算里漏算缓存读写的那部分花费
很多人只盯着输出 token 估成本,结果每次预算都超。Fluxo 按真实用量结算,缓存读取和缓存写入都计费,没有月费托底,写缓存的那一次最贵,后面几十次读缓存也会慢慢累积。
以 Claude Sonnet 5.5 为例,agent 循环里反复塞同一份长上下文,第一次是缓存写入,之后全是缓存读取,调用次数一多,读取总量会明显超过输出。换 DeepSeek V4 Flash 跑批处理时,也要把每批的缓存写入单独记账,否则会误判批处理的成本。
本地脚本里把输入、输出、缓存读取、缓存写入四类数字都打印出来,对账时才不用猜。
- 给长上下文任务固定前缀,让缓存命中率提高,减少重复的缓存写入开销。
- 为每个项目设软性预算阈值,走到八成就在终端里提醒,而不是月底才发现超支。
- 每次跑批前后各记录一次用量差值,把批处理的真实成本摊到每个任务上。
CI 流水线里硬编码密钥,统计口径乱掉
把密钥直接写进流水线配置最省事,但这类调用和本地调试挤在同一把密钥下,你分不清哪部分是自动化测试的固定开销,哪部分是真实开发消耗。
CI 用独立密钥,名称里带上 ci 和项目名,并在流水线日志里打印本次运行编号。出问题时按编号反查,比在几百万 token 里翻找快得多。真实值交给密钥管理工具注入,配置文件里只留变量名。
- 为持续集成单独创建密钥,让自动化的消耗和本地开发在统计里天然分开。
- 在流水线日志中输出运行编号,方便把一笔花费对应到具体构建和提交。
- 永远不要把密钥提交进版本库,临时调试也要使用本地未跟踪的环境文件。
定时任务同样要单独一把,不然每天凌晨的回归测试会把你的开发数据搅成一团。
项目改名后密钥标签没有跟着更新
改名、拆仓、合并仓库都很常见,密钥标签不跟着改,三个月后你自己也看不懂那行账单属于谁。统计只能按标签聚合,标签错了,报表就跟着错。
把改名当成一次小型迁移:先建带新标签的密钥,切换调用方,确认无误再作废旧密钥。你邀请进来的同事付费之后,你会拿到一份返佣份额,这时候每个人的密钥和标签更要清楚,不然分账时说不明白。
- 项目改名时同步更新密钥标签和对照表,让历史账单与新账单可以连续阅读。
- 作废旧密钥前保留一段只读观察期,确认没有遗漏的定时任务仍在调用它。
- 团队成员各自使用个人密钥,避免共享一把之后无法分辨谁的脚本在产生花费。
只看月度总花费,不看单次会话的峰值
月底总额看着不高,但某个下午的自动化脚本可能一口气吃掉当月一半预算。总量统计会把这种尖峰抹平,等你发现时往往已经晚了。
按天聚合每个项目密钥的花费,同时盯单次会话的输入长度。如果某天平均值突然翻倍,多半是上下文管理出了问题,比如整个仓库被重复塞进请求。
- 按天聚合每个项目密钥的花费,把突然翻倍的日期标记出来再回溯当天的提交。
- 监控单次会话的输入 token 长度,避免把整个仓库内容重复塞进每一次请求。
- 每周花十分钟导出一次花费摘要,比月底一次性看报表更容易发现异常。
拆分项目密钥不用一次做完,先从最吵的那个仓库开始就好。如果你也想把项目花费拆干净,欢迎注册一个 Fluxo 账号,用两把密钥跑上一周看看报表是否清楚。过程中遇到具体问题,登录后在联系页面留言即可。