TruVerifAI Panel-review について
TruVerifAI Panel-reviewは、複数モデルによるコードレビューツールと、リスクの高い編集やコミットを確認するローカルフックを提供します。初期化CLIで、対応する複数のコーディング環境にレビュー機能を設定できます。
主な機能
- 01複数モデルのコードレビューツール
- 02コミット前・書き込み前のゲート
- 03複数のコーディング環境に対応
- 04ゲート状態と切り替えの管理
- 05設定確認、ログアウト、アンインストール
活用シーン
- 01コミット前の高リスクなコード変更の確認
- 02エージェントの書き込み時にローカルレビューを実行
- 03複数のコーディング環境へのレビュー機能設定
- 04ゲート状態と必要なランタイムの確認
MCP 対応
初期化プログラムは、対応するコーディング環境にTruVerifAI MCPサーバーとレビューツールを設定します。自動ゲートを無効にしてもレビューツールは接続されたままです。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://mcp.truverif.ai/mcpclaude mcp add --transport http truverifai-panel-review https://mcp.truverif.ai/mcp{"mcpServers":{"truverifai-panel-review":{"type":"http","url":"https://mcp.truverif.ai/mcp"}}}Cursor で開く{"servers":{"truverifai-panel-review":{"type":"http","url":"https://mcp.truverif.ai/mcp"}}}VS Code で開く{"mcpServers":{"truverifai-panel-review":{"type":"http","url":"https://mcp.truverif.ai/mcp"}}}{"mcpServers":{"truverifai-panel-review":{"serverUrl":"https://mcp.truverif.ai/mcp"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://mcp.truverif.ai/mcp認証が必要ツール
詳細
@truverifai/init
AI コーディングエージェントを TruVerifAI に接続するワンコマンドツールです。 — 複数モデルによるレビュー機能に加え、ローカルで動作するコミット前/書き込み前のレビューゲートを、Claude Code、Codex CLI、Cursor(IDE+CLI)、VS Code/GitHub Copilot、Gemini CLI、Antigravity で利用できます。
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
エージェント名は claude、codex、copilot、vscode、cursor、gemini、antigravity です。hook は Git のコミット前ゲート、rules はエージェントルールのブロックです。確認プロンプトで拒否すると、何も書き込まずに終了します。認識されないフラグを指定した場合も、何も書き込まずに終了します(インストールに進むことはありません)。
MIT ライセンスです。実行時依存関係はゼロです。このパッケージは、最小化されていないプレーンな JavaScript と Python で構成されています。npm pack @truverifai/init を実行して、すべての行を確認できます。ビルド手順はなく、推移的なサプライチェーン依存関係もありません。
動作を見る
- ▶ 90 秒のデモ — ゲート、パネル、そしてゲートが検出した重大な欠陥
- ▶ 詳しい解説(8 分) — セットアップ、ゲート、スキップとオーバーライド、カスタムしきい値
- ▶ 拡張デモ(4 分) — BYOM/BYOK を使った中間的な構成
要件
- 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 では tvai バイナリが PATH に追加されないため、グローバルにインストールしていない場合は上記の完全な形式を使ってください。)
このコマンドは enable_gates を ~/.truverifai/config.json に書き込みます。この設定は、Git のコミット前フックと Codex、Cursor、Copilot、VS Code、Gemini、Antigravity の各フックを含む、すべての提供先で読み取られます。MCP レビューツールはどちらの状態でも接続されたままです。停止するのは自動ゲート機能だけです。
知っておくべきことが 2 つあります。
- 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/— ローカルのレート制限/状態ファイル。
検出されたエージェントごと(ユーザーレベル。マシン上で見つかったエージェントのみ)
- Claude Code:プラグインの
api_tokenオプションと、Claude の自動モード分類器が無料のゲート解除呼び出しを許可するための~/.claude/settings.json内のpermissions.allowエントリ(mcp__plugin_panel-review_truverifai)を設定します。追加のみのマージです。ファイルは事前にバックアップされ、作成されることはなく、既存の内容が削除されることもありません。 - 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 フック)。- 任意のエージェントルールブロック(
TRUVERIFAI_RULES_START…ENDでマーク)をAGENTS.md/CLAUDE.md/GEMINI.mdに追加します。事前に確認を求めます。 .git/hooks/pre-commit— エージェントの外で行われたコミットを検出する git ゲートです(--no-verifyによる無効化が、明示的で監査可能な操作となる唯一のレイヤーです)。git リポジトリ内でinitを実行すると自動的にインストールされます。リポジトリ単位のゲートはこれだけなので、他のリポジトリにはcd <repo> && npx @truverifai/init hookで追加してください。ユーザーが作成した既存の pre-commit フックが上書きされることはありません。init はそのことを報告し、手動で追加する行を表示します。
logout は、上記のすべての設定から API キーを削除します。サービス、デーモン、起動項目としてインストールされるものはありません。ゲートが実行されるのは、エージェントホストがフックを呼び出したときだけです。
マシンの外に送信される情報
- ログイン:
truverif.aiとのデバイスフローのハンドシェイクにより、ブラウザーで API キーが発行されます。 - ゲートチェック(リスクのある書き込み/コミット時): ゲートは
api.truverif.aiに、ハッシュ化されたリポジトリのフィンガープリント(git リモート URL またはリポジトリパスの SHA-256。生のパス/URLがマシンの外に送信されることはありません)、変更されたハンクのコンテンツハッシュ、ローカル分類器のカテゴリラベルとスコアを POST します。ソースコードは送信されません。ファイルパスも送信されません(「test/docs」のような大まかなパス分類タグのみ送信されます)。 - レビュー用ツール(
audit_codingなど): エージェントがレビューを呼び出す際に明示的に渡した内容だけを送信します。これが製品の機能です。送信することを選んだ差分/コンテキストは、複数の最先端モデルによって分析されます。 - 更新チェック: ゲートの応答には、公開 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
1 つのコマンドで完全に削除できます。
- init が書き込んだすべてのフック設定(Codex、Cursor、Copilot、VS Code、
Gemini、Antigravity、git の pre-commit フック)、
~/.truverifai/配下の ベンダー提供ゲートコード、MCP サーバーのエントリ。ほかのツールと共有している フックファイルは削除せずに編集し、マーカーに一致する自分たちのエントリのみを 取り除きます。 - サーバー側で失効させた API キー。 ローカルのキーファイルを削除する前に、 アンインストールによって API が呼び出され、キー自体が失効します。そのため、 漏えいしたり同期されたりしたコピーも無効になります。サーバーに接続できない 場合はその旨を表示して処理を続けます(ローカルでの削除がネットワークによって ブロックされることはありません)。
- Claude の認証情報ストアにあるプラグイントークン — Mac では、Keychain の エントリにある panel-review の値をその場で編集します(Keychain の項目自体は Claude のものなので、そのまま残します)。
- init が共有設定ファイル用に作成した
.tvai-bakバックアップ — 稼働中の ファイルがクリーンであると確認された後にのみ削除されます。稼働中のファイルに 自分たちのエントリが残っている場合、そのバックアップは復元元として名前を付けて 保持されます。
アンインストールでは失敗も隠さずに報告します。削除できなかったものはすべて 最後に「対応が必要」の項目として表示され、シークレットを含む残存物がある場合、 コマンドはゼロ以外の終了コードで終了します(終了コード 0 を前提としている CI スクリプトでは、この点を確認してください)。何も表示されなければクリーンです。
アンインストールでは、init がインストールしたプラグインを削除するために
ホストの CLI も試します(claude plugin uninstall panel-review@truverifai、
codex plugin remove panel-review@truverifai)。各試行の結果が表示され、
失敗してもアンインストールの残りの処理はブロックされません。実行可能な CLI がない
場合(Claude デスクトップアプリなど)は、アプリ内での手順が表示されます
(+ボタン、次に Plugins)。
npx @truverifai/init logout は、より簡易な方法です。キー(およびキーを含む
ファイルのバックアップ)と MCP エントリを削除しますが、フックはインストール
されたままです。キーがないためフックはフェイルオープンとなり、その後
npx @truverifai/init login を実行すると再び有効になります。
サポート
- セットアップページ:https://truverif.ai/settings/mcp
- 問題・質問:[email protected]
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
