必须从网关日志提取带会话标识的原始调用记录并按Agent实例归因聚合,因Agent Space不自动注入agent_id;需确认日志含agent标识、提取≥1000 tokens的调用、用jq和Python脚本归类统计、生成带色块区分的费用图表。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要精准统计 Agent Space API 的 Token 消耗,必须绕过平台默认的 Key 级汇总视图,直接从网关日志中提取带会话标识的原始调用记录,并按 Agent 实例归因聚合——因为 Agent Space 不在请求头中自动注入 Agent ID,不手动打标就无法区分是哪个智能体烧掉了 token。
确认日志是否含 Agent 标识
Agent Space 默认网关日志(如 gateway.log)不包含 【agent_id】 字段,但支持通过 【request_id 前缀 + workspace 路径】 双重锚点还原归属。进入 ~/.agent-space/logs/ 目录,执行:
grep -m 1 'request_id' gateway.log.* | head -n 1
若输出中 request_id 形如 finance-agent_abc123 或 workspace 路径含 /workspace/reporting/,说明已启用命名空间隔离;否则需立即修改 Agent 启动配置,在 config.yaml 中补全 agent_id: "reporting-agent" 并重启服务,否则后续所有统计将失效。
提取过去30天原始调用日志
方法一:Linux/macOS 命令行快速提取
cd ~/.agent-space/logs && zgrep -E 'total_tokens|request_id' gateway.log.*.gz | grep -E '"total_tokens":[0-9]{4,}' > raw_tokens.jsonl
方法二:Windows PowerShell(需先启用 gzip 支持)
Get-ChildItem gateway.log*.gz | ForEach-Object { gunzip -c $_.FullName } | Select-String -Pattern '"total_tokens":\d{4,}' | Out-File raw_tokens.jsonl -Encoding UTF8
注意:必须过滤出 【total_tokens ≥ 1000】 的记录,低于该值的多为健康检查或空响应,计入会严重稀释真实消耗密度。
按 Agent 实例聚合 Token 与费用
第一步:用 jq 提取结构化字段
jq -r '.request_id, .total_tokens, .workspace // "unknown"' raw_tokens.jsonl > parsed.csv
第二步:运行 Python 脚本识别 Agent 名称(无需安装依赖)
脚本核心逻辑:若 request_id 以 claw-finance_ 开头 → agent_name = "finance";若 workspace 包含 /organizer/ → agent_name = "organizer";其余统一归为 "unknown"
第三步:按 agent_name 分组累加 total_tokens,并套用当前模型单价(如 Qwen3-4B:$0.01 / 1K tokens)计算费用
示例输出:
finance: 2,156,700 tokens → $21.57
organizer: 842,300 tokens → $8.42
unknown: 1,002,900 tokens → $10.03
第四步:生成 CSV 文件,字段顺序为 agent_name,total_tokens,cost_estimate,保存为 agent_token_summary.csv
生成本地费用分布图表
使用 Python 内置库 matplotlib(如未安装则 pip install matplotlib)执行以下脚本:
读取 agent_token_summary.csv → 绘制横向柱状图 → 保存为 cost_distribution.html(内嵌 SVG,离线可打开)
图表必须标注每个 Agent 的 cost_estimate 数值,且将 finance 和 organizer 两列用不同色块区分;【unknown 类别必须标红并置于最底部】,提示你存在未打标的高风险调用。


















