---
name: edit-shopify-json
description: Edit Shopify theme JSON templates and settings using the target theme's existing schemas. Use for templates/*.json, JSON section data, config/settings_data.json and config/settings_schema.json. Liquid schemas are read-only; new sections, Liquid, CSS, JavaScript and assets are outside this skill.
---

# Instructions

Update theme JSON using existing section, block and setting schemas. Provide the target repository and requested change. Read the [editing workflow](references/workflows/json-editing.md) before writing; use the [platform reference](references/tools/shopify.md) for Shopify terminology.

1. Read repository guidance and find the JSON source of truth. Verify every type, immediate parent-child edge, setting ID, range and select value against the target schema.
2. For page designs, inspect global settings first. Use existing or supplied media; leave unavailable image settings empty. Consult the [example catalog](references/workflows/examples/catalog.md) only after discovering the target's real types.
3. Edit only JSON. Treat Liquid schemas as read-only. If the request needs new theme code, explain the gap and deliver the closest schema-supported result.
4. Parse and validate the JSON, then inspect the exact edited routes at desktop/mobile widths and exercise affected controls. Use `$preview-shopify-theme` for setup. Development sync and strict upload validation require authorization for the exact store and theme.

Use a host with repository writes and validation commands; visual verification also needs a browser. Glue's read-only runner cannot edit or upload. Continue supported work and identify any blocked verification.

Return changed files, resulting behavior, schema/upload validation, preview evidence and remaining gaps. Default to Markdown; when a Glue result schema is supplied for structured output, return its bare object. Theme files retain Shopify's JSON schemas.

For an experiment, return the JSON implementation to `$draft-shopify-ab-test`; ordinary edits do not require an A/B experiment. A separately requested release belongs to installed `$publish-shopify-theme`, currently unpublished in Glue; otherwise provide a release handoff. Editing and preview permissions do not authorize publication.
