mcpField
T
TruVerifAI Panel-review

TruVerifAI Panel-review

已认证精选远程服务
truverif.aiAI 与智能体22 周前更新

关于 TruVerifAI Panel-review

TruVerifAI Panel-review 为 AI 编码 Agent 提供多模型代码审查工具,并通过本地钩子在高风险编辑和提交前执行审查。初始化 CLI 可配置多个编码环境,并集中管理审查门禁。

主要功能

  1. 01多模型代码审查工具
  2. 02提交前与写入前门禁
  3. 03支持多种编码 Agent 环境
  4. 04门禁状态与开关管理
  5. 05配置检查、登出与卸载

适用场景

  1. 01在提交前检查高风险代码更改
  2. 02在 Agent 写入时触发本地审查
  3. 03为多个编码环境配置审查工具
  4. 04检查门禁状态及所需运行时

MCP 相关

初始化程序会在支持的编码环境中配置 TruVerifAI MCP 服务与审查工具。审查工具保持连接,即使关闭自动门禁也可使用。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.truverif.ai/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://mcp.truverif.ai/mcp需要授权

工具

详细介绍

@truverifai/init

只需一条命令,即可在 Claude Code、Codex CLI、Cursor(IDE + CLI)、VS Code / GitHub Copilot、 Gemini CLI 和 Antigravity 上,将 AI 编码 Agent 连接到 TruVerifAI ——多模型审查工具,以及本地的提交前/写入前审查关卡。

实时演示写入关卡拦截有风险的身份验证更改

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

init 会列出它将在你的机器上写入的所有内容,并在开始操作前征求一次确认。若要限定范围或预览:

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

Agent 名称:claude、codex、copilot、vscode、cursor、gemini、 antigravity;hook 是 git 提交前关卡,rules 是 Agent 规则区块。拒绝提示后不会写入任何内容,程序随即退出。若传入 init 无法识别的标志,也不会写入任何内容,程序随即退出(不会继续执行安装)。

采用 MIT 许可证。零运行时依赖——此软件包是纯净、未压缩的 JavaScript 和 Python;运行 npm pack @truverifai/init 即可逐行查看。无需构建,也没有传递性供应链依赖。

实际演示

要求

  • Node 18+ —— 用于运行此安装程序;它写入的每条钩子命令都会通过 node <launcher> <host> <gate>.py 启动关卡。没有 Node,任何宿主上都无法运行关卡。
  • Python 3(python3,或 Windows 上的 py)—— 运行关卡代码本身。

npx @truverifai/init doctor 会检查两者,并指出缺少哪一个,而不是让关卡在运行时缺少环境后悄然失效。

关闭关卡(以及重新开启)

审查关卡会拦截有风险的提交和编辑。用一条命令即可控制所有关卡:

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

(如果你通过 npm i -g @truverifai/init 全局安装,同样的命令也可用较短的 tvai gates off。普通的 npx 不会在 PATH 中留下 tvai 可执行文件,因此除非你全局安装,否则请使用上面的完整形式。)

此命令会将 enable_gates 写入 ~/.truverifai/config.json,所有交付方式都会读取该设置——包括 git 提交前钩子,以及 Codex、Cursor、Copilot、VS Code、Gemini 和 Antigravity 的钩子。无论关卡是否启用,MCP 审查工具都会保持连接;关闭的只是自动关卡。

有两点值得注意:

  • Claude Code 不再有独立开关。 插件设置面板已移除 enable_gates(它此前只能影响 Claude Code 自己的钩子,也就是 X8 分拆),因此此命令是唯一开关。只有一种例外:移除该设置前保存在面板中的值,可能仍会导出到 Claude Code 的钩子中,直到你清除该值;gates status 会提示这一点并说明处理方法。
  • TVAI_ENABLE_GATES 会覆盖所有设置。 如果你已导出该变量,gates on|off 会将设置写入文件,但在取消设置该变量前不会生效。gates status 会说明这一点。

如需彻底移除关卡,而非仅将其关闭,请参阅下文的 移除部分。

具体会安装哪些内容

init 会以你的身份交互式运行:先显示计划,只有在你确认后才写入,并打印它修改的每个文件。完整列表如下:

其自身目录 — ~/.truverifai/

  • config.json — 你的 tvai_… API 密钥(通过浏览器设备流登录生成;此过程不会接触密码)。
  • gates/current/ — 审查门控代码(Python + Node 启动器), 从此软件包的 vendor/ 目录随包提供。
  • .nudge_state.json、gate_state/ — 本地速率限制/状态文件。

每个检测到的 Agent(用户级;仅适用于在你的计算机上找到的 Agent)

  • Claude Code:插件的 api_token 选项,以及 ~/.claude/settings.json 中的一条 permissions.allow 条目(mcp__plugin_panel-review_truverifai), 以便 Claude 的自动模式分类器允许免费的门控释放调用。 只会合并新增内容 — 文件会先备份,不会创建文件, 也不会删除任何内容。
  • Codex CLI:~/.codex/config.toml 中的 MCP 服务区块(位于 TRUVERIFAI 标记之间) 和 [features] hooks = true;以及 ~/.codex/hooks.json。
  • Cursor:~/.cursor/hooks.json(门控)和 ~/.cursor/mcp.json(工具)。
  • Copilot CLI:~/.copilot/mcp-config.json。
  • VS Code:你的用户级 mcp.json。
  • Gemini CLI:~/.gemini/settings.json(工具条目)。

