$ the-wire · showcase
Theme CLI commands gain typed JSON output
By RepoJournal · Filed · About Shopify · Composed from the cited sources · methodology
Five Shopify CLI theme commands now emit strict, machine-readable JSON, giving CI pipelines and AI tooling structured outcomes instead of parseable text.
Add typed JSON output to theme metafields pull Shopify/cli
Theme metafields pull now returns flattened definitions, absolute artifact paths, and an explicit success, partial, skipped, or cancelled outcome, while the native owner-keyed metafields.json file stays intact. Scripts reading the prompt output no longer have to infer whether a download partially failed.
Add typed JSON output to theme package Shopify/cli
Theme package emits an artifact receipt with a validated absolute path to the ZIP it actually wrote, and the text presenter is unchanged. This is the cleanest automation win of the set: the path you get back is checked before it reaches you.
Add typed JSON output to theme check Shopify/cli
Theme check reports flat issues with consistent severity counts, absolute file paths, and zero-based camelCase positions. The blocking policy is still honored, so a lint gate in CI reads the same verdict as before, just with fields it can index.
Add typed JSON output to theme init Shopify/cli
Theme init returns an absolute project directory and instruction file paths alongside success or partial outcomes; a successfully cloned project is kept when later AI setup fails, and partial work exits nonzero. A failed AI step no longer costs you the clone, though your job still fails so nothing downstream assumes a clean run.
Add typed JSON output to theme profile Shopify/cli
Theme profile wraps explicitly named environments in one result object and preserves the native Speedscope artifact, with failures routed onto the shared fatal path. All five follow the contract in docs/cli/json-output.md.