Grain is the deterministic verification engine for 3D — it grades any asset, from any tool or generator, against a machine-checkable spec, signs a verdict an agent can act on, and tells you exactly what's wrong. It runs where you work: in Blender, in any agent (MCP), in a Mind. And in the agent economy the same signed verdict settles on any chain — proven across BNB Chain, Base, and Solana — releasing on a pass or refunding on a fail, no human, inside a hard custody boundary.
Real npm run grade output — the bundled hero mesh vs the public sample profile. It passes geometry, UVs, textures & validity and fails the prop file-budget: the grader discriminates, it doesn't rubber-stamp.




Not "a 3D checker." The verification engine for 3D: check any asset against an objective spec — in the tool you already use — sign the verdict, and, in the agent economy, settle on it. Verification is the wedge; settlement is the expansion.
A deterministic floor for any asset, any source — triangle budget, watertight/manifold, valid-GLB, UVs present, texture & file-size budgets, named editable params (Khronos-profile-based) — plus a benchmarked semantic layer that catches "you delivered a chair when a barrel was ordered," and one-click Conform that fixes it.
The agent-economy layer: the signed verdict gates payment. The same canonical verdict is chain-agnostic — it settles unchanged on three testnet chains: BNB Chain and Base Sepolia (EVM, EIP-191) and a Solana devnet program (ed25519) — releasing to the seller on a pass, refunding the buyer on a fail, no human, inside a hard custody boundary the releasing key can never pay itself.



An on-chain receipt at settlement — creator, asset hash, verdict — so verified work is ownable and creators keep a royalty trail. Verification is the precondition for trustworthy creative commerce.
A Requester states intent and budget, a Generator delivers, a Grader verifies and signs — and the escrow settles on the verdict.

The Requester Mind states intent + budget + an acceptance profile — the runnable public sample-game-prop@1, or a buyer's own (the tuned thresholds are the moat).

The Generator Mind delivers a candidate GLB — from any generator (Rodin, Meshy, Tripo…) or a human author. Generation is commodity; Grain is generation-agnostic.




The Grader Mind runs the deterministic predicates + the semantic check and signs a pass/fail verdict.

An escrow verifies the signature on-chain — on BNB Chain, Base Sepolia, or Solana devnet — releasing to the seller on pass, refunding the buyer on fail.
See verified releases on BscScan ↗


On a fail, the loop regenerates within budget and re-grades — automatically, until it passes or the budget is spent. No human in the loop.
Beyond the linear loop, a Mind-supervised swarm of role companions (3D Artist · Technical Artist · Programmer) each verify + settle their slice, and the asset only enters the scene behind a causal hash gate. See the live demo →
One engine, in the loop wherever 3D work happens — a Blender add-on, an MCP server any agent can call, and a Minds Skill. The checks are open; the moat is the acceptance profiles that travel across every tool — and the data of what real buyers actually accept.
A "Grade with Grain" sidebar: grade the selection against a profile, highlight non-manifold geometry, and one-click Conform → re-grade green — without leaving Blender.
An MCP server exposing grade_asset · conform · settle · list_profiles to Cursor, Claude Code, and any agent — with a signed, agent-callable verdict the loop can hand straight to settlement.
The same engine over HTTP_Execute — equip it on a Mind to grade a delivered asset and gate settlement. Published + independently verified on both the hellominds and ethoswarm bazaars.
Plus an original, credited methodology Skill family that feeds the kernel — not scraped content: Acceptance-Profile Designer (author the spec) → Game-Ready Prop Authoring (author a passing asset) → the Grader (verify & sign). Design → author → verify → settle.
Equip it on a Mind; give it a GLB + a profile; get a signed pass/fail with per-predicate evidence — and gate settlement.
Author a defensible acceptance profile from real rejection data — the kernel's input. Original, credited methodology; the shape is public, the numbers are the moat.
Generation-agnostic methodology that produces an asset which passes a profile — each step targets a grader predicate. Original, credited.
Parse once, run tri_count · manifold · valid_glb · uv_present · texture_size · file_size · named_params, compose pass/fail, sign the verdict.
Thin generation: any generator → GLB, then attach Grain's declared editable params so the spec is meaningful.
Submit the signed verdict to escrow on BNB Chain / Base Sepolia (EIP-191) or a Solana devnet program (ed25519) — release to seller (pass) or refund buyer (fail). One verdict, any chain.



