add-ecosystem
Add a new ecosystem and base model to basemodel.constants.ts. Use when onboarding a new model…
Query and explore Civitai Orchestration workflows, jobs, and results. Use for analyzing image/video generation jobs, viewing job results, searching by workflow ID, job ID, user, or date range.
$ npx -y skills add civitai/civitai --skill civitai-orchestration --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/civitai-orchestrationContext preview
The summary Claude sees to decide when to auto-load this skill.
Query and explore Civitai Orchestration workflows, jobs, and results. Use for analyzing image/video generation jobs, viewing job results, searching by workflow ID, job ID, user, or date range.
name: civitai-orchestration description: Query and explore Civitai Orchestration workflows, jobs, and results. Use for analyzing image/video generation jobs, viewing job results, searching by workflow ID, job ID, user, or date range. allowed-tools: Bash(node:*) argument-hint: "[command] [options]"
Interact with the Civitai Orchestration API to query workflows, view job details, and retrieve generation results.
# Query workflows for a specific user node .claude/skills/civitai-orchestration/civitai-client.js user 12345 # Get a specific workflow by ID node .claude/skills/civitai-orchestration/civitai-client.js workflow <workflowId> # Get job details with scan results (hive_csam_score, etc.) node .claude/skills/civitai-orchestration/civitai-client.js job <jobId> # Get step details from a workflow node .claude/skills/civitai-orchestration/civitai-client.js step <workflowId> <stepName> # Download result images/videos from a workflow node .claude/skills/civitai-orchestration/civitai-client.js results <workflowId>
# Get workflows for user 12345 node civitai-client.js user 12345 # With options node civitai-client.js user 12345 --take=5 --excludeFailed
# Direct lookup by workflow ID node civitai-client.js workflow 0-019be44b-181e-7a7e-ab1b-b58dc7610dca
**Note:** Date filtering may have limited functionality depending on API access level.
# Workflows from the last 7 days node civitai-client.js workflows --from=2024-01-15 --to=2024-01-22 # Workflows from a specific day node civitai-client.js workflows --from=2024-01-20 --to=2024-01-20 # Dates are assumed to be UTC. Add Z suffix for explicit UTC: node civitai-client.js workflows --from=2024-01-20T06:00:00Z --to=2024-01-20T12:00:00Z
**Alternative:** Use `--oldest` to get workflows from oldest first, then paginate:
# Get oldest workflows first node civitai-client.js workflows --oldest --take=50
Tags are set when workflows are created. Common tag patterns:
# Filter by a specific tag node civitai-client.js workflows --tag=user:12345 # Note: Multiple tags can be specified (AND logic) node civitai-client.js workflows --tag=project:myproject --tag=type:image
The `--query` option searches workflow metadata:
# Search metadata for a string node civitai-client.js workflows --query="portrait"
The API supports excluding failed workflows but not filtering by specific status:
# Exclude failed/canceled workflows (get only succeeded/processing) node civitai-client.js workflows --excludeFailed # Include all statuses (default behavior) node civitai-client.js workflows
**Note:** To find specific statuses, retrieve workflows and filter client-side, or use metadata/tags when creating workflows for better filtering.
# Get 50 results node civitai-client.js workflows --take=50 # Get next page using cursor from previous response node civitai-client.js workflows --take=20 --cursor=<nextCursor>
# Successful workflows for a specific tag, excluding failures node civitai-client.js workflows \ --tag=user:12345 \ --excludeFailed \ --take=50 # Get workflows with metadata search node civitai-client.js workflows \ --query="portrait" \ --excludeFailed \ --take=20
Test API connection and verify credentials.
node civitai-client.js test
Query workflows for a specific user by their Civitai user ID.
node civitai-client.js user <userId> [options]
**Options:** | Option | Description | |--------|-------------| | `--take=<n>` | Number of results (max 10 per API limit) | | `--tag=<tag>` | Filter by tag | | `--query=<text>` | Search workflow metadata | | `--excludeFailed` | Exclude failed/canceled workflows | | `--oldest` | Sort from oldest to newest |
List and search workflows with optional filters.
node civitai-client.js workflows [options]
**Options:** | Option | Description | |--------|-------------| | `--tag=<tag>` | Filter by tag (can specify multiple) | | `--query=<text>` | Search workflow metadata | | `--excludeFailed` | Exclude failed/canceled workflows | | `--oldest` | Sort from oldest to newest | | `--take=<n>` | Number of results (default: 20) | | `--cursor=<cursor>` | Pagination cursor | | `--from=<date>` | Start date (may have limited support) | | `--to=<date>` | End date (may have limited support) |
Get details of a specific workflow.
node civitai-client.js workflow <workflowId> [--wait]
**Options:** | Option | Description | |--------|-------------| | `--wait` | Wait/poll for completion (with timeout) |
Get details of a specific job including scan results from event context.
This is useful for investigating content moderation results - the `lastEvent.context` contains scan scores like `hive_csam_score` and `hive_vlm_summary`.
node civitai-client.js job <jobId> [--raw]
**Options:** | Option | Description | |--------|-------------| | `--raw` | Output raw JSON instead of formatted summary |
**Example output:**
Job Summary: ID: 58de87d7-d594-4d71-ae43-dd8fc1bcbd23 Type: TextToImageV2 Workflow ID: 8484131-20260121222126332 Prompt Classification: sexual, young, scan Results (2 blob(s)): - JNFDW54JNTATNW42HACYCWSQP0.jpeg (available: true) Last Event: Type: Succeeded Provider: ValdiAI Event Context (scan results, metrics): ** hive_csam_score: 0.00 %, 0.00 % ** hive_vlm_summary: X, No_Child
Get details of a specific step within a workflow.
node civitai-client.js step <workflowId> <stepName>
Download or view results (images/videos) from a workflow.
node civitai-client.js results <workflowId> [--downl
Repo: civitai/civitai
Add a new ecosystem and base model to basemodel.constants.ts. Use when onboarding a new model…
Wire an existing ecosystem into the generation system. Adds generation support to…
Author a prompt-enhancement system prompt for a new ecosystem and register/update it on the…
Add a new trainable base model to BOTH trainers end-to-end — the in-app trainer (main Next.js…
Wire an existing ecosystem into the LoRA training system so it appears as a trainable base…
Deterministically drive a first-party Civitai App Block in the operator's browser and produce…