来源:GitHub Trending · 2.4k stars
链接:https://github.com/kenn-io/agentsview
官网:https://agentsview.io
日期:2026-06-14
关键词:AI Coding Agent / Session Analytics / ccusage 替代 / 本地优先 / SQLite


价值点

  1. 核心命题:把 27 个 AI 编程 Agent 散落在各处的会话日志,统一索引到本地 SQLite,提供 Web UI + CLI 查询
  2. 核心数据支持 27 种 Agent(Claude Code/Codex/Cursor/Copilot CLI/Gemini CLI 等),自称比 ccusage 快 100×,2.4k stars,54 个 release
  3. 关键创新:本地优先 + 多后端架构(SQLite 主存储 → PostgreSQL 团队共享 → DuckDB 分析镜像)
  4. 适用人群:日常用 ≥ 2 个 AI 编程工具的开发者;想算 token 成本/限流原因的工程师;做 AI 工具内部观测的团队
  5. 实操价值:一条 agentsview serve 起一个本地仪表盘,立刻看到所有 Agent 今天烧了多少 token

目录


一、ccusage 的痛点:只看 Claude Code 不够

如果你日常用 AI 编程工具,大概率不只用一个。我自己同时挂着 Claude Code、Codex、Cursor 三家,外加偶尔的 Gemini CLI 测试。问题来了:

每个工具的 token 成本和会话日志都散在不同地方,没有任何一个工具给你统一视图。

ccusage 是社区里最主流的 token 用量分析工具,但它只支持 Claude Code。我想看 Cursor 这周烧了多少?Codex 上次为什么命中限流?对不起,要么自己写脚本,要么逐个工具翻 UI。

kenn-io/agentsview 把这个空白补上了:一个工具索引所有编程 Agent 的会话。它不是另一个 ccusage 复刻,而是 ccusage 的超集


二、agentsview 真实的技术栈

很多文章把这个项目说成 Python + SQLite,这是错的。打开 GitHub 仓库语言占比,真相是:

语言 占比 用途
Go 75.3% 主语言,CLI + 服务端 + 索引器
TypeScript 13.7% Web 前端
Svelte 8.6% UI 框架
Rust 1.0% Tauri 桌面壳(macOS app)
Shell 0.4% 安装脚本
Python 0.4% 周边工具

构建要求:Go 1.26+(需 CGO,因为要绑 SQLite)、Node.js 22+。

为什么这件事重要?因为 Go 的选择决定了几个工程结果:

  1. 单二进制部署brew install 完就一个 binary,不需要 Python 虚拟环境
  2. 跨平台一致:macOS/Linux/Windows 同一套代码,没有 Python 那种"在我机器上能跑"
  3. 性能可信:Go 解析 JSON Lines 比 Python 快一个数量级,"100× 比 ccusage 快"的说法在工程上站得住

如果你打算 fork 或贡献,先装 Go 1.26 不要瞎配 Python。

三、27 个 Agent 的统一会话索引

这是项目最核心的工程价值。它知道 27 个不同 Agent 把会话存在哪里:

~/.claude/projects/                                    Claude Code
~/.codex/sessions/                                     Codex
~/.copilot/                                            Copilot CLI
~/.gemini/                                             Gemini CLI
~/.local/share/opencode/                               OpenCode
~/.openhands/conversations/                            OpenHands CLI
~/.cursor/projects/                                    Cursor
~/.local/share/amp/threads/                            Amp
~/.iflow/projects/                                     iFlow
~/.zencoder/sessions/                                  Zencoder
~/Library/Application Support/Zed/                     Zed
~/Library/Application Support/Code/User/               VSCode Copilot
~/.pi/agent/sessions/                                  Pi
~/.qwen/projects/                                      Qwen Code
~/.openclaw/agents/                                    OpenClaw
~/.qclaw/agents/                                       QClaw
~/.kimi/sessions/                                      Kimi
~/.kiro/sessions/cli/                                  Kiro CLI
~/Library/Application Support/Kiro/                    Kiro IDE
~/.snowflake/cortex/conversations/                     Cortex Code
~/.hermes/sessions/                                    Hermes Agent
~/.workbuddy/projects/                                 WorkBuddy
~/.forge/                                              Forge
~/.local/share/piebald/                                Piebald
~/.warp/                                               Warp
~/Library/Application Support/Positron/User/           Positron Assistant
~/.gemini/antigravity/                                 Antigravity

