In the studioZen — a little more clarity for ambitious work
sico studio®
Open workspace
← Skills library

zen-prototype / Reference

View source

Collections, variants and selection

Create ART with question, constraints and comparison criteria. Then create each SRT with the same workspaceId and parentId=returned ART UUID. The writer adds the collection relationship and allocates the stable sub-reference. Include source/preview path, run instructions, screenshot/evidence links, scope and known simulation in its body/data.

VariantDecision exploredObserved strengthsTradeoffsRun/preview evidence
Returned SRT ref ADense listMore items visibleHarder scanningActual path/command
Returned SRT ref BGrouped sectionsClearer hierarchyLonger scrollActual path/command
Returned SRT ref CSearch-firstFast known-item lookupPoor discoveryActual path/command

Selection payload for zen_record_write:

{"operation":"artifact.select","idempotencyKey":"select-variant-b-01","payload":{"id":"<ART-uuid>","variantId":"<SRT-uuid>","expectedRevision":2}}

Read back the actual selectedRef and resolve it again before implementation. Do not use the sample revision unless it matches the current ART. With standalone storage use its select command with the same three payload fields plus an operation key.

Before selecting a runnable file variant, call standalone snapshot with {id,expectedRevision,files:["prototypes/2.html"],idempotencyKey}. Paths are relative to the recorded repository/worktree source root. Include all required CSS/JS/assets explicitly; never copy an entire repository or an environment file. Selection records the returned SRT revision. Then verify the sub-reference: unchanged snapshot and matching working files are expected. If the working source changes, report drift and resolve the preserved snapshot rather than claiming the changed path is still the exact chosen content. For managed records, use authorized host file-copy/hash tools and MCP record.update to capture the equivalent manifest before artifact.select.

In managed mode keep file snapshots under the registered repository's ignored .zen/artifacts/<SRT-uuid>/<content-identity>/ directory (or the configured global workspace artifact directory). The companion backup includes these roots. Store data.snapshot with directory, sourceRoot, createdAt and files[{path,sha256,size}], merging other data fields. Record data.kind: "runnable" and a repository-relative sourcePath for file-backed runnable variants. Selection requires manifest metadata for these variants, but that structural check is not proof the files render or hashes match: verify them through authorized host IO.

For small self-contained HTML use data.kind: "inline-html" and put the complete source in data.html. Omit mutable source/preview path fields for this representation. Render it in the sandboxed preview, then select the returned SRT revision. Resolve exact content with record history at selectedVariantRevision; file-only verify is for file snapshots. Inline checklists similarly use the selected immutable record revision. This path is useful when task-scoped permissions do not allow copying files outside the worktree: use the existing bounded record writer instead of bypassing scope. Large/multi-file variants still need an authorized snapshot path or an explicit Needs attention result. Do not place credentials or never-copy content in either representation.