Pi Jev 语义路由器
为 Pi 按需选择工具、技能和模型,并执行快速类型化判断。
按维度查看评分与理由
自动路由、模型选择、压缩和自动编排均标为默认关闭,工具启用是增量式的,并提供启用、禁用和运行时开关,因此最小权限、用户确认和回退机制达到普通使用水平。README说明了API密钥来源、请求成本、发送给评估器的state及工具激活等外部效果,但未完整说明发送到TypeSafe服务的数据范围、日志保留、第三方处理或隐私政策。敏感数据处理仅有环境变量和明文秘密文件示例,未说明文件权限、脱敏、轮换或泄漏防护,故仅给薄弱分。依赖数量较少,CI覆盖Node 20/22,发布使用npm provenance;但通配peer依赖、未提供锁文件或审计/漏洞处置证据限制了依赖安全分。关闭功能和失败回退清晰,但已激活工具或已派发子代理的副作用没有事务性撤销说明。作者、仓库、许可证、问题渠道和安全邮箱的归属信息一致且完整,足以支持来源归属满分;发布者未验证仅表示身份未经企业注册确认,并未被当作可疑因素。
README、配置名称和测试对共享JEV_THRESHOLD、默认关闭、精确子命令、未配置跳过及失败不抛出等行为保持一致;测试还明确验证了并发跳过和统一阈值,因此自洽性充分。Node版本、安装命令、唯一运行时依赖和降级路径均有说明,但peer依赖使用通配版本,且未给出实际兼容矩阵或离线能力细节,因此依赖可用性扣分。命令测试覆盖未知命令、无效参数、设计失败、状态来源及错误级别,CLI gate也区分通过、拒绝和错误退出码,失败消息处理证据较强。
文档覆盖交互式编码、技能发现、工具路由、CI门禁、分类、压缩、模型选择和多代理工作流,并给出针对不同任务类型的场景,因此受众和场景描述充分。边界包括阈值、跳过条件、配置缺失、低置信度、模型兼容和失败回退,但没有系统说明Jev判断不适合哪些高风险决策、概率误判风险或最大输入限制,故能力边界未满分。精确子命令匹配、统一阈值、跳过斜杠命令、并发保护以及相关测试为触发精度提供了强证据。环境方面说明了Pi、Node 20以上、环境变量和秘密文件,但peer版本通配且缺少操作系统、Pi版本兼容范围和网络要求,故环境适配为普通水平。
README按功能、安装、设置、模式、命令、工具、开发测试和许可证组织,信息架构清晰。npm与GitHub安装、密钥配置、状态检查和开发命令均可直接使用。jev_*工具名、/jev子命令、环境变量和两个gate二进制别名在README、package元数据及测试间保持稳定。示例涵盖JSON工具调用、工作流、子代理门禁、管道和常用命令,虽无独立FAQ仍足够完整。已记录默认关闭、成本、回退和部分跳过条件,但缺少集中式限制清单以及隐私、误分类和编排风险说明,故已知限制扣分。MIT元数据和完整LICENSE一致,许可证满分。package版本为0.4.0且发布包声明包含CHANGELOG.md,但未提供其内容,无法评价版本历史质量,因此版本记录仅为普通水平。安全邮箱、问题地址和作者明确,但没有维护承诺、响应时限、治理或支持周期,维护责任未满分。
结构化判断返回概率或选项,状态命令展示配置和用量,gate提供明确退出码及JSON模式,工具和命令示例可直接消费,因此输出可用性充分。相较于始终加载所有工具或启动完整LLM子进程,语义发现、类型化快速判断和工作流门禁提供了清晰的新增能力。成本方面披露自动模式每提示一次Jev请求、默认按需运行、故障时使用本地短名单,并提供请求和token统计;但“sub-second”“calibrated”及节省上下文/成本的幅度没有基准、测量或定价分析,故成本收益未满分。
关键行为能够追溯到具体配置、脚本和测试:统一阈值、默认关闭、精确命令解析、配置缺失、并发跳过、失败消息、代理RPC和CI发布流程均有静态证据。README、package.json、工作流与测试相互印证核心安装和路由行为;但自动模型、压缩、多代理生成、gate实现和安全数据处理缺少相应源代码或测试材料,因此跨来源印证扣分。文档通常区分配置事实和行为说明,但“calibrated”“safe”“sub-second”“不会静默截断”等较强表述未附静态证明或明确标为预期主张,事实与推断分离因此未满分。
- 配置秘密文件时应自行设置严格文件权限;现有说明使用明文文件,但未提供权限、轮换或脱敏指导。
- 提交给Jev的提示、git diff、文件或管道内容可能包含源代码和敏感数据;在缺少数据保留与第三方处理说明时,应先审查数据边界。
- 自动工具激活、模型选择和多代理编排虽默认关闭,但启用后可能产生API费用和外部副作用;建议从较高阈值和人工复核开始。
- 不要把概率门禁当作安全、部署或合规判断的唯一依据;“calibrated”和“safe”主张未由所提供材料独立证明。
- peer依赖使用通配版本,升级Pi相关包前应固定并验证兼容组合。
这个 Agent 能做什么,适合哪些场景?
pi-jev 是面向 Pi coding agent 的扩展,通过 TypeSafe Jev 提供语义工具路由和 System One 类型化决策。它暴露 `jev_find_tools`、`jev_find_skill` 和 `jev_evaluate`,分别用于启用相关的非活动工具、发现工作区技能以及执行 Choice、Noul 和 Score 判断。其命令界面还覆盖动态评估、自动模型选择、上下文压缩和基于 `pi-subagents` 的多智能体编排。`pi-jev-gate` CLI 可读取 Git diff、文件或标准输入,按自然语言条件给出通过、拒绝或错误退出码,适合子智能体门禁和 CI/CD。扩展安装在 Pi 环境中,并依赖 TypeSafe API 凭据和网络服务;自动路由、自动选模、自动编排及 Jev 压缩均为默认关闭的可选功能。
在手动调用或启用自动模式后,扩展把当前提示交给 Jev,依据统一的 JEV_THRESHOLD(0.65)筛选并追加启用相关工具,同时推荐匹配的 SKILL.md。jev_find_skill 对工作区技能做语义匹配,jev_evaluate 接收 state 和问题模式并返回 Choice、Noul 或 Score 类型的判断。/jev test <prompt> 先让当前模型设计 Jev 问题结构,再由 Jev 完成评估;/jev auto-model on 会结合任务信号、图片和上下文规模,在可用的快速、均衡、推理、长上下文或视觉模型中选择。/jev compact on 在执行 /compact 时评估应保留的工具历史,同时保留 Pi 的 firstKeptEntryId 边界并在失败时回退到 Pi 内置摘要。/jev agents <task> 构造并异步运行 pi-subagents 工作流,而 pi-jev-gate 可检查 Git diff、文件或管道输入,并以 0、1、2 分别表示通过、拒绝和错误。
- 使用 Pi 且工具注册量较大的开发者,可让
jev_find_tools针对当前编码任务只激活相关的非活动工具。 - 维护多个
SKILL.md工作流的团队,可用/jev skills [query]为具体任务发现并排序合适的技能。 - 需要快速完成缺陷、功能或文档分类的工作流作者,可注册
agent: "jev",以类型化 Choice 结果驱动后续分支。 - 运行子智能体或 CI/CD 的团队,可用
pi-jev-gate根据自然语言验收条件检查 Git diff、文件或测试输出。 - 长时间使用 Pi 会话的开发者,可选择 Jev 引导的压缩来保留重要路径、错误、约束和工具结果。
- 希望按任务自动选择模型或编排多角色流程的 Pi 用户,可分别启用 auto-model 或基于
pi-subagents的 agents 功能。
这个 Agent 有哪些优点和局限?
- 工具路由和技能推荐按当前提示语义执行,可避免把全部非活动工具与技能长期塞入提示上下文。
- Choice、Noul 和 Score 提供结构化判断接口,并可作为轻量
agent: "jev"节点参与工作流分支。 pi-jev-gate同时支持 Git diff、文件和标准输入,并提供适合自动化环境的明确退出码。- 自动路由、模型选择、编排和压缩均为显式选择启用,且文档说明多条失败路径会安全回退或保持当前状态。
- 路由、工具、技能命令和自动模式共享同一个
JEV_THRESHOLD,便于统一调整精确率与召回率。
- 核心运行边界限定在 Pi coding agent,并依赖 TypeSafe Jev 服务及 API 密钥,不能按现有文档直接迁移到其他智能体平台。
- 自动模式每个提示会增加一次 Jev 请求,带来额外的外部服务调用与潜在费用。
- 多智能体编排依赖额外的
pi-subagents,而自动编排默认关闭。 - 自动选择仅能在
ctx.scopedModels和当前可用模型中工作;低置信度提示或无兼容模型时会保留当前模型。 - 资料只给出开发测试命令,没有提供支持的 Node.js/npm 版本、性能基准或 TypeSafe API 定价信息。
如何安装或部署这个 Agent?
在已经可用的 Pi 环境中运行 pi install npm:pi-jev。也可以直接从 GitHub 安装:pi install git:github.com/TheoOliveira/pi-jev。随后设置凭据:export TYPESAFE_API_KEY=ts_...;或者创建 ~/.pi/agent/secrets,并把密钥写入 ~/.pi/agent/secrets/typesafe_api_key。进入 Pi 后运行 /jev status 验证配置。若要使用多智能体编排,还需要 pi-subagents。
如何使用这个 Agent?
先在 Pi 中执行 /jev status 检查密钥来源、模式状态和可用工具数,再用 /jev enable 启用 Jev 工具。可通过 jev_find_tools 传入 {"query":"inspect SQLite database schemas and run queries"},或通过 /jev skills [query] 搜索技能;使用 /jev test <prompt> 可运行动态评估。自动路由可用 pi --jev-auto、PI_JEV_AUTO=1 或 /jev auto on 开启;自动模型选择、压缩和自动编排分别使用 /jev auto-model on、/jev compact on 和 /jev auto-agents on。门禁检查示例:npx pi-jev-gate -c "All exported functions have TypeScript type annotations" --diff;默认概率阈值为 0.70,可用 -p 调整。
这个 Agent 与同类方案有什么区别?
与 Pi 的常规压缩相比,Jev 压缩会额外评估工具历史,力求保留重要路径、错误、约束和结果;如果 Jev 未配置、调用失败或结果不可用,它会回退到 Pi 的内置摘要。对于工作流中的快速分类,agent: "jev" 被定位为无需启动重量级 LLM 进程的类型化判断节点,而非完整执行型子智能体。
常见问题
必须提供什么凭据?
TYPESAFE_API_KEY 环境变量或 ~/.pi/agent/secrets/typesafe_api_key 文件提供。安装后会自动处理每个提示吗?
/jev 命令显式开启。Jev 服务失败时会发生什么?
--fail-open 时错误可返回 0。门禁检查怎样判定通过?
pi-jev-gate 默认在评估概率不低于 0.70 时返回 0,拒绝返回 1;可用 -p 设置自定义阈值。