The public sample bar — generic industry ballparks (tris, UVs, textures, file size). npm run grade runs it on a fresh clone, no keys. Edit it, or bring your own.
A buyer's tuned acceptance bar — the public shape is open; the exact thresholds are the moat (gitignored / Grader-Mind memory, never shipped).
One call repairs a GLB to watertight + on-budget (drop tangents · weld · simplify · attach params) — then re-grade to confirm the pass.
Validators check files but don't move money. Payment rails move money but never check the deliverable. Provenance layers attest origin, not fitness. Grain is the weld.








The grader signs the verdict. It can route money to the buyer or the seller — never to itself.
Verdict authority and custody are different powers, held by different code paths. The escrow has no owner, no setter, no withdraw. Even a fully compromised grader key can only mis-grade — pay the wrong one of two pre-agreed parties — never exfiltrate. The same property holds on both rails — the EVM escrow and the Solana program — so a new chain is just a new adapter, not a re-architecture.


A deterministic floor settles money; a benchmarked semantic layer adds "is it the right thing?" We measured it as a verifier — confusion matrix, threshold sweep, calibrated boundary.
Honest v0 (N=5, visually-distinct categories) — proves the method + the deterministic floor, not the hard cases. Next: ~30+ assets incl. confusable pairs, published as an open verification benchmark.
Yes, and no keys. On a fresh clone, npm run grade grades the bundled hero mesh against the public sample profile sample-game-prop@1 and prints a real per-predicate verdict — with zero keys. Keys are only needed to sign a verdict and to settle on-chain. The verification is the part you can check yourself.
No — bring your own. Pass any AcceptanceProfile / GradePlan JSON via the CLI --profile flag, or inline in the HTTP /grade body (no registration). Our tuned thresholds are never required to run the grader; they're the moat, gitignored.
A deterministic floor of seven checks — triangle budget, watertight/manifold, valid GLB, UVs present, texture-size budget, file-size budget, and named editable parameters — plus an opt-in semantic (render + CLIP) gate that confirms it's the right asset. Every settling check is reproducible code; same asset + profile ⇒ same verdict and the same predicateDigest.
Testnet only, on three chains across two rails: BNB Chain and Base Sepolia (EVM, EIP-191) and a Solana devnet program (ed25519). The same canonical signed verdict settles on any of them — verification produces one verdict, settlement is pluggable per chain. No mainnet.
Three real surfaces over one engine: grain-mcp (any agent — Cursor, Claude Code), a "Grade with Grain" Blender add-on (the artist's loop), and a Minds Grader Skill (the Mind's loop, live on both bazaars) — plus two original, credited methodology Skills that design the profile and author a passing asset.
No. A Mind-supervised swarm of role companions (3D Artist, Technical Artist, Programmer) each verify + settle their slice, and the verified asset only enters the scene behind a causal hash gate — runnable in-browser. See the demo → A Godot grounding demo even loads the same GLB into a real engine only if the verdict passes and the bytes' hash matches.
The contract. The grader key's only power is one binary verdict on a pre-funded order; release and refund go only to the buyer or seller recorded at funding. No owner, setter, or withdraw. A compromised key can mis-grade, never exfiltrate — and the property holds on both the EVM escrow and the Solana program.
The predicate code is commodity — and open. The defensible asset is the acceptance-profile data: what real buyers (TADs, QA leads, marketplace inspectors) actually accept. Accumulated from real rejection data, not scrapeable, and mapped to willingness-to-pay. And 3D is just the wedge — the substrate (escrow, custody boundary, signed verdict, profiles, Skill) is vertical-agnostic.
No — that fear is backwards. What flattens games into formulaic, borrowed-from-the-past output isn't a check; it's the conformance grind — the triangle budget, the manifold, the valid GLB, the re-export, the QA pass — eating the hours that should go to art. Grain is not a taste engine, an art judge, or a generator: it grades only the commodity floor and signs a verdict that's identical no matter how distinctive the work is. It never rules on whether a thing is beautiful, original, or good. The spec is the floor, not the ceiling — Grain clears the grind so the artistry has room.
Grain turns creative intent into verified, settled, owned work — constrained, user-aligned autonomy for agentic commerce.
Grain runs on public testnets today — no mainnet, no real funds. Figures are honest-v0 measurements with stated limits. This page describes a working demo and an in-progress product, not financial advice. Built on Minds by Animoca Brands (beta).