diviopslisted
Install: claude install-skill oaris-dev/diviops
# DiviOps harness primer
Cross-cutting conventions every DiviOps target-coverage skill (`divi-5-builder`, `diviops-scf`, `diviops-fluentcart`, future slices) relies on. Read this when you're about to issue a `diviops_*` MCP call and want to know what the success / failure envelope looks like, how to preview a write, or which capability gate decides whether a tool is even registered for this session.
This skill carries no tool-surface documentation — tools live with the coverage slice that owns them.
## Response envelope
Every `diviops_*` tool returns the same envelope:
```jsonc
// Success
{ "ok": true, "data": <payload> }
// Failure
{ "ok": false, "error": { "code": "<code>", "message": "<human>", "hint": "<optional>", "data": <optional structured detail> } }
```
The envelope is uniform across every namespace (`page_*`, `module_*`, `preset_*`, `variable_*`, `global_color_*`, `global_font_*`, `tb_*`, `template_*`, `library_*`, `canvas_*`, `meta_*`, `schema_*`, `validate_*`, `render_*`, `scf_*`, `section_*`). Callers branch on `error.code` for failure paths; the `error.data` field carries structured detail when the failure mode needs more than a code + message.
## Standard error codes
```
not_found 404 Target ID does not resolve
invalid_input 400 Schema violation, malformed args
validation_failed 400 validate_blocks-detected shape error
conflict 409 Uniqueness collision (delete-with-references, default-preset delete, name collision,