GuestKit について
GuestKitは、移行チームや運用担当者向けのオフラインVMディスク保証ツールキットです。起動準備度を評価し、確認可能な修復・移行計画を作成して、対応するディスク形式と移行先の署名付き切り替え記録を発行できます。
主な機能
- 01初回起動の準備度を評価し阻害要因を説明
- 02移行先別の計画を作成
- 03バックアップとロールバック付きで修復を適用
- 04署名付きCutover Passportを発行
- 05準備度スコアでCIをゲート
- 06ディスクイメージをオフラインで検査
活用シーン
- 01移行前にVMディスクを評価
- 02選択した仮想化環境向けにディスクを準備
- 03初回起動前に修復内容を確認して適用
- 04CIで起動準備度のしきい値を適用
MCP 対応
`guestkit mcp-serve`はstdioでMCPサーバーを起動し、単一のディスクイメージ向けに6種類の読み取り専用エビデンスツールを公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm ghcr.io/zyvorai/guestkit-mcp:1.2.9ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/zyvorai/guestkit-mcp:1.2.9stdioツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
GuestKit
電源を入れる前に、起動することを確認。
オフラインでのVM診断と移行保証。 GuestKitはゲストの電源がオフの状態でVMディスクを読み取り、初回起動の準備状況を0~100で評価します。内容を確認できるプランに沿って修復し、署名付きPassportで切り替えを証明します。
6種類のディスク形式 · 0~100の起動スコア · アプライアンスデーモン0個 · 8種類の移行先 · Apache-2.0
ギャラリー · ドキュメント · 製品 · Wiki · 30日間のエンタープライズトライアル
新着情報
| リリース | 変更点 |
|---|---|
| Agent (1.2.6) | ゲストエージェントのコンテナごとのeBPFネットワークポリシーとBPF-LSM制御(guestkit.netpolicy / guestkit.lsm)。デフォルトでは無効で、まず監査を行い、期限付きリースの間だけ適用します |
| 1.2.5 | run_migrate_repairでオフラインインジェクションに対応:ホスト名、ネットワーク、ユーザー、サービス、初回起動スクリプト、cloud-init、AD再参加、Windows KMSとRDPを修復プランに追加 |
| 1.2.5 | オンラインスナップショットでは、特権ヘルパーを通じてファイルシステムをフリーズするため、非特権エージェントを使ったPVCベースのVMのKubeVirtスナップショットが可能です |
| 1.2.5 | Linuxエージェントが標準ディストリビューションでvirtioチャネルに接続できるようになりました(udevルールはDEB、RPM、tarballに同梱)。同時に行うNBDマウントの競合も解消しました |
| 1.2.2 | Web Image VaultがTUIと同等の機能に対応:インベントリータブ、Assurance(プラン、Passport、修復プレビュー、制御された適用)、Profiles、Files |
| 1.2.0 | 保証付きQEMU/VirtIOランタイムguestkit-qemu、guestkit vm、virtctl-guestkit guestfs、切り替えバンドル、大容量ディスク向けのguestkit shrink |
全履歴:CHANGELOG.md。
GuestKit を選ぶ理由
すべてのハイパーバイザー移行で同じ問題が起きます。切り替え時間帯に、電源を入れた後で、ディスクの破損に午前2時になって気づくのです。GuestKit はゲストを停止したまま、独自の純粋な Rust エンジン(NBD またはループマウント)を通じて、qcow2、VMDK、VHDX、VHD、VDI、raw のディスクを読み取ります。アプライアンスデーモンはなく、「電源を入れて確認する」必要もありません。
| こんなとき… | GuestKit なら… |
|---|---|
| 「起動するか?」の答えが電源投入時にしかわからない | 各阻害要因の根本原因をたどれる、オフラインの診断スコア(0~100)を確認できます |
| 移行のたびにスクリプトと暗黙知に頼っている | JSON/YAML の構造化されたプランを作成し、同じスコアで CI ゲートを設定できます |
| 切り替え週末に予想外のことが次々と起きる | 8 つのターゲットに対応した、ハイパーバイザーを考慮した移行プランと day-0 パックを利用できます |
| 何を確認したか監査証跡が残らない | ディスクごとに署名付きの切り替えパスポートを作成できます |
| マウントしたイメージを手作業で直接修正している | 読んで確認できる修正プランを作成し、バックアップとロールバックを備えて適用できます |
| 移行順を手作業で推測している | 依存関係を考慮したウェーブを計画する fleet wave-plan を利用できます |
修正が暗黙に適用されることはありません。修正は読んで確認できるプランを通じて、バックアップとロールバックを備えて適用されます。また、同じスコアが CI ゲート、署名付きの切り替えパスポート、保証付き QEMU 起動に活用されます。
|
起動準備スコア 初回起動の確率を0~100で示し、阻害要因を説明して、レビュー可能な修正プランを提示します。 切り替えの課題 |
オフライン修復 読んで確認できるプランを通じて、バックアップとロールバックを備えて修復を適用します。 できること |
移行の保証 同じスコアが CI ゲート、署名付きの切り替えパスポート、保証付き QEMU 起動に活用されます。 クイックスタート |
|
エンジンとフォーマット qcow2、VMDK、VHDX、VHD、VDI、raw に対応する純粋な Rust エンジンを、NBD またはループマウント経由で利用できます。 プラットフォームの構成 |
スイート間の引き継ぎ Transiva でエクスポートし、h2kvm で変換とデプロイを行い、GuestKit で保証して、Zorvia または Zeus OS で運用できます。 それぞれの役割 |
CLI、TUI、ウェブ、CI CLI、TUI、QEMU、Python、ウェブコンソール、ゲスト内エージェント、GitHub Action を利用できます。 ウェブスタックを実行する |
70+ 個のコマンド · 6 種類のディスクフォーマット · 0 個のアプライアンスデーモン · 8 個の移行ターゲット · Apache-2.0

