这个项目能做什么
cctrace 是一个本地、零配置的 TLS 拦截代理,位于编码代理(Claude Code、OpenAI Codex CLI、Grok CLI、Kimi Code CLI 和 opencode)与其各自 API 之间,实时捕获每个 HTTP 调用。与仅查看聊天端点的基本 URL 代理不同,cctrace 在传输层进行拦截,覆盖 OAuth 流程、使用量/信用端点、MCP 注册表调用、引导请求和遥测数据,这些是简单的 URL 重写无法观察到的。
该工具自动生成 CA 证书,并通过 HTTPS_PROXY 配置代理以路由流量,无需手动设置。第一方主机被解密并完全捕获;外部主机(npm、GitHub、apt)作为不透明的字节计数隧道传递,保持跟踪精简。
实时 Web UI 提供分类的请求视图,带有筛选标签、解码的 SSE 流、推理努力和提示缓存判定、首令牌延迟以及每请求估计成本。会话以人类计数的方式重建,带有轨迹栏显示随时间变化的通道、工具行命名触及的文件、子代理分支、模型周期和压缩边界。会话回放可逐步或播放任何捕获的会话,并在活动运行期间实时尾随。
上下文视图显示代理随时间变化的窗口,带有交互式概览:每个线路请求的堆叠列按六种上下文类别着色,压缩标记和墙钟时间分解。选择可以三种方式读取:作为上下文图(冰柱分解)、作为线性记录流或作为注入和压缩的事件时间线。
成本跟踪显示配额去向,带有缓存读/写/输入/输出分解,识别缓存未命中及其原因(TTL 过期、前缀更改、529 重试),并显示客户端轮询的账户配额。insights 命令按天、项目和客户端聚合跨运行数据,可选深度扫描缓存分割和配额百分比。
doctor 命令诊断会话的最新请求窗口,识别未使用的工具模式、重复的框架注入、重复内容和缓存低效,并提供可操作的建议。
跟踪保存为 .jsonl 文件(归档为 .jsonl.zst),可随时通过 cctrace view 重新打开,并可导出为 markdown 转录或离线 HTML 快照。跨项目仪表板显示所有实时和已完成运行,支持一键会话视图、停止控制和存储管理。
凭据在写入磁盘前从头部、正文和 URL 中删除。跟踪存储在项目树之外的 ~/.local/share/cctrace/ 中。该工具需要 Bun、openssl 和目标 CLI,可通过 npm 或独立编译二进制文件获取。
评论
0 评分人数达到10人后显示
登录后参与讨论。