civitai-orchestration
npx skills add https://github.com/civitai/civitai --skill civitai-orchestration
Agent 安装分布
Skill 文档
Civitai Orchestration
Interact with the Civitai Orchestration API to query workflows, view job details, and retrieve generation results.
Quick Start
# 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>
Searching & Filtering
By User ID
# Get workflows for user 12345
node civitai-client.js user 12345
# With options
node civitai-client.js user 12345 --take=5 --excludeFailed
By Workflow ID
# Direct lookup by workflow ID
node civitai-client.js workflow 0-019be44b-181e-7a7e-ab1b-b58dc7610dca
By Date Range
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
By Tags
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
By Metadata Search
The --query option searches workflow metadata:
# Search metadata for a string
node civitai-client.js workflows --query="portrait"
By Status
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.
Pagination
# 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>
Combined Filters
# 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
Commands Reference
test
Test API connection and verify credentials.
node civitai-client.js test
user
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 |
workflows
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) |
workflow
Get details of a specific workflow.
node civitai-client.js workflow <workflowId> [--wait]
Options:
| Option | Description |
|---|---|
--wait |
Wait/poll for completion (with timeout) |
job
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
step
Get details of a specific step within a workflow.
node civitai-client.js step <workflowId> <stepName>
results
Download or view results (images/videos) from a workflow.
node civitai-client.js results <workflowId> [--download] [--dir=<path>]
Options:
| Option | Description |
|---|---|
--download |
Download result files |
--dir=<path> |
Download directory (default: ./civitai-downloads) |
blob
Get a blob (image/video) by ID with optional NSFW handling.
node civitai-client.js blob <blobId> [--download] [--nsfw]
Environment Variables
Stored in .claude/skills/civitai-orchestration/.env:
CIVITAI_API_TOKEN=your_bearer_token
CIVITAI_API_URL=https://orchestration-new.civitai.com
API Reference
Workflow Query Parameters
The workflows endpoint supports these query parameters:
tags– Array of tags to filter byquery– Search workflow metadatafromDate/toDate– Date range (ISO 8601) – may have limited supportcursor– Pagination cursortake– Number of results (default: 100)excludeFailed– Exclude failed/expired/canceled workflows (boolean)ascending– Sort oldest to newest (boolean)
Workflow Statuses
| Status | Description |
|---|---|
preparing |
Workflow being prepared |
scheduled |
Scheduled for execution |
processing |
Currently running |
succeeded |
Completed successfully |
failed |
Failed with error |
canceled |
Was canceled |
expired |
Timed out |
deleted |
Deleted |
Step Types (Recipes)
Image/Video generation steps you might encounter:
textToImage– Text to image generationimageGen– General image generationvideoGen– Video generationvideoEnhancement– Video upscaling/enhancementvideoFrameExtraction– Extract frames from videovideoUpscaler– Upscale videovideoInterpolation– Frame interpolationconvertImage– Convert image formatscomfy– ComfyUI workflow execution
Examples
Query a user’s recent image generations
# Get user 12345's recent workflows
node civitai-client.js user 12345
# Exclude failed jobs
node civitai-client.js user 12345 --excludeFailed
Get workflow and view results
# Get workflow details
node civitai-client.js workflow abc123-def456
# View/download results
node civitai-client.js results abc123-def456 --download --dir=./my-images
Paginate through workflows
# First page
node civitai-client.js workflows --take=10
# Next page (use cursor from previous response)
node civitai-client.js workflows --take=10 --cursor=<nextCursor>
Error Handling
| Error Code | Meaning |
|---|---|
| 401 | Invalid or expired token – check CIVITAI_API_TOKEN |
| 404 | Workflow/Job not found |
| 429 | Rate limited – wait before retrying |
| 422 | Invalid parameters |
Output
The user command displays workflow summaries including:
- Workflow ID, status, timestamps
- Step types (textToImage, videoGen, comfy, etc.)
- Prompts for text-to-image generations
For raw JSON output, use the workflow command:
node civitai-client.js workflow <workflowId>