每个 Agent 用自己的 JSON Lines / SQLite / 自定义格式存会话,agentsview 把这些全部规范化到一个本地 SQLite 数据库,然后跑 FTS5 全文搜索。

我最看重这个细节:每加一个新 Agent 支持,作者要去逆向它的会话格式。维护这个映射表本身就是高强度活——这才是项目真正的护城河,不是那个"100× 快"的宣传语。


四、与 ccusage 的真实对比

仓库 README 原文写的是:

“agentsview usage is a fast, local replacement for ccusage and similar tools.”

这里有几个容易被中文媒体错误转述的细节:

维度 agentsview ccusage
支持的 Agent 27 种 仅 Claude Code
加载机制 会话数据预索引到 SQLite,查询是 SQL 每次运行重新解析原始文件
作者声明的性能 比 ccusage 快 100×
定价数据 通过 LiteLLM 自动获取(含离线 fallback)
缓存计费支持 支持 prompt-caching(cache creation/read tokens)
过滤维度 --since / --until / --agent / --timezone

关键澄清

  1. “100× 快” 是作者声明,没有第三方独立基准。但从原理上说合理——SQLite 索引查询 vs 实时解析 GB 级 JSON Lines,差一两个数量级是常识。
  2. 快的本质不是"算法更牛",而是"已经索引好了"。第一次扫描其实也要花时间,agentsview 默认有个守护进程持续维护索引。
  3. ccusage 的优势:跨平台、Python 依赖少、可以临时跑一次不留任何痕迹。如果你只用 Claude Code 且不在意累计统计,ccusage 仍然轻量够用。

五、多后端架构:SQLite → PostgreSQL → DuckDB

这是项目最有工程趣味的一部分。很多人以为本地优先就只有 SQLite,但 agentsview 设计成了三层:

┌─────────────────────────────────────────────────┐
│  Layer 1: SQLite(主存储)                       │
│  - 本地主归档库                                   │
│  - 文件同步、FTS5 全文搜索、可写 UI               │
│  - 所有原始会话数据先写这里                       │
└─────────────────────────────────────────────────┘
         │
         ├──→ pg push(可选)
         ▼
┌─────────────────────────────────────────────────┐
│  Layer 2: PostgreSQL(团队共享)                 │
│  - 通过 `agentsview pg push` 推送                │
│  - 只读服务(团队成员查询,不写回)              │
│  - 适合 5-50 人团队共享 token 用量看板           │
└─────────────────────────────────────────────────┘
         │
         ├──→ duckdb push(可选)
         ▼
┌─────────────────────────────────────────────────┐
│  Layer 3: DuckDB(便携分析)                     │
│  - 通过 `agentsview duckdb push` 镜像            │
│  - 只读、便携 .duckdb 文件                       │
│  - 支持 Quack 协议远程访问                       │
│  - 适合做月度/季度复盘、BI 工具接入              │
└─────────────────────────────────────────────────┘

这个设计很妙

  • 个人用:一个 SQLite 文件搞定,零运维
  • 团队用:套个 PostgreSQL 做共享视图,但写入仍在每个人本地
  • 分析用:DuckDB 适合接 BI 工具或 Pandas
# 个人开始
agentsview serve              # 跑一个 127.0.0.1:8080 的本地服务

# 团队进阶
agentsview pg push --watch    # 守护进程同步到 PG
agentsview pg serve           # 团队只读访问

# 分析高阶
agentsview duckdb push
agentsview duckdb quack serve # 暴露 Quack 协议给 BI 工具

