🎁 Get the FREE AI Skills Starter Guide β€” Subscribe β†’
BytesAgainBytesAgain
πŸ¦€ ClawHub

Scaffold Art Script

by @ryley-o

Build or convert Art Blocks generative art scripts using artblocks-mcp. Use when helping a user create, scaffold, port, or convert an art script for Art Bloc...

Versionv1.0.0
Downloads535
TERMINAL
clawhub install scaffold-art-script

πŸ“– About This Skill


name: scaffold-art-script description: Build or convert Art Blocks generative art scripts using artblocks-mcp. Use when helping a user create, scaffold, port, or convert an art script for Art Blocks, or when working with tokenData, hash-based PRNG, FLEX dependencies, PostParams, window.$features traits, p5.js, Three.js, or the Art Blocks generator format.

Scaffolding Art Blocks Projects

Always Fetch the Generator Spec First

Before any art script work, fetch this MCP resource:

artblocks://generator-spec

It contains the authoritative reference for: tokenData structure, hash-based PRNG patterns, FLEX dependency types (IPFS, Arweave, ONCHAIN, Dependency Registry), supported script types and library versions, HTML structure requirements, and window.$features. It also includes the step-by-step conversion guide for porting existing scripts.

Scaffolding a New Project

Use scaffold_artblocks_project to generate a ready-to-run index.html + starter art script.

Parameters

| Param | Options / Notes | |--------------------------|---------------------------------------------------------------------------------------------------| | scriptType | "js" (vanilla), "p5js", "threejs" β€” required | | dependencyVersion | p5.js: "1.0.0" or "1.9.0" (default). Three.js: "0.124.0", "0.160.0", "0.167.0" (default). Ignored for "js". | | includePostParams | true β€” adds ONCHAIN/PostParams (PMP) stubs in tokenData and example usage | | includeFlexDependencies| true β€” adds IPFS and Arweave dependency stubs with usage patterns | | includeFeatures | true β€” adds window.$features trait assignment stub |

Note on Three.js v0.167.0: uses ES module import maps instead of a global