每个代码仓库(在你运行 init 的仓库中写入,并会提示你确认)

  • .github/hooks/truverifai-gate.json + truverifai-vscode.json (Copilot CLI / VS Code 门控钩子)、.gemini/settings.json(Gemini 钩子)、.agents/hooks.json(Antigravity 钩子)。
  • 可选的 Agent 规则区块(标记为 TRUVERIFAI_RULES_START…END),写入 AGENTS.md / CLAUDE.md / GEMINI.md — 会先征求你的同意。
  • .git/hooks/pre-commit — Git 门控,用于捕获在任何 Agent 外部进行的提交 (也是 --no-verify 会使绕过门控成为明确且可审计操作的唯一层)。在 Git 仓库中运行 init 时会自动安装。它是唯一适用于单个仓库的门控,因此可以通过 cd <repo> && npx @truverifai/init hook 将它添加到其他 仓库。你编写的现有 pre-commit 钩子绝不会被覆盖 — init 会报告并 打印需要手动添加的那一行。

logout 会从上述所有配置中移除 API 密钥。不会将任何内容安装为服务、守护进程或启动项;只有在 Agent 宿主调用钩子时,门控才会运行。

哪些内容会离开你的计算机

  • **登录:**通过与 truverif.ai 进行设备流握手,在浏览器中生成你的 API 密钥。
  • 门控检查(针对有风险的写入/提交):门控会向 api.truverif.ai POST 经哈希处理的仓库指纹(你的 Git 远程 URL 或仓库路径的 SHA-256 — 原始路径/URL 不会离开计算机)、 已更改代码片段的内容哈希,以及本地分类器的类别 标签和分数。不会发送你的源代码,也不会发送你的文件路径 (只发送“测试/文档”等粗略的路径类别标签)。
  • **审查工具(audit_coding 等):**只会发送你的 Agent 在调用审查时明确传入的内容 — 这就是产品本身:你选择提交的差异/上下文会由多个前沿 模型分析。
  • **更新检查:**门控响应可能包含“有较新版本可用”的提示,该提示由服务端根据公开的 npm 注册表计算;客户端只会发送自身的版本字符串。
  • 诊断信息(TVAI_PAYLOAD_LOG)仅保存在本地,且需选择启用 — 不会上传任何内容。

门控在设计上会默认放行:如果我们的服务无法访问或发生任何错误,你的提交/写入会继续进行,并显示一条通知,说明该更改未经过门控。本工具绝不会因自身故障而阻止你的工作。

验证此软件包

完整源代码公开在 github.com/TruVerifAI/init 上——每个 版本都会同步到那里。要手动验证 tarball: 运行 npm pack @truverifai/init,解压后与仓库进行差异比对—— bin/tvai.js、lib/*.js 和 vendor/gates/*.py 构成了完整的运行时代码, 且不依赖任何依赖项。门控代码(vendor/gates/)也发布在 github.com/TruVerifAI/claude-plugins (plugins/panel-review/hooks/)中。构建来源证明(通过 CI 发布并与此仓库建立 密码学关联)是计划中的下一步。

移除

npx @truverifai/init uninstall

一条命令即可彻底移除:

  • init 写入的所有钩子配置(Codex、Cursor、Copilot、VS Code、 Gemini、Antigravity 和 git pre-commit 钩子)、~/.truverifai/ 下的 vendored 门控代码,以及 MCP 服务条目。与其他工具共享的钩子文件会被编辑,而不会删除——只移除带有标记的我们自己的条目。
  • 你的 API 密钥,会在服务器端撤销。 删除本地密钥文件之前, 卸载程序会调用 API 撤销密钥本身,因此任何泄露或同步的副本都会失效。如果服务器无法访问,程序会说明情况并继续执行(本地移除绝不会因网络问题而受阻)。
  • Claude 凭据存储中的插件令牌——在 Mac 上,会就地编辑 Keychain 条目中的 panel-review 值(Keychain 项目本身归 Claude 所有,会保留不动)。
  • init 为共享配置文件创建的 .tvai-bak 备份——仅在确认在线文件已清理干净后才会删除;如果在线文件仍包含我们的条目,则保留其备份并将其作为恢复源。

卸载会如实报告失败:无法移除的内容会在最后列于“需要你处理”下;如果仍有包含机密信息的残留,命令会以非零状态码退出(假定退出码为 0 的 CI 脚本应对此进行检查)。没有提示即表示已清理干净。

卸载还会尝试调用宿主 CLI 来移除 init 安装的插件 (claude plugin uninstall panel-review@truverifai、 codex plugin remove panel-review@truverifai),并尽力而为:每次尝试都会显示结果,失败不会阻止卸载的其余部分;如果没有可运行的 CLI(Claude 桌面应用),程序会显示应用内操作步骤(点击 + 按钮,然后选择 Plugins)。

npx @truverifai/init logout 是更轻量的选项:它会清除密钥(以及我们为存放密钥的文件创建的备份)和 MCP 条目,但会保留已安装的钩子。由于没有密钥,这些钩子会默认放行;之后运行 npx @truverifai/init login 即可重新启用它们。

支持

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。