六、对工程师的启示

🔧 如果你是工程师

  1. 明天就装上brew install --cask agentsview,跑 agentsview serve,第一次知道你这周到底烧了多少 token
  2. 拒绝 ccusage 路径:如果你用 ≥ 2 个 AI 编程工具,agentsview 的 ROI 远高于装多个分析工具
  3. 借鉴它的"统一索引"思路:你自己做内部 Agent 平台时,把所有 Agent 的会话往一个 SQLite 里塞,是性价比最高的可观测性方案

📊 如果你是技术管理者

  1. 跑团队版:5-50 人团队装好 agentsview pg push,立刻有团队级 AI 编程工具用量看板
  2. 定价透明化:LiteLLM 自动拉模型定价,财务能直接看到每个项目/每个人的 token 成本
  3. 不用 SaaS:所有数据留在本地/自有 PG,不像 SaaS 工具要传会话内容到第三方——对涉密代码强相关

🚀 如果你是创业者/产品经理

  1. 可观测性是新护城河:AI 工具会议越来越像"对各种 Agent 的元控制",谁先做好统一观测谁就赢生态位
  2. 本地优先是对的:会话内容含 API key、商业代码、私密讨论,云端方案在 B 端基本不可行
  3. 27 这个数字会继续涨:每周都有新 Agent,谁能持续把映射表维护下去谁就是事实标准

七、避坑指南

⚠️ 坑 1:第一次扫描可能很慢
        - 如果你的 Claude Code 用了一年,会话日志可能 5GB+
        - 建议第一次扫描前 nice/ionice 限制资源
        - 跑 agentsview serve 后大概 5-15 分钟才完成首次索引

⚠️ 坑 2:远程访问要小心
        - 默认绑 127.0.0.1,DNS rebinding 防御已开
        - 但如果你用 --public-url 暴露到公网,会话内容裸奔
        - 内含 API key 和私密代码,强烈建议套一层 SSH 隧道或 VPN

⚠️ 坑 3:100× 是作者声明
        - 没有独立基准测试
        - 但量级合理(索引查询 vs 文件解析)
        - 你自己跑一下 agentsview usage daily 和 ccusage 对比即可

⚠️ 坑 4:遥测默认开启
        - 通过 PostHog 发送 daemon_active 事件(含版本/OS/CPU)
        - 关掉:export AGENTSVIEW_TELEMETRY_ENABLED=0

八、复现指南

# 1. 安装(macOS / Linux)
curl -fsSL https://agentsview.io/install.sh | bash

# Windows
powershell -c "irm https://agentsview.io/install.ps1 | iex"

# Homebrew
brew install --cask agentsview

# Docker
docker run --rm -p 127.0.0.1:8080:8080 ghcr.io/kenn-io/agentsview:latest

# 2. 启动服务
agentsview serve
# 浏览器打开 http://127.0.0.1:8080

# 3. 看每日 token 成本(替代 ccusage)
agentsview usage daily

# 按模型细分
agentsview usage daily --breakdown

# JSON 输出(接 BI 工具)
agentsview usage daily --json

# 4. 单会话深挖
agentsview session usage <session-id>

# 5. 状态栏一行摘要(嵌 tmux/zsh)
agentsview usage statusline

# 6. 团队同步(可选)
agentsview pg push --watch
agentsview pg service install      # 装成系统服务

延伸阅读

类型 资料 链接
项目 README agentsview 官方 https://github.com/kenn-io/agentsview
官网 agentsview.io https://www.agentsview.io
中文导读 txtmix 深度解析 https://txtmix.com/posts/tech/agentsview-kenn-io-agent-monitoring-tool-guide/
ccusage(对标) ryoppippi/ccusage https://github.com/ryoppippi/ccusage
LiteLLM(定价后端) BerriAI/litellm https://github.com/BerriAI/litellm

一深思AI · AI 情报站 · 2026-06-14

关注:一深思AI · 每周深度技术精读

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