詳細な比較には、フリートのドリフト、ゲスト内エージェントを備えた Carbon TUI、virsh qemu-agent-command のドロップイン代替となる guestkit qga など、さらに多くの項目が掲載されています。
GuestKit と libguestfs + virt-v2v の比較

| GuestKit | libguestfs + virt-v2v | |
|---|---|---|
| ディスクアクセス | Rust エンジン。ホスト上の qemu-nbd またはループマウントを介してゲストのファイルにアクセスします | 小規模なアプライアンス VM を起動して、ディスクの読み取りと編集を行います |
| 起動準備状況 | doctor:ターゲットごとの初回起動スコア(0~100)と、ブロッカーの説明を提供します | 検査と変換を行います。準備状況のスコアはありません |
| 移行計画 | ターゲット(kvm、proxmox、qemu、kubevirt、aws、azure、gcp、hyperv)ごとの migrate-plan | virt-v2v でゲストを変換し、KVM 上で実行します |
| 修復 | バックアップとロールバックに対応した修正計画。SSH、GRUB、パスワードには rescue を使用します | スクリプトによる編集に virt-customize、virt-rescue、guestfish を使用します |
| 切り替えの証跡 | 署名付き Cutover Passport と、スコアが基準を下回ると失敗する GitHub Action | ツールキットには含まれていません |
| インターフェース | CLI、TUI、Python、ウェブコンソール、ゲスト内エージェント、GitHub Action | CLI ツールと言語バインディング |
| libguestfs を選ぶ場合 | 幅広いファイルシステムと OS への対応、または virt-v2v によるエンドツーエンドの変換が必要で、スコアや切り替え記録が不要な場合 |
GuestKit は変換ツールをすべて置き換えるのではなく、それらと連携します。h2kvm が変換とデプロイを行い、オフラインでの修正には GuestKit を呼び出します。
実際の画面を見る
Assurance:doctor スコア 78、REVIEW 判定、修正コマンドがそれぞれ付いた重要度順の検出事項。
概要:inspect から取得した OS の識別情報とインベントリ件数。
Image Vault:ディスクをインポートするか、オフラインデモを試せます。
同梱の OSS ウェブコンソールでオフラインデモデータを表示しています。ライブ環境へのデプロイではありません。デモ動画はギャラリーにあります。
全体の仕組み

