# `theme.push` Push a store-private SKIN theme (manifest + linted CSS + variables + presets + skeleton) from the CLI/sandbox: records the immutable pack, stores its stylesheet, installs the version. - **scope**: `design:write` - **storefront-visible** (bumps the catalog generation): no - **destructive**: no ## Payload | field | type | required | notes | |---|---|---|---| | `manifest` | object | yes | | | `css` | string (≤262144 chars) | yes | | | `core` | object | no | | | `variables` | object | no | | | `presets` | object | no | | | `skeleton` | object | no | | ### JSON Schema ```json { "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "manifest": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": {} }, "css": { "type": "string", "maxLength": 262144 }, "core": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": {} }, "variables": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": {} }, "presets": { "type": "object", "propertyNames": { "type": "string", "pattern": "^[a-z][a-z0-9-]*$" }, "additionalProperties": { "type": "object", "properties": { "kind": { "type": "string", "enum": [ "colorway", "typeset", "full" ] }, "labelTR": { "type": "string", "minLength": 1, "maxLength": 40 }, "core": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": {} }, "vars": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "type": "string", "maxLength": 200 } } }, "required": [ "kind", "labelTR" ], "additionalProperties": false } }, "skeleton": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": {} } }, "required": [ "manifest", "css" ], "additionalProperties": false } ```