Agent Operating Guide
/coach-schema-validate
Lint a schema JSON file against the bulk-import format, catching the silent-failure modes that would be rejected or dropped at import before you paste it.
The pre-flight check before you paste JSON into the admin Bulk Import page. The skill
reads a schema JSON file and reports every violation of the bulk-import contract,
separating errors, which fail the import or silently drop a section, from warnings,
which import cleanly but are probably mistakes. It never edits the file: it reports, you
fix, you re-run. Both /coach-schema-design and
/coach-starter-pack run it as a hard gate, so a schema they
produce is already validated. It’s a local file lint: no tenant access, no
suggest_change.
When to use
Section titled “When to use”Any time you’re about to paste schema JSON into /en/admin/bulk-import: especially a
hand-edited file or one exported from another tenant. Run it and fix every error before
you import; a clean report means the file will land completely.
Inputs
Section titled “Inputs”| Flag | Required | Notes |
|---|---|---|
--file <path> |
Yes | The schema JSON to lint. If omitted, the skill lists the available schema files to pick from. |
Example
Section titled “Example”/coach-schema-validate --file .coworkcanvas/schemas/acme-2026-07-11.json parses the
file and prints a report: error, warning, and info counts up top, then one entry per
issue with its file path and field path and a suggested fix. A clean file gets a single
line confirming it’s ready for the Bulk Import page.
Good to know
Section titled “Good to know”- It catches the five silent-failure modes that import as 200-success but don’t fully
land, all as hard errors: the lowercase
fieldsarray instead ofFieldDefinition;data.itemsas an array instead of an object keyed by item-type slug;relationTargetinstead ofrelatedItemTypeSlug;MULTISELECT_RELATIONinstead ofRELATIONS; andURL/FILE/EMAILinstead ofTEXT. - The recognizable symptom of the items-as-array bug is an import result that renders
items: 0: [object Object], 1: [object Object], …: the validator flags it before you ever see that. - It also catches structural problems: a missing top-level
datawrapper (rejected with “missing data field”), slug collisions when overlaying a pack on an existing schema, and RELATION targets pointing at slugs that don’t exist.
Related
Section titled “Related”- /coach-schema-design: produces schemas and runs this as a gate.
- /coach-starter-pack: also gates on this before writing its pack.
- /coach-schema-export: validate an export before migrating it to another tenant.
- Items and item types: the concept the schema format encodes.