Agent Skills › civitai/civitai › generation-coverage

generation-coverage

GitHub

管理模型版本生成覆盖规则,支持添加/移除EcosystemCheckpoints行以控制生成权限,并执行缓存刷新。用于草稿测试或发布后清理。

.claude/skills/generation-coverage/SKILL.md civitai/civitai

Trigger Scenarios

需要让草稿版本可被生成以供审核员测试 发布后移除覆盖规则以恢复默认状态检查 查询或刷新特定版本的生成覆盖状态

Install

npx skills add civitai/civitai --skill generation-coverage -g -y
More Options

Non-standard path

npx skills add https://github.com/civitai/civitai/tree/main/.claude/skills/generation-coverage -g -y

Use without installing

npx skills use civitai/civitai@generation-coverage

指定 Agent (Claude Code)

npx skills add civitai/civitai --skill generation-coverage -a claude-code -g -y

安装 repo 全部 skill

npx skills add civitai/civitai --all -g -y

预览 repo 内 skill

npx skills add civitai/civitai --list

SKILL.md

Frontmatter
{
    "name": "generation-coverage",
    "description": "Add, remove or inspect a model version's \"EcosystemCheckpoints\" row — the coverage override that makes a version generatable regardless of publish status — and bust the version cache so the generator sees the change. Use to make a Draft official version testable by moderators, or to drop the override after launch. Called by onboard-generator-model; usable on its own."
}

Generation Coverage

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

What the row does

GenerationCoverage is a plain view and the one the app reads. It carries both coverage rules as columns — covered (live) and coveredNext (staged) — and the Flipt boolean generation-coverage-next decides which one answers, globally, default off. Its "EcosystemCheckpoints" branch is shared by both rules and applies no status check. So:

  • A Draft version with a row can be generated, but only by moderators and the model's owner. getResourceCanGenerate lets those two through the private check and refuses everyone else. This is how an official version gets tested before it is published.
  • The row overrides everything else — except moderation. The version stays covered even after it is unpublished, but a top-level m.mode IS NULL means an Archived or TakenDown model is covered by no branch at all. For an ExternalGeneration version, branch 2 covers it once published, so removing the row after launch is what lets a later unpublish remove coverage. So far every row has been kept.

The full coverage rules are in docs/features/generator-model-onboarding.md.

Commands

Command What it does
status --version <id> Whether the version has an EcosystemCheckpoints row, and what GenerationCoverage reports for both covered and coveredNext.
add --version <id> --name <label> [--writable] Inserts the row, then busts the cache. Idempotent.
remove --version <id> [--writable] Deletes the row, then busts the cache.
bust --version <id> [--writable] Only the cache bust (modelVersion.bustCache).
  • --name is a free-text label with no behaviour attached. Existing rows use the base model's display name, e.g. Ideogram 4.0.
  • The cache bust is part of add and remove. resourceDataCache sits in front of the view with a one-hour TTL. Without the bust, the generator keeps reporting the old coverage for up to an hour.

Setup and permission

  • Database: reads and writes go through the postgres-query skill (--prod by default, plus --writable for add and remove). Its production connection has to be configured.
  • Choosing the database: pass --db dev for the dev database. When CIVITAI_API_URL isn't civitai.com or civitai.red, the script refuses to guess which database goes with it.
  • API key: the cache bust 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. It writes to the production database.

Version History

  • b735b6b Current 2026-09-28 20:27

    引入Flipt开关区分主备覆盖列,统一各端逻辑,修复Redis缓存键并更新相关文档与迁移清单。

  • c706944 2026-09-23 10:05

Same Skill Collection

.claude/skills/add-ecosystem/SKILL.md
.claude/skills/add-generation-support/SKILL.md
.claude/skills/add-prompt-enhancement-guide/SKILL.md
.claude/skills/add-training-support/SKILL.md
.claude/skills/axiom/SKILL.md
.claude/skills/browser-automation/SKILL.md
.claude/skills/civitai-orchestration/SKILL.md
.claude/skills/civitai-review/SKILL.md
.claude/skills/cleanup/SKILL.md
.claude/skills/clickhouse-query/SKILL.md
.claude/skills/clickup/SKILL.md
.claude/skills/cloudflare/SKILL.md
.claude/skills/component-preview/SKILL.md
.claude/skills/deploy-status/SKILL.md
.claude/skills/dev-server/SKILL.md
.claude/skills/discord/SKILL.md
.claude/skills/feature-walkthrough/SKILL.md
.claude/skills/feedback-triage/SKILL.md
.claude/skills/flipt/SKILL.md
.claude/skills/form-graph-port/SKILL.md
.claude/skills/freshdesk/SKILL.md
.claude/skills/generation-gate-rules/SKILL.md
.claude/skills/generator-launch/SKILL.md
.claude/skills/listing-media/SKILL.md
.claude/skills/meilisearch-admin/SKILL.md
.claude/skills/metabase/SKILL.md
.claude/skills/mod-actions/SKILL.md
.claude/skills/moderator-page-migration/SKILL.md
.claude/skills/onboard-generator-model/SKILL.md
.claude/skills/postgres-query/SKILL.md
.claude/skills/quick-mockups/SKILL.md
.claude/skills/redis-inspect/SKILL.md
.claude/skills/retool-migration/SKILL.md
.claude/skills/retool-query/SKILL.md
.claude/skills/scaffold-civitai-app/SKILL.md
.claude/skills/stripe/SKILL.md
.claude/skills/svelte-review/SKILL.md
.claude/skills/ux-design/SKILL.md
.claude/skills/write-model-description/SKILL.md
.claude/skills/xguard-manager/SKILL.md
apps/event-engine/.claude/skills/agent-review/SKILL.md
apps/event-engine/.claude/skills/clickhouse-query/SKILL.md
apps/event-engine/.claude/skills/clickup/SKILL.md
apps/event-engine/.claude/skills/postgres-query/SKILL.md
apps/event-engine/.claude/skills/redis-inspect/SKILL.md
.claude/skills/add-trainer-model/SKILL.md
.claude/skills/app-capture/SKILL.md
.claude/skills/app-taste/SKILL.md
.claude/skills/ecosystem-seo-page/SKILL.md

Metadata

Files
0
Version
b735b6b
Hash
cebde259
Indexed
2026-09-23 10:05

ホーム - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-09-28 21:47
浙ICP备14020137号-1