Files

ProjectCapture Blockbench MCP

Diese Werkzeugkette erzeugt aus dem exakt gepinnten Blockbench-MCP-Upstream einen gehärteten, reproduzierbaren Entwicklungs-Build. Sie installiert nichts automatisch in Blockbench oder Codex und speichert keine Geheimnisse im Repository.

Sicherheitsprofil

  • Serverbindung ausschließlich an 127.0.0.1.
  • Jede HTTP-, Health- und MCP-Anfrage benötigt einen Bearer-Token aus PROJECTCAPTURE_BLOCKBENCH_TOKEN (mindestens 32 Zeichen).
  • Alle Dateiimporte und -exporte liegen unter dem absoluten Verzeichnis aus PROJECTCAPTURE_ASSET_ROOT; absolute Pfade, .., falsche Dateiendungen, Symlink-Eltern und Symlink-Ziele werden abgewiesen.
  • Die Werkzeugregistrierung ist fail-closed. risky_eval, frei wählbare Blockbench-Actions, Klicksimulation, URL-Importe, beliebige Exporte und App-Screenshots werden nicht über MCP registriert.
  • Netzwerkgeladene MCP-Prompts sind im gehärteten Build entfernt.
  • Codex erhält zusätzlich eine explizite Werkzeug-Allowlist aus examples/codex-config.toml.

Reproduzierbarer Ablauf

Voraussetzungen sind git, pnpm und ein POSIX-Shell-Umfeld. Bun wird über pnpm dlx bun@1.3.14 exakt gepinnt und nur im Paketmanager-Cache verwendet.

./scripts/test.sh
./scripts/build.sh
./scripts/stage-hytale-plugin.sh

test.sh klont Commit 6b069e3… in ein temporäres Verzeichnis, prüft den Patch-Hash, wendet den Patch an und führt die automatisierten Tests aus. build.sh wiederholt diese Prüfung, baut anschließend das Plugin und legt nur reviewbare Artefakte plus SHA-256-Datei in dist/ ab. stage-hytale-plugin.sh holt ausschließlich den gepinnten offiziellen Hytale-Plugin-Commit und prüft dessen bereits veröffentlichtes Distributionsfile gegen den Lock-Hash.

Lokale Laufzeitwerte

Der gehärtete Build startet absichtlich nicht, solange beide Variablen fehlen:

export PROJECTCAPTURE_BLOCKBENCH_TOKEN='<zufälliger Token, nicht committen>'
export PROJECTCAPTURE_ASSET_ROOT='/absoluter/Pfad/zu/ProjectCapture/devtools/blockbench-assets'

Mit scripts/create-local-env.sh AUSGABEDATEI ASSET_ROOT kann außerhalb des Repositories eine Datei mit Modus 0600 erzeugt werden. Das Skript verweigert Ausgaben innerhalb dieses Git-Arbeitsbaums. Die Datei wird nicht automatisch geladen und nicht in Codex eingetragen.

Review und Installation

Nach erfolgreichem Review kopiert scripts/install-reviewed.sh --i-reviewed-gpl ZIELVERZEICHNIS die beiden geprüften JavaScript-Dateien in ein ausdrücklich angegebenes Verzeichnis. Das Skript verändert keine Codex-Konfiguration. Die Vorlage examples/codex-config.toml muss separat und mit bearer_token_env_var übernommen werden; ein Tokenwert gehört nie in TOML.

Hytale-Werkzeuge

Der Patch ergänzt sichere Werkzeuge für Capability-Probe, Hytale-Projekterzeugung, Validierung, PNG-Import/-Export, .bbmodel, .blockymodel, .blockyanim und Attachments. Gruppen-Defaults, Texturflags, Datenpunkte von Keyframes, asynchrones Codec-Kompilieren sowie Quad-Normalen/-Flächen und Flat-Shading sind korrigiert.

Der statische Build und die automatisierten Tests ersetzen nicht das Live-Gate: Nach Installation müssen Blockbench 5.0.7 und Hytale Models 0.9.1 gemeinsam ein neutrales Testwesen öffnen, speichern, neu laden und in alle drei Formate exportieren. Erst danach gilt das Asset-Gate als bestanden.