{
  "slug": "effekseer-vfx",
  "skill": "effekseer-vfx",
  "upstream": "kanaworksai-hue/effekseer-vfx-skill@b0eea1085f2e3e0fa0b5cc77c58c9a845f0bec96",
  "upstreamSha": "b0eea1085f2e3e0fa0b5cc77c58c9a845f0bec96",
  "date": "2026-11-03",
  "engine": "effekseer-vfx CLI on Linux x64: EffekseerCore 1.80.7 on .NET 9 + Godot 4.7.2 (official Effekseer plugin)",
  "env": [
    "Node v22.11.0",
    "Python 3.13 with the skill's own venv (setup.sh --authoring-only)",
    "GameSkill linux-setup.sh: Effekseer 1.80.7 and the .NET 9.0.20 linux-x64 runtime, both checksum-verified",
    "Godot 4.7.2-stable under xvfb for the filmstrip review"
  ],
  "trigger": "static",
  "passed": 29,
  "total": 29,
  "commands": [
    "(cd examples && env GODOT={godot} python3 tests/run_tests.py)",
    "(cd examples && env GODOT={godot} python3 tests/screenshot.py ../screenshot.png)"
  ],
  "checks": [
    {
      "criterion": "trigger",
      "name": "every skill in the pack says when to use it (2 skills)",
      "pass": true,
      "detail": "2/2"
    },
    {
      "criterion": "trigger",
      "name": "triggers on: \"Make a heavy hit effect for my Godot action game with Effekseer\"",
      "pass": true,
      "detail": "rank 1/122, overlap 4, via effekseer-vfx"
    },
    {
      "criterion": "trigger",
      "name": "triggers on: \"I need a fireball projectile and its explosion as Effekseer effects, and show me how they look\"",
      "pass": true,
      "detail": "rank 2/122, overlap 4, via effekseer-vfx"
    },
    {
      "criterion": "trigger",
      "name": "triggers on: \"Review this .efk slash effect and tell me what to fix\"",
      "pass": true,
      "detail": "rank 1/122, overlap 4, via effekseer-vfx"
    },
    {
      "criterion": "trigger",
      "name": "does not trigger on: \"Make a pixel art coin sparkle sprite sheet\"",
      "pass": true,
      "detail": "rank 30/122, overlap 0, via effekseer-vfx"
    },
    {
      "criterion": "trigger",
      "name": "does not trigger on: \"Write the inventory UI for my RPG\"",
      "pass": true,
      "detail": "rank 13/122, overlap 0, via effekseer-vfx"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: linux-setup.sh",
      "pass": true,
      "detail": "doctor reports every mode ready: {'authoring': True, 'build': True, 'render': True}"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx-review skill sits next to effekseer-vfx (flat install)",
      "pass": true
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx init",
      "pass": true,
      "detail": "workspace plus the official Effekseer Godot plugin: {'ok': True, 'workspace': '/tmp/effekseer-gs-dfsk8_wy/vfx', 'plugin_installed': True}"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: the Godot plugin ships a Linux x64 library",
      "pass": true,
      "detail": "libeffekseer.x86_64.so"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx examples add hit, fire",
      "pass": true,
      "detail": "{'ok': True, 'effects': ['VFX_Hit_Heavy'], 'copied': ['vfx/src/VFX_Hit_Heavy.py', 'vfx/briefs/VFX_Hit_Heavy.json'], 'alr"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: our brief validates with no errors or warnings",
      "pass": true
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx lint",
      "pass": true,
      "detail": "no errors for any effect in the project: {}"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx lint",
      "pass": true,
      "detail": "no craft warnings for our effect: None"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx build",
      "pass": true,
      "detail": "EffekseerCore compiles every effect on Linux: VFX_Fire_Explosion, VFX_Hit_Heavy, VFX_Lantern_Pop, VFX_Projectile_Fire"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: runtime file for our effect written",
      "pass": true,
      "detail": "VFX_Lantern_Pop.efk"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx review VFX_Lantern_Pop",
      "pass": true,
      "detail": "Godot renders the filmstrip: VFX_Lantern_Pop.png"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: VFX_Lantern_Pop filmstrip shows a rendered scene (not blank)",
      "pass": true
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: no review flags on our effect",
      "pass": true,
      "detail": "None"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: vfx review VFX_Hit_Heavy",
      "pass": true,
      "detail": "Godot renders the filmstrip: VFX_Hit_Heavy.png"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: VFX_Hit_Heavy filmstrip shows a rendered scene (not blank)",
      "pass": true
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: review-handoff writes the brief for an independent vfx-review pass",
      "pass": true,
      "detail": "5595a4b19069445b8e5735de9c1d9557.md"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: texture-info measures a shipped texture",
      "pass": true,
      "detail": "{'T_Impact01': {'name': 'T_Impact01', 'size': [256, 256], 'coverage': 0.1155, 'opaque': False, 'seam_ratio': 0.0, 'bbox'"
    },
    {
      "criterion": "runs",
      "name": "setup, init, lint, build and Godot review for the author's hit and fire set and our lantern pop: exits 0 with no script errors",
      "pass": true,
      "detail": "exit 0"
    },
    {
      "criterion": "output",
      "name": "screenshot screenshot.png rendered",
      "pass": true
    },
    {
      "criterion": "output",
      "name": "self-check list has at least 3 items",
      "pass": true,
      "detail": "6 items"
    },
    {
      "criterion": "single",
      "name": "one job per skill (reviewed)",
      "pass": true,
      "detail": "One job: real-time Effekseer effects as code, built with EffekseerCore and judged from Godot-rendered frames, with a separate reviewer skill. Pixel-art effects, shaders and game-feel timing are left to pixelfx, godot-shaders and game-feel."
    },
    {
      "criterion": "bilingual",
      "name": "English SKILL.md from upstream",
      "pass": true
    },
    {
      "criterion": "bilingual",
      "name": "Chinese guide written",
      "pass": true,
      "detail": "1747 chars"
    }
  ]
}
