Verification Engine
在 Agent 工作时,就捕获它们弄坏的东西。
Panolayer 会在每次保存以及每个 Agent 完成时,把每处变更与所有依赖它的部分逐一校验。当它标记出缺陷时,你会得到具体行号、所违反的规则以及复现步骤。
免费开始 · 无需信用卡
某个 Agent 把 getUser() 改成返回 null,而不是抛出异常。
代码能编译,getUser 的测试也通过。有六处调用方在读取 user.name 时没有做 null 检查,三天后它们在预发布环境中失败。而 diff 里没有任何信息告诉你它们的存在。
工作原理
从你的源码到可复现的缺陷
每次保存以及每次 agent 声称完成时,都会执行五个步骤。
02
推断代码的预期行为
Panolayer 会为每个函数推导出应有的行为规则,例如“返回一个用户或抛出异常,绝不返回 null”。你也可以添加自己的规则,或纠正它推导错误的规则。
03
准确看清哪里出了问题
失败会显示涉及的函数、它违反的规则、实际发生了什么、发生在哪里,以及影响哪些调用方。对于已确认的缺陷,你还会得到导致失败的输入,可以自己运行并观察它如何失败。
04
只显示本次改动破坏的部分
结果会与改动前的代码进行对比。原本就存在的失败会被标记为既有问题,因此你看到的是新增问题,而不是一堆历史遗留。
05
修复代码,或修正规则
你可以自己修复代码,也可以把失败连同受影响的调用方作为上下文发送给 Panolayer Agent 或你自己的 agent。如果规则本身有误,就修正它。无论哪种方式,验证都会重新运行。
持久记忆
它会学习你的代码应如何表现
每一次修正都会随项目保留。你的 Agent 在每次会话开始时便已知晓,使用 Panolayer 越多,检查就越精准。
运行位置
两种方式,捕获智能体改坏的地方
同一个 Verification Engine 既运行在 Mac 应用中,也运行在你的编辑器里。
Agent
与你已在使用的 agent 配合使用
Panolayer Verification Engine 会检查代码,无论代码由谁编写:你、Panolayer Agent,还是 Agent Marketplace 中支持的 20+ 个智能体中的任意一个。
Panolayer Agent
AiderClaude Code
Cline CLI
Codex CLI
CrushDeep Agents Code
Gemini CLI
GitHub Copilot CLI
Goose
Kilo Code CLIKimi Code
Letta Code
mini-SWE-agentMistral Vibe
Open Interpreter
OpenClawOpenCode
Pi Coding Agent
PlandexQwen Code
常见问题
问题
还有其他问题?联系我们,我们会为你解答。
什么是规则?
对代码行为的一种预期,例如“返回一个 user 或抛出异常,绝不返回 null”。Panolayer 会从你的代码中推导出大部分规则,并在每次变更时运行。
我可以编写自己的规则吗?
可以。你的规则会与 Panolayer 推导出的规则一同运行。
规则出错时会怎样?
修正它。修正会随项目保留,并影响之后的每一次检查。
验证在什么时候运行?
当你在自己的分支上保存文件时,以及当智能体将任务标记为完成时。
速度有多快?
结果在数秒内返回,快到足以在不离开任务的情况下完成运行智能体、验证、修复、再次验证的整个循环。
我的代码会被发送到模型吗?
除非你同步或共享,否则你的仓库及其索引始终保留在你的 Mac 上。使用模型的功能会将相关片段发送到你设置的提供商,并受该提供商条款约束。详见安全页面。
它会阻止我合并吗?
它约束的是智能体,而不是你。智能体的工作会在你决定合并什么之前完成验证,而你始终可以自行提交和合并。失败项会一直保留在列表中。
它会取代我的测试吗?
不会。它与测试并行运行;在你配置的地方,它还会运行你的测试、构建和类型检查。