Panel Review

ai.truverif由 truverif.ai 发布官方发布者v0.19.50更新于 Oct 24, 2026

Guardian agent for AI coding: four frontier models review risky diffs and commits before they ship.

已验证Streamable HTTP可网页运行开发者工具安全与监控

概览

AI 生成的概览

让 AI 编程助手把差异和提交交给多模型评审面板,并在本地运行提交前评审门禁。

可以做什么
Panel Review 是一个远程 MCP 服务器,为编程代理提供多模型评审工具(例如 audit_coding),分析代理明确提交的差异或上下文。配套安装程序会添加本地提交前和写入前评审门禁,在 Claude Code、Codex CLI、Cursor、VS Code/Copilot、Gemini CLI 和 Antigravity 中拦截有风险的提交和编辑。门禁采用失败放行:服务不可达时提交或写入照常进行,并显示提示。
适用场景
当你希望在代码变更发布前获得自动化的第二意见,并且使用受支持的代理宿主时,值得添加。适合希望对提交和代理编辑设置评审门禁、而不只依赖人工评审的团队。
运行要求
通过 streamable HTTP 连接远程端点 Authorization 头携带 Bearer API 密钥(来自提供方设置页面)。安装程序需要机器上有 Node 18+ 和 Python 3,并需要网络访问提供方 API 以完成登录和门禁检查。
安装前请注意
Authorization 头携带 Bearer API 密钥;安装程序会把 tvai_ 密钥写入本地配置文件,并可能向代理和仓库配置写入钩子与 MCP 条目。门禁检查会向提供方发送哈希后的仓库指纹、变更片段的内容哈希以及本地分类器的类别标签和分数,但不发送源代码和文件路径。评审工具会发送代理传入的差异或上下文。卸载会在服务端吊销密钥,若仍残留含密钥的内容则以非零状态退出。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Panel Review,将其添加到工作区。
  2. 连接 Authorization token 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/ai.truverif%2Fpanel-review/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "panel-review": {
      "type": "http",
      "url": "https://mcp.truverif.ai/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

README

@truverifai/init

One command to connect your AI coding agents to TruVerifAI — multi-model review tools plus local pre-commit/pre-write review gates — on Claude Code, Codex CLI, Cursor (IDE + CLI), VS Code / GitHub Copilot, Gemini CLI, and Antigravity.

[The write gate blocking a risky auth change, live]

npx @truverifai/init          # plan -> one confirm -> browser login -> install gates + tools -> verifynpx @truverifai/init doctor   # re-verify anytime: gates armed, tools connected, key validnpx @truverifai/init logout   # remove the API key from every config this tool wrote

init shows a plan of everything it will write for your machine and asks once before touching anything. To scope or preview it:

npx @truverifai/init --dry-run              # print the plan, write nothingnpx @truverifai/init --only claude,codex    # install for these agents onlynpx @truverifai/init --skip gemini,hook,rules   # everything except thesenpx @truverifai/init --yes                  # non-interactive (CI): accept the plannpx @truverifai/init --version              # print the version, do nothing else

Agent names: claude, codex, copilot, vscode, cursor, gemini, antigravity; hook is the git pre-commit gate and rules the agent-rules blocks. Declining the prompt exits with nothing written. A flag init does not recognize also exits with nothing written (it never falls through to an install).

MIT-licensed. Zero runtime dependencies — this package is plain, unminified JavaScript and Python; npm pack @truverifai/init and read every line. There is no build step and no transitive supply chain.

See it in action

Requirements

  • Node 18+ — runs this installer, and every hook command it writes launches a gate via node <launcher> <host> <gate>.py. No node, no gates, on any host.
  • Python 3 (python3, or py on Windows) — the gate code itself.

npx @truverifai/init doctor checks both and names the missing one, rather than letting an absent runtime disable the gates silently.

Turning the gates off (and back on)

The review gates block risky commits and edits. One command controls all of them:

bash
npx @truverifai/init gates off       # stop every gate, everywherenpx @truverifai/init gates on        # turn them back onnpx @truverifai/init gates status    # what's on, and which setting decided it

(If you installed globally with npm i -g @truverifai/init, the same commands are available as the shorter tvai gates off. Plain npx does not leave a tvai binary on your PATH, so use the full form above unless you installed globally.)

This writes enable_gates to ~/.truverifai/config.json, which every delivery reads — the git pre-commit hook and the Codex, Cursor, Copilot, VS Code, Gemini and Antigravity hooks alike. The MCP review tools stay connected either way; only the automatic gating stops.

Two things worth knowing:

  • Claude Code no longer has its own toggle. enable_gates was removed from the plugin's settings panel (it could only ever reach Claude Code's own hooks — the X8 split), so this command is the single switch. One exception: a value stored in the panel before the removal may still be exported to Claude Code's hooks until you clear it; gates status calls that out and says how.
  • TVAI_ENABLE_GATES overrides everything. If you have it exported, gates on|off writes the file underneath it and has no effect until you unset it. gates status says so.

To remove the gates entirely rather than switch them off, see Removing it below.

What this installs, exactly

init runs as you, interactively: it prints the plan first, writes only after you confirm, and prints every file it touches. The complete list:

Its own home — ~/.truverifai/

  • config.json — your tvai_… API key (minted via browser device-flow login; this process never sees a password).
  • gates/current/ — the review-gate code (Python + a Node launcher), vendored from this package's vendor/ directory.
  • .nudge_state.json, gate_state/ — local rate-limit / state files.