disk.qcow2 / .vmdk / .vhdx / .vhd / .vdi / .raw
│
▼
┌──────────────────────┐
│ Pure-Rust engine │──► doctor 0–100 + blockers
│ NBD / loop mount │──► migrate-plan YAML
└──────────────────────┘──► Passport · repair · CI gate
│ guestkit-qemu (assured launch)
CLI · TUI · QEMU · Python · Web · Agent · GitHub Action
Transiva(Apache-2.0)でエクスポート → h2kvm(Zyvor Production License)で変換とデプロイ → GuestKit(Apache-2.0)で保証 → Zorvia または Zeus OS で運用します。 FluxVM で VM を実行、管理します。各ツールの役割 · h2kvm との連携
アーキテクチャの詳細:docs/architecture/overview.md。
クイックスタート
# v1.2.6 GitHub Release — crates.io `guestkit` is still 0.3.2
curl -fsSL -O https://github.com/zyvorai/zyvor-guestkit/releases/download/v1.2.6/guestkit-1.2.6-linux-amd64.tar.gz
guestkit doctor vm.qcow2 --target proxmox --explain
guestkit migrate-plan vm.vmdk --target kvm --export plan.yaml
guestkit passport emit vm.qcow2 --target kvm -o passport.json
guestctl tui vm.qcow2 # Assurance · preview · export
guestkit-qemu plan vm.qcow2 --json # assurance → QEMU definition
CI ゲート — 同じスコアで、CLI のインストール手順は不要です。
- uses: zyvorai/guestkit@v1
with:
disk: vm.qcow2
target: kvm
fail-below: '80'
対象:kvm · proxmox · qemu · kubevirt · aws · azure · gcp · hyperv。ホストの要件:qemu-img、losetup、qemu-nbd を備えた Linux(マウント/修復には root 権限が必要な場合があります)。
Python(v1.1.0 以降)は PyPI で入手できます。pip install zyvor-guestkit を実行し、次に guestkit.run_doctor("vm.qcow2", target="kvm", explain=True) を呼び出します。クイックスタート、縮小、Python の例については、docs/quick-start.md をご覧ください。
MCP サーバー — guestkit mcp-serve <image> [--target kvm] は、1 つのディスクイメージに対して 6 つの読み取り専用エビデンスツールを公開する stdio MCP サーバーです。cargo build --release --features mcp でビルドします。レジストリ名は io.github.zyvorai/guestkit、OCI イメージは ghcr.io/zyvorai/guestkit-mcp です。ディスクを開くには loop/NBD が必要なため、コンテナーのデフォルトユーザーは nonroot ですが、--privileged(またはデバイスと SYS_ADMIN)を指定して root として実行する必要があります。docs/guides/MCP.md と DOCKER.md をご覧ください。
ドキュメント
| 目的 | ドキュメント |
|---|---|
| ドキュメントサイト | zyvorai.github.io/zyvor-guestkit |
| ドキュメントのホーム | docs/README.md · INDEX |
| DevOps ランブック | docs/devops |
| 機能ガイド | guestkit-user-feature-guide.md |
| h2kvm 統合 | h2kvm 統合 |
| QEMU / VirtIO ランタイム | qemu-runtime.md |
| virsh から GuestKit へのダンプ | virsh-to-guestkit.md |
| アーキテクチャ | 概要 |
変更履歴とロードマップを含む全体マップは、docs/documentation-map.md にあります。
さらに詳しく
- ギャラリー: コンソールのスクリーンショットとデモ動画 — docs/gallery.md。
- 各ツールの役割: スイートの構成と libvirt/virsh の対応表 — docs/who-does-what.md。
- h2kvm 統合: docs/h2kvm-at-a-glance.md。
- できること: 保証、計画、認定、修復、起動 — docs/capabilities.md。
- 無料のウェブスタック(GHCR): docs/web-stack-ghcr.md。
- オープンソース版と Enterprise 版: docs/oss-vs-enterprise.md。
- プラットフォームの構成: docs/platform-layout.md。
- リポジトリ: docs/repository-layout.md。
- 前提条件とビルド: docs/prerequisites-and-build.md。
docs/とこの README が正式な情報源です。
オープンソース、エンタープライズ
オープンソース — Apache-2.0 のもとで無料です。 このリポジトリは、個人、ラボ、商用の本番環境で利用できます。完全オフライン対応の doctor、migrate-plan、repair、fleet、policy · CLI · TUI · Python · セルフホスト可能な Web/ワーカーを提供します。
エンタープライズ — プログラム向けにご購入いただけます。 同じエンジンを使用し、doctor がロックされることはありません。Command Center · Portfolio · Assurance · Migration Factory · Passport Authority · OIDC/RBAC/監査 · SLA · エアギャップ · ハイパーバイザー離脱ワークショップ。
オープンソースとエンタープライズの比較 · 全機能比較表 · エンタープライズの30日間トライアル · 料金
トライアルの期限が切れた場合、またはガイド付きの評価をご希望の場合は、デモを予約するか、30日間の PoC を開始してください。メールアドレスは不要です。予備の連絡先として [email protected] も引き続きご利用いただけます。
成熟度
GuestKit は v1.2.6 です(GitHub リリース;PyPI zyvor-guestkit;crates.io の guestkit は引き続き 0.3.2)。アーキテクチャの概要では、エンジンの対象範囲を明確に示しています。
| 領域 | 状況 |
|---|---|
| 純粋な Rust による解析:パーティションテーブル、ファイルシステムのシグネチャ、エビデンススキーマ、ブートエンジン、アシュアランス API | 提供済み |
Web UI(deploy/ui: インベントリ、Assurance、Profiles、Files)、GHCR zyvor-ui | 提供済み |
| プロセス内での QCOW2 読み取り | 部分対応:形式の検出と選択的な読み取りに対応。クラスター全体の走査は qemu-nbd に委ねます |
| ゲスト内のファイルアクセス | ループデバイス/qemu-nbd とホストマウント経由です。プロセス内の ext4/NTFS パーサーは使用しません |
guestkit shrink | 設計上、対象を限定しています:MBR または GPT の単一/最後の ext2/3/4 パーティションのみが対象です。LVM/LUKS には対応しません。それ以外のレイアウトは報告され、そのまま変更されません |
GHCR Web スタック(deploy/docker-compose.ghcr.yml) | 評価専用:認証はなく、localhost の外部に公開しないでください |
| ゲストエージェントの eBPF ポリシーと LSM | オプトイン:capabilities.ebpf によって制御され、デフォルトでは無効です |
Zyvor スタックの一部
| 製品 | GuestKit と連携する役割 |
|---|---|
| GuestKit | オフライン VM アシュアランス:ブートスコア、修復、Cutover Passport |
| Transiva | ソースハイパーバイザーから VM をエクスポートし、GuestKit の上流で動作します |
| h2kvm | KVM に変換してデプロイします。オフライン修正には GuestKit の Python パッケージを使用します |
| Zorvia | 移行した VM を運用するための KubeVirt VM プラットフォームです |
| FluxVM | VM を実行・管理します。本番運用、ネットワーク、TTL はここで担い、guestkit vm では担いません |
サポート
Apache-2.0 のもとで無料です。役に立った場合は、お好きな金額を寄付できます:https://rzp.io/rzp/utwdYh3。寄付は任意であり、開発とメンテナンスを支援するものです。購入ではありません。サポート、SLA、機能、優先対応、ライセンスの提供はなく、税控除の対象にもなりません(Zyvor AI Labs Private Limited は慈善団体ではなく企業です)。Zyvor Enterprise(サポート対象のリリース、SLA、専任の連絡先、エンタープライズ機能)は別サービスです:[email protected]。
ライセンス
GuestKit は Apache License, Version 2.0 のもと、無料のオープンソースソフトウェアです。Apache-2.0 の条件(必要に応じて通知および NOTICE を保持すること)に従い、個人利用、ラボでの利用、商用の本番環境での利用に、無償で使用、変更、実行できます。NOTICE と、該当する場合は docs/legal/ をご覧ください。この点に変更はありません。
Zyvor Enterprise では、本番環境を運用するチームから求められる、サポート対象リリース、デプロイとアップグレードのガイダンス、優先的なインシデントのトリアージ、専任の技術担当者、24 時間 365 日対応の緊急問い合わせ窓口を提供します。本番環境のサポート、SLA、Zyvor Enterprise 製品は別途ライセンスが必要です。プランと条件については、docs/SUBSCRIPTION-MODEL.md · 料金 · [email protected]をご覧ください。
脆弱性は SECURITY.md に従って非公開で報告してください。詳細は zyvor.dev/guestkit · ドキュメント · ブログをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。