with one click
enterprise-pinned-registry
Pin exact model versions for reproducible output.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Pin exact model versions for reproducible output.
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Five brand direction variations for pitch discovery.
Export a white-label client deliverable as a zip.
Per-client asset templates scoped by workspace.
Client-branded pitch mockups: hero, tiles, slides.
Generate icons, empty states, onboarding for apps.
Deterministic default-avatar generator per user.
| name | enterprise-pinned-registry |
| description | Pin exact model versions for reproducible output. |
| license | MIT |
| metadata | {"author":"Picsart","version":"1.0.0","hermes":{"category":"enterprise","tags":["picsart","enterprise","governance","scale"]}} |
A lockfile concept for AI generation. Model versions, prompts, brand tokens, and seeds are pinned to a manifest that regenerates the same campaign identically six months, a year, or three years later. Built for enterprises that need reproducibility for legal holds, brand-campaign continuity, regulatory defense, and year-over-year comparability.
Do not use for: one-off exploration, draft/ideation phases, consumer projects.
Before authoring the registry:
brand-registry repo, or a central governance repo?Five steps. The registry is the contract; everything generates against it.
registry.json — model aliases, prompt templates, brand tokens, default params. Each alias pins to an explicit model@version.gen-ai config set registry <path> points every call on this machine at the registry. Teams commit the registry to git and sync via clone/pull.flux (alias), never flux-2-pro@2.1.3 (raw). Alias resolution is the registry's job.brand-registry-v2026.2).The registry itself is the manifest. Commit it. Tag it. Diff it on every bump.
{
"registry_version": "2026.2.0",
"locked_at": "2026-04-01T00:00:00Z",
"locked_by": "brand-governance@company.com",
"previous_version": "2026.1.0",
"regression_run_id": "REG-2026Q2-APPROVED",
"models": {
"flux": { "id": "flux-2-pro@2.1.3", "commercial_use": true, "notes": "Hero, editorial" },
"kontext": { "id": "flux-kontext-pro@1.4.0", "commercial_use": true, "notes": "Product edit-mode" },
"upscale": { "id": "topaz-upscale-image@2.0.0", "commercial_use": true, "notes": "Print prep" },
"kling": { "id": "kling-v3-pro@3.0.1", "commercial_use": true, "notes": "I2V broadcast" },
"portrait": { "id": "gemini-3-pro-image@1.2.0", "commercial_use": true, "notes": "Portrait, verify license" }
},
"prompt_templates": {
"hero_launch": {
"text": "Editorial hero, {subject}, {environment}, brand palette, natural light",
"fingerprint": "sha256:7b4f2a...c8e1"
}
},
"brand_tokens": {
"palette": { "primary": "#FF006E", "ink": "#0D0A1F", "accent": "#FFBE0B" },
"aspect_ratios_allowed": ["16:9", "9:16", "1:1", "3:2"],
"seed_default": 42
},
"audit_id": "REGISTRY-2026.2"
}
Every generated asset's results.json entry should carry registry_version so reproduction is one command away.
The registry pins them; it doesn't choose them. For picking, see the per-workflow skills. Typical enterprise registry contents:
| Alias | Pins to | Role |
|---|---|---|
flux | flux-2-pro@x.y | Primary photoreal hero |
kontext | flux-kontext-pro@x.y | Edit-mode, product-accuracy preserve |
portrait | gemini-3-pro-image@x.y | Faces, commercial-safe (verify license) |
upscale | topaz-upscale-image@x.y | Print / wire prep |
remove-bg | picsart-remove-bg@x.y | Transparent PNG derivatives |
change-bg | picsart-change-bg@x.y | Catalog background replace |
kling | kling-v3-pro@x.y | Image-to-video for broadcast |
Confirm commercial-use + regional availability at bump time with gen-ai models info <id>. Provider terms change; pin is not a license.
flux-2-pro@2.1.3 in a prompt — only flux.--seed 42 reruns the same output deterministically.2026.2.0 = year-quarter-patch). Patch for typo fixes; minor for new aliases; major for model swaps.Run gen-ai whoami to confirm authentication, then re-run the failed command with --debug.
# Point the CLI at the registry
gen-ai config set registry.path ./brand-registry/registry.json
# Pin a model alias
gen-ai config set registry.flux flux-2-pro@2.1.3
gen-ai config set registry.kontext flux-kontext-pro@1.4.0
gen-ai config set registry.kling kling-v3-pro@3.0.1
gen-ai config set registry.upscale topaz-upscale-image@2.0.0
# Verify a given alias resolves to the pinned version
gen-ai config get registry.flux
# → flux-2-pro@2.1.3
# Generate using the alias (reproducible)
gen-ai generate --model flux --prompt-file prompts/hero-launch.txt \
--seed 42
# Batch resolves all aliases against the registry
gen-ai batch run campaign.json
Every manifest references aliases, never raw model IDs. The registry is the one place that maps alias → version.
Registry operations are cheap. The value is in what they prevent.
| Activity | Cost | Time |
|---|---|---|
| Author initial registry | 0 | 1 engineer-day |
| Quarterly regression corpus (20 prompts) | ~200 credits | ~1 h generation + ~2 h review |
| Version bump + tag | 0 | ~30 min |
| Reproduce a 1-year-old campaign | Same credits as original | Same wall time |
| Provider-deprecation migration | ~500 credits | 1–2 engineer-days |
Cost savings scale with team size: a 20-person design team bumping incidentally costs far more in drift than one quarterly reviewed bump.