generation-gate-rules

v2026.09.24

Hide a generator ecosystem or model version from everyone except moderators — always "available to moderators, hidden" — and lift that gate again. Reads and writes the same generation gate rules the /moderator/generation-config page edits. Use before a new generator model's code deploys, and to remove the gate at launch. Called by onboard-generator-model; usable on its own.

GitHub
Install command
npx skhub add civitai/generation-gate-rules
Markdown
SKILL.md

Generation Gate Rules

node .claude/skills/generation-gate-rules/gate.mjs <command> [flags]

The rules model is described in docs/features/generation-gating-rules-model.md.

What add writes

The rule is always available to moderators, hidden, and that isn't configurable. Moderators see and can generate with the target. Everyone else never sees it. A hidden rule also blocks canGenerate across the whole site, so a version published while its rule is in place still can't be generated by non-mods.

Gate targets:

  • a new ecosystem: --ecosystem <EcosystemRecord.key>. The key is case-sensitive. A misspelled key has no effect, and nothing reports the mistake.
  • a new version in an existing ecosystem: --version <id>.

Adding the rule before the code deploys is safe. A rule that names something the running code doesn't know yet has no effect.

Commands

CommandWhat it does
list [--json]Every rule on the site.
add --ecosystem <key> or add --version <id> [--message <m>] [--writable]Adds a rule this skill owns, with the id onboard-eco-<key> or onboard-mv-<id>.
remove --ecosystem <key> or remove --version <id> [--from-rule <id>] [--writable]Removes this skill's rule. With --from-rule, removes the target from a rule someone set by hand.
  • add is idempotent. If the rule already exists, it does nothing. If another rule already covers the target, it says so.
  • remove never edits a rule it doesn't own unless you pass --from-rule. Without the flag, it lists the hand-made rules that gate the target.
  • Writes touch one rule at a time (saveGateRule / deleteGateRule), so they never overwrite someone else's rules. remove --from-rule still reads the rule first, so an edit made to that rule in between is lost.

Another rule on the same target can override this one. "Available to nobody, hidden" is the kill switch: it hides the target from moderators too, and hidden from any rule that applies wins. Point that out to the user instead of editing their rule.

Setup

  • It uses CIVITAI_API_KEY from .claude/skills/mod-actions/.env, and it must belong to a moderator.
  • Every write is a dry run unless you pass --writable. Ask the user before each --writable call. Rules take effect on the live site immediately.
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

Apache-2.0

Source path

.claude/skills/generation-gate-rules

Default branch

main

Latest commit

2bc8fe0

Tree SHA

5997db0