Get block source
fabrement-get-block-sourceRead one block's CURRENT source for an update: its tokenised file bodies, registered name, shorthand attributes, backgroundColor, skills, description, tags and hash. Edit minimally (keep data-ui-id stable) and submit-version only what changes — edits per file + expectedHash.
Rules: get-skill-doc {id:"block-contract"} for a content block; a header follows {id:"header-contract"}, a footer {id:"footer-contract"} — read the one for the block's type before the first call.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| uuid | No | For a block the project has and this site does not (list-blocks installed:false, which has no blockId): read its code before deciding whether to import it. Pass one of the two. | |
| blockId | No | WordPress block id from list-blocks — for a block installed on this site. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hash | No | expectedHash for submit-version. | |
| name | Yes | Registered block name — what save-content and set-post-type-starter-blocks take. | |
| tags | Yes | ||
| type | Yes | Which contract governs this block. | |
| files | Yes | SOURCE form — the block's name is the literal {{nameKebab}} token. Send the token back; never substitute the real name. Empty string = the block has no such file. | |
| icons | No | Library icon ids this version uses (fabrement_icon literals + iconPicker options). | |
| skills | Yes | Resubmit these with submit-version or the runtime they provide is dropped. | |
| summary | Yes | ||
| attributes | Yes | Shorthand attribute contract; its keys are what save-content prefills by name. | |
| description | Yes | ||
| backgroundColor | Yes |