pi-typesafe:把 Jev 接进 Pi 做小判断
介绍 pi-typesafe 插件,用 Jev 的 Choice/Score/Noul 结构化输出替 Pi 处理分类、打分、风险判断,附安装命令与提问技巧。

最近 Jev 很火啊,为什么呢,怎么接入到你的 Pi 呢?其实是很多 Coding Agent 都在用昂贵的主模型处理“小判断”: 这个 Issue 属于哪一类? 回复有没有真正回答问题? 改动风险是低、中还是高? 能做,但有点像让架构师每天帮你分快递 pi-typesafe 这个插件提供了另一种思路:把 TypeSafe 的判断模型 Jev 接进 Pi,专门处理这类小而频繁、需要结构化结果的决策 Jev 不负责写代码,也不适合长链路推理。你给它一段 state,再提出几个 typed questions,它直接返回选项、分数或概率,代码可以拿结果继续分支 比如让 Pi 判断一个 Bug: { "state": { "title": "升级后无法登录", "body": "输入密码后一直回到登录页" }, "questions": { "area": { "type": "choice", "instructions": "这个问题属于哪个模块?", "criteria": { "auth": "登录与身份验证", "ui": "界面与布局", "other": "都不符合" } }, "blocking": { "type": "noul", "instructions": "这个问题是否阻止用户继续使用产品?" } } } Jev 返回的不是一段“看起来很合理”的分析,而是 auth、各选项的概率,以及 blocking 的 0–1 概率。 这正好补上了 Pi 工作流里一个很实用的位置 1️⃣ 把主模型从机械判断里解放出来 Pi 的主模型继续负责读代码、规划、修改和调试。分类、打分、筛选、检查回复是否答题,这些任务交给 Jev。 如果一个 Agent 每轮都要检查十几个文件、Issue 或工具结果,这种拆分比反复调用主模型更适合自动化 2️⃣ 决策可以真正写进代码 普通 LLM 经常返回一段 JSON,但 JSON 只是输出格式正确,不代表判断本身可以安全执行。 Jev 会返回概率分布。你可以自己定阈值: if (riskProbability > 0.85) { requireHumanReview(); } else { continueAutomatically(); } 低置信度时交给主模型或人工,高置信度时继续跑。这里要注意,confidence 只是概率分布的集中程度,不是“判断一定正确”的证明 3️⃣ 一次批量问多个独立问题 Jev 支持 Choice、Score 和 Noul 三种问题。同一个 state 可以一次提交多个问题,每个问题并行、独立执行 所以不要问: 这个 PR 是否安全、写得好,而且可以直接合并? 应该拆成: 是否涉及认证或权限逻辑 是否存在对应测试 改动范围处于哪一级 描述是否解释了回滚方式 它们互相不偷看答案,最后由你的代码组合结果。规则变了,也只需要调整权重或阈值,不必重新雕一段玄学 Prompt 接进 Pi 也很直接,我找到了这个插件: >> pi install npm:pi-typesafe 进入 Pi 后运行: /typesafe login /typesafe test /typesafe enable API Key 会保存在 ~/.pi/agent/pi-typesafe/auth.json。做 CI 或 headless 工作流时,可以改用环境变量: TYPESAFE_API_KEY=... PI_TYPESAFE_ENABLED=1 有几个小技巧很影响实际效果 提问时,判断“文本写了什么”,不要让 Jev 猜你的最终结论。 例如,不要问: 这个 Bug 能复现吗? 因为它可能理解成“只看这段描述,别人是否能复现”。 更准确的是: report.body 是否明确表示该问题每次都会发生? Score 也别写“低、中、高”这种空等级,最好换成可检查的状态: 仅影响外观 存在可用绕过方案 阻止核心流程 Choice 一定留一个 other 或 unclear。模型不能选择你没有提供的答案,漏掉兜底项只会迫使它在错误选项里硬选 最后,别让 Jev 承担它不擅长的任务。跨多个步骤推理、理解大型代码库、设计架构,继续交给 Pi 的主模型。Jev 更像 Agent 里的高速判断器,适合做路由、过滤、评分和验收信号 pi-typesafe 目前还提供了请求次数、Token 和美元成本上限,也能通过 /typesafe status 查看认证状态与本次运行的估算消耗。需要更稳定的自动化时,先拿带标签的历史样本校准阈值,再决定多少概率允许自动执行 我的判断是,Jev 搭配 Pi 最有价值的地方,不是让 Agent “更聪明”,而是让它把大量重复判断变成可观察、可设阈值、可回放的工程步骤 主模型负责思考,Jev 负责快速判断,代码负责守住边界。这个组合挺适合长期运行的 Agent 工作流 GitHub → https://github.com/DevMortimer/pi-typesafe