generate-worksheet

activev2026.07.04

Generate a printable children's practice worksheet (grade/subject/topic-driven) with the kid-safety contract baked into the prompt, plus classifier-produced catalog metadata.

This page renders the template’s published registry entry — the contract itself, not a description of it. Immutable versions; sealed properties exist but are not public.

What you provide — intake contract

FieldTypeRequiredDefaultDescription
gradestringrequiredGrade level (e.g. kindergarten, 2nd grade)
subjectstringrequiredSubject (e.g. math, reading)
topicstringrequiredSpecific skill/topic (e.g. addition to 10)
themestringoptionalVisual theme (e.g. dinosaurs, space)
promptstringoptionalExtra direction for the layout/content
styleenum
cartoon
optional"cartoon"Worksheet style
qualityenum
lowmediumhigh
optional"medium"Render quality tier
categoriesstringrequiredComma-separated category slugs the classifier must choose from (empty fails the run in preflight)

How it runs — step topology

1
Render worksheetimageimageGenerator
promptTemplate
2
Classify assetllmclassifier
systempromptTemplatemaxTokens

Model roles: imageGenerator classifier bindings budgetPolicy

What you get — artifact

worksheetvisual

Version lineage

2026.07.04rev 26current2026-07-26
sha256:cac2394ed
2026.07.04rev 12026-07-04
sha256:c72858697

Full contract (as served)

GET /v1/catalog/workflows/generate-worksheet
{
  "_comment": "SYNCED SNAPSHOT — do not hand-edit. Regenerate with: node scripts/sync-workflow-catalog.mjs (pulls api.esy.com GET /v1/catalog/workflows/{id}).",
  "generatedAt": "2026-07-28T04:45:44.335802Z",
  "id": "generate-worksheet",
  "name": "Generate Worksheet",
  "description": "Generate a printable children's practice worksheet (grade/subject/topic-driven) with the kid-safety contract baked into the prompt, plus classifier-produced catalog metadata.",
  "shortDescription": "Printable kid-safe educational worksheet.",
  "artifactClass": "visual",
  "outputType": "visual",
  "status": "active",
  "supersededById": null,
  "version": "2026.07.04",
  "stages": [
    {
      "name": "Render",
      "description": "Compose the worksheet prompt (safety preamble included) and call the image model.",
      "stepCount": 1
    },
    {
      "name": "Classify",
      "description": "Produce catalog metadata.",
      "stepCount": 1
    }
  ],
  "intakeSchema": {
    "fields": [
      {
        "name": "grade",
        "type": "string",
        "required": true,
        "description": "Grade level (e.g. kindergarten, 2nd grade)"
      },
      {
        "name": "subject",
        "type": "string",
        "required": true,
        "description": "Subject (e.g. math, reading)"
      },
      {
        "name": "topic",
        "type": "string",
        "required": true,
        "description": "Specific skill/topic (e.g. addition to 10)"
      },
      {
        "name": "theme",
        "type": "string",
        "required": false,
        "description": "Visual theme (e.g. dinosaurs, space)"
      },
      {
        "name": "prompt",
        "type": "string",
        "required": false,
        "description": "Extra direction for the layout/content"
      },
      {
        "name": "style",
        "type": "enum",
        "required": false,
        "description": "Worksheet style",
        "default": "cartoon",
        "options": [
          "cartoon"
        ]
      },
      {
        "name": "quality",
        "type": "enum",
        "required": false,
        "description": "Render quality tier",
        "default": "medium",
        "options": [
          "low",
          "medium",
          "high"
        ]
      },
      {
        "name": "categories",
        "type": "string",
        "required": true,
        "description": "Comma-separated category slugs the classifier must choose from (empty fails the run in preflight)"
      }
    ]
  },
  "runtimeSteps": [
    {
      "id": "step-1",
      "name": "Render worksheet",
      "kind": "image",
      "role": "imageGenerator",
      "promptTemplate": "redacted"
    },
    {
      "id": "step-2",
      "name": "Classify asset",
      "kind": "llm",
      "capability": "text",
      "role": "classifier",
      "jsonSchema": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "Catalog-ready title, <= 60 chars"
          },
          "slug": {
            "type": "string",
            "description": "kebab-case URL slug"
          },
          "description": {
            "type": "string",
            "description": "1-2 sentence SEO-friendly description"
          },
          "category": {
            "type": "string",
            "description": "Exactly one of the provided category slugs"
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "3-8 search tags"
          }
        },
        "required": [
          "title",
          "slug",
          "description",
          "category"
        ],
        "additionalProperties": false
      },
      "system": "redacted",
      "promptTemplate": "redacted",
      "maxTokens": "redacted"
    }
  ],
  "gates": [
    {
      "id": "gate-render",
      "name": "Provider execution",
      "type": "quality",
      "inputs": [
        "intake"
      ],
      "outputs": [
        "worksheet"
      ],
      "unlocks": [
        "step-2"
      ]
    }
  ],
  "artifactSchema": {
    "artifactClass": "visual",
    "artifactType": "worksheet",
    "files": [
      "image/webp"
    ],
    "metadata": {
      "grade": "string",
      "subject": "string",
      "topic": "string",
      "quality": "enum [low, medium, high]",
      "classification": "object"
    }
  },
  "providers": {
    "imageGenerator": "redacted",
    "classifier": "redacted"
  },
  "budgetPolicy": "redacted",
  "versions": [
    {
      "version": "2026.07.04",
      "revision": 1,
      "contentHash": "sha256:c7285869732603bc35662cc2455ea9b1340d5404aae11f843caf439e2b9ff36a",
      "createdAt": "2026-07-04T21:49:03.394572Z"
    },
    {
      "version": "2026.07.04",
      "revision": 26,
      "contentHash": "sha256:cac2394edba0fae62f59e7e4cb67cdb48d83b1ce00fae4ef595cf0f6d3a72de8",
      "createdAt": "2026-07-26T00:51:08.235190Z"
    }
  ],
  "updatedAt": "2026-07-26T00:51:08.235190Z"
}

Snapshot generated 2026-07-28 from the live registry.