跳至內容

Verification Engine

在 Agent 工作時,就攔下它們弄壞的地方。

Panolayer 會在每次儲存以及每個 Agent 完成工作時,將每項變更與所有相依於它的部分逐一檢查。當它標出錯誤時,你會拿到所在行、違反的規則,以及重現步驟。

免費開始 · 無需信用卡

Verification Engine · find the bug, fix it, review the result

A real verification run finds a file-handle bug in writeArchive. Fix hands it to Panolayer Agent, the change is checked again, and the result is presented for review before merging.

完整截圖 · 捲動以查看詳細內容

某個 Agent 把 getUser() 改成回傳 null,而不是拋出例外。

它能編譯。getUser 的測試也通過。有六個呼叫端在沒有 null 檢查的情況下讀取 user.name,三天後它們在 staging 環境中失敗。diff 裡沒有任何東西告訴你它們存在。

運作方式

從你的原始碼到可重現的錯誤

每次儲存,以及每次 Agent 表示完成時,都會執行這五個步驟。

01

解析你的程式碼

Panolayer 像編譯器一樣解析你的儲存庫:檔案、模組、函式、類別、匯入,以及完整的呼叫圖。符號是從原始碼解析而來,而非由模型猜測。

架構的運作方式
Architecture · parsed from source

Architecture · parsed from source

Panolayer Studio architecture map connects the sample repository to its routes, components and shared libraries.

完整截圖 · 捲動以查看詳細內容

02

推導出程式碼的預期行為

Panolayer 會推導出每個函式應如何運作的規則,例如「回傳使用者或拋出例外,絕不回傳 null」。你可以加入自己的規則,或修正它推導錯誤的規則。

The rule the function must follow

The rule the function must follow

The file rule requires writeArchive to close the descriptor opened by fs.openSync on every return path, including when a write throws. An Add a file rule field appears below it.

完整截圖 · 捲動以查看詳細內容

03

確切看出哪裡出錯

失敗時會顯示出錯的函式、違反的規則、實際發生的情況、發生位置,以及受影響的呼叫端。若為已確認的錯誤,還會附上導致失敗的輸入,讓你自行執行並觀察它如何失敗。

The failure, anchored to the source

The failure, anchored to the source

The review explains that writeArchive opens a file descriptor at line 12 without closing it on the return at line 25 or when fs.writeSync throws, then describes the repair.

完整截圖 · 捲動以查看詳細內容

04

只顯示這次變更造成的問題

結果會與變更前的程式碼比對。原本就存在的失敗會標示為既存,讓你只看到新增的問題,而不是一堆積壓的項目。

New failures vs. the project baseline

New failures vs. the project baseline

Worktree verification reports no new failures or rule regressions and separately labels two pre-existing failures that do not block the merge.

完整截圖 · 捲動以查看詳細內容

05

修正程式碼,或修正規則

你可以自行修正程式碼,或將失敗連同受影響的呼叫端作為背景資訊,交給 Panolayer Agent 或你自己的 agent 處理。若是規則本身有誤,就修正規則。無論哪種方式,驗證都會重新執行。

Hand the failed rule to Panolayer Agent

Hand the failed rule to Panolayer Agent

The Fix menu beside the writeArchive file rule offers Panolayer Agent to work on the failure.

完整截圖 · 捲動以查看詳細內容

持久化記憶

它會學習你的程式碼應有的行為

每一次修正都會保留在專案中。你的 Agent 每次開始工作階段時就已知道這些修正,而且你越常使用 Panolayer,檢查就越精準。

Project context · editable function descriptions

The writeArchive function description explains that it writes posts to a JSON Lines file and returns its path. A pencil control edits the description, with Verified · No issues found displayed below.

完整截圖 · 捲動以查看詳細內容

執行位置

兩種方式,找出 Agent 弄壞的地方

同一套 Verification Engine 同時運行於 Mac 應用程式與你的編輯器。

Agent

可與你現有的 agent 搭配運作

Panolayer Verification Engine 會檢查程式碼,不論是誰寫的:你、Panolayer Agent,或 Agent Marketplace 中支援的 20 多種 Agent。

  • Panolayer AgentPanolayer Agent
  • AiderAider
  • Claude CodeClaude Code
  • Cline CLICline CLI
  • Codex CLICodex CLI
  • CrushCrush
  • Deep Agents CodeDeep Agents Code
  • Gemini CLIGemini CLI
  • GitHub Copilot CLIGitHub Copilot CLI
  • GooseGoose
  • Kilo Code CLIKilo Code CLI
  • Kimi CodeKimi Code
  • Letta CodeLetta Code
  • mini-SWE-agentmini-SWE-agent
  • Mistral VibeMistral Vibe
  • Open InterpreterOpen Interpreter
  • OpenClawOpenClaw
  • OpenCodeOpenCode
  • Pi Coding AgentPi Coding Agent
  • PlandexPlandex
  • Qwen CodeQwen Code
瀏覽 Agent Marketplace

常見問題

問題

還有其他問題?聯絡我們,我們會為你解答。

什麼是規則?

對程式碼行為的預期,例如「回傳使用者或拋出例外,絕不為 null」。Panolayer 會從你的程式碼推導出多數規則,並在每次變更時執行。

我可以自己撰寫規則嗎?

可以。你的規則會與 Panolayer 推導出的規則一起執行。

規則有誤時會怎樣?

修正它。修正內容會保留在專案中,並影響之後的每一次檢查。

驗證何時執行?

當你在分支上儲存檔案時,以及當 Agent 將任務標記為完成時。

速度有多快?

結果會在幾秒內回傳,快到讓你能執行 Agent、驗證、修正、再驗證,全程不必離開任務。

我的程式碼會被送到模型嗎?

你的儲存庫與其索引會留在你的 Mac 上,除非你同步或分享它們。使用模型的功能會將相關片段傳送給你所設定的供應商,並受該供應商的條款約束。詳見安全性頁面。

它會阻擋我合併嗎?

它約束的是 Agent,不是你。Agent 的工作會在你決定合併哪些內容之前完成驗證,而你隨時可以自行提交與合併。失敗項目會持續列出。

它會取代我的測試嗎?

不會。它與測試並行運作;在你設定的地方,它也會執行你的測試、建置與型別檢查。

信任你的 Agent 所交付的成果。

免費開始使用 · 無需信用卡

下一步:Panolayer Studio