Jabbertoon JSON Schemas
These JSON Schemas describe Jabbertoon's files at their public URLs, so an editor, a program or an AI assistant can check a file before it is used. They use JSON Schema draft 2020-12. Each schema's $id is its own address.
/schemas/cartoon.schema.json— Jabbertoon cartoon/schemas/character-pack.schema.json— Jabbertoon character pack/schemas/mcp-tools.json— mcp-tools.json/schemas/pack.schema.json— Jabbertoon pack manifest/schemas/program.schema.json— Jabbertoon program
A schema checks the shape of a file: the fields it must have and the kinds of values they hold. Some rules need the engine itself, for example whether a formula only uses names it knows, or whether a part channel names a real body part, so the language's validator (part of the engine, and the validate tool for AI assistants) is the final word. Every pack Jabbertoon ships passes both.
Validating a file
With Node and the free Ajv library:
npm install ajv
node -e "const Ajv = require('ajv/dist/2020').default; const ajv = new Ajv({ allErrors: true, strict: false }); fetch('https://jabbertoon.com/schemas/program.schema.json').then(r => r.json()).then(s => { const ok = ajv.validate(s, { v: 1, kind: 'behaviour', scripts: [{ body: [{ op: 'bob', amp: 8 }] }] }); console.log(ok || ajv.errors); })"The program in that example is a complete move: one script with one bob block.