技术深度剖析
Her·हेर作为一个中间件层运行,拦截开发者与Claude Code之间的双向通信。它不会修改或干扰代码生成过程;相反,它被动地捕获全双工数据流。其架构简洁而优雅:一个轻量级的守护进程,通过自定义插件或环境变量注入的方式挂接到Claude Code CLI。用户发送的每一个提示、模型响应的每一个数据块以及随后的每一个操作(文件编辑、终端命令、Git提交)都会被加上时间戳并序列化为结构化的JSON日志。
Her解决的核心工程挑战是AI编程会话的短暂性。标准的Claude Code会话不会留下持久痕迹——一旦终端关闭,对话便丢失了。Her通过将日志写入本地SQLite数据库来解决这一问题,该数据库支持高效的查询和索引。数据库模式包括会话ID、时间戳、提示文本、响应文本、Token计数、每次响应的延迟以及用户操作等字段。这使得开发者可以运行诸如“显示所有模型幻觉出一个不存在API的会话”或“查找响应时间超过30秒的提示”之类的查询。
一个特别巧妙的功能是Her对嵌入向量的使用。每个提示和响应都使用轻量级模型(例如来自SentenceTransformers的all-MiniLM-L6-v2)进行向量化,并存储在数据库中。这实现了跨会话的语义搜索——开发者可以搜索“如何实现OAuth”,并检索所有与该主题相关的过去提示和响应,即使确切的措辞有所不同。嵌入管道异步运行,以避免阻塞主会话。
Her还包含一个内置的分析仪表板(一个使用Streamlit构建的简单Web UI),用于可视化会话指标:提示频率、平均响应时间、Token使用趋势和常见错误模式。该仪表板可以突出显示模型置信度较低(基于对数概率,如果暴露的话)或用户不得不多次重新提示的会话——这是沟通不畅的强烈信号。
| 功能 | Her·हेर | 手动记录 | 无记录 |
|---|---|---|---|
| 自动捕获 | 是 | 否 | 否 |
| 语义搜索 | 是 | 否 | 否 |
| 延迟跟踪 | 是 | 手动 | 否 |
| Token使用分析 | 是 | 否 | 否 |
| 会话回放 | 是 | 否 | 否 |
| 存储格式 | SQLite + JSON | 文本文件 | 无 |
| 开源 | 是 | 不适用 | 不适用 |
数据要点: Her提供了一套全面的功能,这些功能通过手动记录或不记录是根本无法实现的。仅自动捕获和语义搜索功能,就能为密集使用Claude Code的团队每周节省数小时的调试时间。
GitHub仓库(her-ai/her)在发布后的前两周内已获得超过2800颗星,活跃的贡献者正在添加多会话比较和导出到常见分析平台(例如Grafana、Datadog)等功能。该项目使用Python编写,并包含一个基于Rust的核心用于性能关键的日志记录,以确保最小的开销(每次请求测量增加的延迟小于5毫秒)。
关键参与者与案例研究
Her由一家主要云提供商的前基础设施工程师组成的小团队创建,他们对AI编码工具的不透明性感到沮丧。在GitHub上使用化名“detective-ai”的首席开发者拥有可观测性和监控系统的背景。该团队明确将Her设计为模型无关的,尽管初始版本因Claude Code在专业开发者中的流行度而专注于它。
几个值得注意的案例研究已经出现。一家中型金融科技初创公司使用Her审计了一个为期三个月的迁移项目,该项目使用Claude Code将遗留的Python单体应用重构为微服务。通过分析Her的日志,团队发现23%的提示实际上是对先前模型输出的修正——这是一个隐藏的低效问题,每天耗费他们数小时。他们利用这一洞察重构了提示模板,将修正提示减少了60%。
一位独立游戏开发者使用Her跟踪游戏开发马拉松期间代码库的演变。日志显示,该模型经常为简单问题建议过于复杂的解决方案,导致了不必要的技术债务。开发者利用Her的会话回放功能识别了这些模式,并调整了他们的提示策略,倾向于更简单的解决方案。
| 工具 | 类别 | 主动/被动 | 关键差异化因素 |
|---|---|---|---|
| Her·हेर | AI会话分析 | 被动 | 完整会话捕获,语义搜索 |
| Claude Code | 代码生成 | 主动 | 直接代码编辑,代理工作流 |
| GitHub Copilot Chat | 代码生成 | 主动 | IDE集成,内联建议 |
| LangSmith | LLM可观测性 | 被动(基于API) | 生产监控,追踪 |
| AIConfig | 提示管理 | 被动 | 提示版本控制与配置 |