agenteye-evaluator)是一种 Agent Skill:一个小型指令文件夹,可供 Claude Code 或 Codex 等编码 Agent 按需加载。它指导 Agent 找出哪些质量维度值得为你的* Agent 追踪,然后编写、测试并部署对这些维度进行打分的评估器服务。
它不是托管评分器、你上传内容的注册中心,也不是插件系统。你的评估器始终是运行在你自己基础设施上的 HTTP 服务,完全按照评估套件指南所述。该 Skill 只是教你的 Agent 如何把它构建好——因此它所做的一切,你自己写同样的代码也完全可以实现。
难点在于决定要评分什么
SDK 接口很简单——一个装饰器和两个模型——Agent 仅凭契约就能写出来。评估器失败的根源不在这里。它们失败,是因为评错了对象;而一个评错对象的评估器比没有更糟:它产出的仪表盘让所有人都学会了忽略它。 因此,该 Skill 的大部分工作发生在任何代码存在之前。它让 Agent 对你进行采访(「描述一次进展顺利的运行;再描述一次出问题的」),然后通过agenteye CLI 拉取你的真实会话并从头到尾读完。这两部分通常会产生分歧,而分歧恰恰是关键:你打算测量什么,与你的会话记录实际上能支撑什么,往往并不一致。一个维度只有在可从事件中计算且具有区分度时才能保留——如果它在你的好运行和坏运行上都打出 0.9,那它什么也说明不了,会被直接删掉。
最终输出的是一份包含 2-4 个维度及其推理依据的提案,供你在编写任何代码之前审核确认。
它与其他评估组件的关系
四份文档涵盖了打分的各个方面,它们按顺序相互衔接:与 CLI Skill 的区别:构建 vs 读取
这两个 Skill 有意设计为互不重叠,同时安装两者是常规做法——Agent 会根据你的请求在它们之间进行选择:agenteye-evaluator(本文档)构建产生分数的东西。它的任务在分数首次落地时就完成了。agenteye-cli读取已经存在的分数(agenteye evals)。「这周质量有没有下降?」是它回答的问题,不是本 Skill 的。
前提条件
- 已安装并登录
agenteyeCLI(pipx install agenteye,然后agenteye login)。该 Skill 在两个环节依赖它:拉取用于设计的真实会话,以及最后确认分数是否成功落地。你的登录账号需要events:read权限,最终检查还需要evaluations:read。与 CLI Skill 一样,它无法替你完成邮件一次性验证码的登录流程。 - 评估器的宿主环境。 它会被构建成镜像并作为长期运行的服务运行,因此需要一个真实的代码仓库,而非临时文件。评估器通常有自己独立的仓库,与被评分的 Agent 分开——该 Skill 会查找现有仓库,并在创建新仓库前向你确认。
agenteye-evaluatorSDK wheel——在让 Agent 开始输入pip命令之前,请先阅读下一节。
获取方式
该 Skill 发布在 Failproof AI 的公开 Skill 集合中: github.com/FailproofAI/skills →skills/agenteye-evaluator/
该仓库是公开的,Skill 本身不需要任何凭证——它只是使用你登录的 agenteye CLI 来驱动操作,并在你的仓库中编写代码。注意它作为独立文件夹发布,不包含在 pipx install agenteye 包中,因此不要去那里查找。
安装 Skill
最快捷的方式是使用skills CLI,它会拉取文件夹并放置到 Agent 查找的位置:
SKILL.md 文件(以及可选引用文件)的文件夹,直接复制也可以:
- Claude Code:将
agenteye-evaluator/文件夹放入~/.claude/skills/(所有项目)或<你的仓库>/.claude/skills/(仅限该仓库)。Claude Code 会自动发现它——通过/skills列表验证,或者直接要求做评估即可。 - Codex(OpenAI):Codex 读取同一个
SKILL.md。内置的agents/openai.yaml设置了allow_implicit_invocation: true,因此当任务匹配时 Codex 会自动选择该 Skill;否则可以通过$agenteye-evaluator显式调用。
SDK 不在公开的 PyPI 上
警告: 在让 Agent 安装 SDK 之前,请先阅读本节。该 Skill 是公开的,但它驱动的 SDK 不是。
agenteye-evaluator 仅作为私有发布产物提供,与 agenteye 不同,该名称在公开 PyPI 上未被注册——因此直接执行 pip install agenteye-evaluator 可能会将陌生人的包安装到读取你生产环境会话记录的服务中。这是供应链安全问题,不是手误打错字。
该 Skill 知晓这一点,因此会依次尝试一套安装方案,在第一个可用的选项处停下:如果你在 AgentEye 仓库内,则使用 monorepo 源码;否则使用 GitHub Releases 上的私有发布 wheel(需要访问权限);如果两者都不可达,它会停下来告诉你联系 Failproof AI 联系人获取 wheel,而不是自行处置。
因此,如果你的 Agent 提议从公开 PyPI 直接执行 pip install agenteye-evaluator,这就说明 Skill 根本没有加载。立即停下来检查它是否已安装。
你可以向它提出什么请求
一次完整的交互从模糊的请求开始,以确认好的设计方案结束,而不是以代码结束:JobPending 进行异步处理,而不是让你的裁判被取消后以五倍代价重试五次。
然后它进行部署,设置两个服务器环境变量,并通过 agenteye --json evals --session-id <id> 确认分数确实落地。分数落地是唯一的证明。
需要注意的事项
- 维度名称几乎是永久性的。 分数键是任意字符串,平台会对你发送的任何内容进行趋势分析,这意味着下游没有任何机制能纠正一个错误的选择。之后重命名会导致历史记录断裂:旧会话保留旧键,趋势就此中断。这就是为什么 Skill 在编写代码之前要求明确签字确认——请认真对待这个提示。
- 测试夹具是真实的生产转录记录。 针对真实会话进行设计意味着要将它们拉取到磁盘上,而其中可能包含客户数据。Skill 在将它们提交到 git 之前会询问你;如有疑虑,请将
fixtures/排除在仓库之外,让每位开发者自行拉取。 - Agent 编写并部署一个读取所有转录记录的服务。 它以你的身份行事,受你的 CLI 登录权限约束,但请像对待任何接触生产数据的代码一样审查评估器。
后续步骤
- 评估套件(Evaluation suite):HTTP 契约、SDK 以及 Skill 所配置的服务器环境变量。
- 评估(Evaluations):分数落地后的呈现位置。
- CLI Skill:姊妹 Skill,用于读取结果而非构建评分器。
- CLI:Skill 设计所依赖的会话数据背后的命令参考。