Per detected agent (user-level; only for agents found on your machine)

  • Claude Code: the plugin's api_token option, and one permissions.allow entry (mcp__plugin_panel-review_truverifai) in ~/.claude/settings.json so Claude's auto-mode classifier permits the free gate-release calls. Additive merges only — the file is backed up first, never created, and never has anything removed.
  • Codex CLI: an MCP server block (between TRUVERIFAI markers) and [features] hooks = true in ~/.codex/config.toml; ~/.codex/hooks.json.
  • Cursor: ~/.cursor/hooks.json (gates) and ~/.cursor/mcp.json (tools).
  • Copilot CLI: ~/.copilot/mcp-config.json.
  • VS Code: your user mcp.json.
  • Gemini CLI: ~/.gemini/settings.json (tools entry).

Per repository (written in the repo you run init from, with a prompt)

  • .github/hooks/truverifai-gate.json + truverifai-vscode.json (Copilot CLI / VS Code gate hooks), .gemini/settings.json (Gemini hooks), .agents/hooks.json (Antigravity hooks).
  • Optional agent-rules blocks (marked TRUVERIFAI_RULES_START…END) in AGENTS.md / CLAUDE.md / GEMINI.md — you are asked first.
  • .git/hooks/pre-commit — the git gate, which catches commits made outside any agent (and is the one layer --no-verify makes an explicit, auditable act). Installed automatically when you run init inside a git repo. It is the only repo-scoped gate, so add it to other repos with cd <repo> && npx @truverifai/init hook. An existing pre-commit hook you wrote is never overwritten — init reports it and prints the line to add by hand.

logout strips the API key from every config listed above. Nothing is installed as a service, daemon, or startup item; the gates only run when your agent host invokes its hooks.

What leaves your machine

  • Login: a device-flow handshake with truverif.ai mints your API key in the browser.
  • Gate checks (on risky writes/commits): the gates POST to api.truverif.ai a hashed repo fingerprint (SHA-256 of your git remote URL or repo path — the raw path/URL never leaves the machine), content hashes of the changed hunks, and the local classifier's category labels and scores. Not your source code, and not your file paths (only coarse path-class tags like "test/docs").
  • Review tools (audit_coding etc.): send only what your agent explicitly passes when it invokes a review — that is the product: the diff/context you choose to submit is analyzed by multiple frontier models.
  • Update check: gate responses may include a "newer version available" note computed server-side against the public npm registry; the client sends only its own version string.
  • Diagnostics (TVAI_PAYLOAD_LOG) are local-only and opt-in — nothing is uploaded.

The gates fail open by design: if our server is unreachable or anything errors, your commit/write proceeds and a visible notice says the change was not gated. This tool never blocks your work on its own failure.

Verifying this package

The full source is public at github.com/TruVerifAI/init — every release is synced there. To verify a tarball by hand: npm pack @truverifai/init, extract, and diff against the repo — bin/tvai.js, lib/*.js, and vendor/gates/*.py are the entire runtime surface, dependency-free. The gate code (vendor/gates/) is also published at github.com/TruVerifAI/claude-plugins (plugins/panel-review/hooks/). Build provenance attestation (CI publish with cryptographic linkage to this repo) is the planned next step.

Removing it

bash
npx @truverifai/init uninstall

A complete removal, in one command:

  • Every hook config init wrote (Codex, Cursor, Copilot, VS Code, Gemini, Antigravity, and the git pre-commit hook), the vendored gate code under ~/.truverifai/, and the MCP server entries. Hook files you share with other tools are edited, not deleted — only our own entries are taken out, matched by marker.
  • Your API key, revoked server-side. Before deleting the local key file, uninstall calls the API to revoke the key itself, so any leaked or synced copy of it is dead. If the server is unreachable it says so and continues (the local removal never blocks on the network).
  • The plugin token in Claude's credential store — on a Mac this is the Keychain entry's panel-review value, edited in place (the Keychain item itself is Claude's and is left alone).
  • The .tvai-bak backups init made of shared config files — deleted only after the live file is verified clean; if a live file still contains our entries, its backup is kept and named as the restore source.

Uninstall is honest about failure: anything it could not remove is listed at the end under "needs your attention", and the command exits nonzero when secret-bearing residue remains (CI scripts that assumed exit 0 should check this). Silence means clean.

Uninstall also tries the host CLIs to remove the plugins init installed (claude plugin uninstall panel-review@truverifai, codex plugin remove panel-review@truverifai), best-effort: each attempt prints what happened, a failure never blocks the rest of the uninstall, and where no runnable CLI exists (the Claude desktop app) it prints the in-app step instead (+ button, then Plugins).

npx @truverifai/init logout is the lighter option: it clears the key (and our backups of files that held it) and the MCP entries but leaves the hooks installed. They then fail open for want of a key, and a later npx @truverifai/init login re-arms them.

Support

来源:README.md,提交 3192e15

工具

0
该服务器需要 API 密钥等凭据,因此 SourceWeft 无法在没有凭据的情况下读取其工具,也未收录。

版本历史

6
  1. v0.19.50最新Oct 13, 2026
  2. v0.19.49Sep 23, 2026
  3. v0.19.48Sep 23, 2026
  4. v0.19.47Sep 18, 2026
  5. v0.19.46Sep 17, 2026
  6. v0.19.45Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分