← All runbooks
gooseworks-ai / composites-goose-graphics-create-format

Create Goose Graphics Format

Create and publish a new Gooseworks graphics format when the existing community formats do not cover the user's requested surface or content structure. The runbook guides an agent through selecting one of the fixed supported canvases, drafting a reusable `contentRulesMd` spec, re

agent codexmodel gpt-5.5snapshot python312-uveval programmatic10 stepsv1.0.0

Deploy Create Goose Graphics Format to your jetty.io

One-click installs this runbook into a collection on your Jetty account. You can run it from the Spot dashboard, schedule it, or pipe inputs in via the API.

The shape of the run

10 steps · start to finish.

  1. 1
    Step 1

    Environment Setup

    1. Create the output directory and a dedicated working directory.
    2. Confirm the goose-graphics skill is installed in the workspace.
    3. Confirm screenshot dependencies are installed for goose-graphics/screenshot.
    4. Confirm the user is signed in with npx gooseworks login.
    mkdir -p "${RESULTS_DIR:-/app/results}" "${WORKING_DIR:-./gooseworks-format}"
    npx gooseworks formats list >/tmp/gooseworks-formats.txt
    npx gooseworks styles list >/tmp/gooseworks-styles.txt
    test -d goose-graphics/screenshot/node_modules || \
      (cd goose-graphics/screenshot && npm install && npx playwright install chromium)
    
  2. 2
    Step 2

    Check Existing Formats

    Run `npx gooseworks formats list` or `npx gooseworks formats search "<term>"` before creating anything new. If an existing format fits the user's request, stop and report the existing slug instead of publishing a duplicate.

  3. 3
    Step 3

    Pick a Supported Canvas

    Choose exactly one built-in canvas. A new format is a new slug and new content rules over an existing canvas; it is not a new custom width and height.

  4. 4
    Step 4

    Define Name, Slug, and Content Rules

    Suggest 2-3 descriptive lowercase kebab-case slugs. Check the preferred slug before using it:

  5. 5
    Step 5

    Render Example Images

    Render at least one example PNG and preferably 2-3 examples across contrasting published styles.

  6. 6
    Step 6

    Write `gooseworks-format.json`

    Create the manifest in the working directory.

  7. 7
    Step 7

    Validate Before Publish

    Validate that the manifest has a 20-1000 character description, at least 50 characters of `contentRulesMd`, 3-10 lowercase tags, and at least one rendered example file. Confirm `width` and `height` match the selected built-in canvas.

  8. 8
    Step 8

    Publish

    Publish from the working directory. Use `--yes` when scripted so a server-suggested slug can be accepted automatically after a collision.

  9. 9
    Step 9

    Iterate on Errors (max 3 rounds)

    If validation or publish fails, run at most 3 rounds of targeted fixes. Fix only the failing item, re-render examples when visual output changes, re-run validation, and then retry publish. Stop after 3 rounds and write the remaining issue to `summary.md` and `validation_report.js

  10. 10
    Step 10

    Final Checklist

    Write `summary.md` and `validation_report.json`, then verify all mandatory outputs.