List available image and video models from the CLI
Read workflows, ratios, credit costs, and model IDs before generating.
Connect OfflineCreator with OAuthFreshness marker: package 0.1.1 and evidence checked August 8, 2026
This migration guide verifies installed CLI behavior against the immutable `@offlinecreator/mcp` 0.1.1 npm artifact published August 8, 2026. The public repository revision used for supporting source evidence is `4a7d1ed548d91b9a9df7e951809fe444516633b2`, authored and committed at 2026-08-08T01:59:19Z, where repository metadata identifies version 0.1.2.
That version difference is a migration trigger: do not treat a model ID or catalog description copied from a page, prior run, or newer repository branch as the configuration for the installed package. Capture a new `models` snapshot whenever the package version changes and immediately before a material generation run.
- Installed-behavior evidence
- @offlinecreator/mcp 0.1.1 npm artifactDetermines the command, output serialization, exit status, and configuration errors described here.
- Repository evidence
- 4a7d1ed · 2026-08-08T01:59:19ZPinned public source for the client, MCP tool, and repository release identity.
- Refresh condition
- Package update or pre-spend checkReplace copied catalog assumptions with a new authenticated snapshot.
Evidence rail for the migration
Use each primary source for a narrow claim. The 0.1.1 npm artifact is the authority for what the installed `models` command does: call `listModels()`, request `/api/v1/models`, print the returned value as indented JSON, and set the process result. The 0.1.1 declaration establishes only a top-level `models` array whose entries are typed `unknown`; it does not publish a stable field-by-field response schema.
The current first-party product page is a dated comparison surface for workflows and displayed costs, not a replacement CLI payload. The pinned repository client and server show that catalog discovery remains separate from generation and that `list_models` is registered as a read-only, non-destructive MCP tool under the `models` scope. Keep those evidence layers separate when reviewing a migration diff.
- S02 · immutable npm tarball
- Installed CLI behavior and 0.1.1 type declarationsSupports command routing, top-level models collection, formatted JSON, exact local errors, and exit behavior.
- S04 · first-party product page
- Dated workflow and displayed-cost comparisonSupports the six-model August 8 snapshot, not an authenticated account response.
- S05–S07 · pinned public repository
- Client route, MCP boundary, and 0.1.2 repository identityAll three resolve to commit 4a7d1ed from 2026-08-08T01:59:19Z.
Replace copied model configuration with a live snapshot
Before migration, a workflow commonly carries an unverified constant such as `{"modelId":"flux-schnell","catalogEvidence":"copied"}`. That record says nothing about when the identifier was observed, which package produced it, or whether the current authenticated catalog contains it. Treat it as stale input, even when the name still appears in a public example.
After migration, keep the selection record separate from the snapshot: `{"modelId":"<ID_SELECTED_FROM_SNAPSHOT>","catalogSnapshot":"models-2026-08-08.json","packageVersion":"0.1.1","verifiedAt":"2026-08-08T...Z"}`. Produce the referenced file with `npx @offlinecreator/mcp models > models-2026-08-08.json`, inspect it, and replace the placeholder only with an ID actually observed there. This is a workflow configuration pattern, not a claim that Studio creates or manages that file.
The command boundary is exact. CLI input is the `models` subcommand plus an `OFFLINECREATOR_API_KEY` supplied through the process environment; the documented catalog scope is `models`. Successful output is the complete service response serialized as formatted JSON, with a source-level contract of a top-level `models` array and unknown entry fields. The command does not ask for a prompt, ratio, model ID, or confirmation and its branch does not call the generation route. Human action begins after output: review the available entry data, choose an ID, approve its workflow and displayed cost, and update the separate selection record.
- Before configuration
- {"modelId":"flux-schnell","catalogEvidence":"copied"}Inventory this as an unverified constant; do not interpret the example as current availability.
- Tool input
- `models` + environment key with catalog scopeNo model ID, prompt, ratio, upload, or generation confirmation is an input to this command.
- Tool output
- Indented JSON containing a top-level `models` arrayEntry fields remain unspecified by the public 0.1.1 declaration, so inspect rather than assume them.
- Human-action boundary
- Select and approve an observed IDCatalog retrieval does not itself choose a model or authorize a paid generation.
- After configuration
- Selected ID + snapshot path + package version + verification timeKeep the reviewed selection small while retaining the full snapshot as migration evidence.
- OfflineCreator Studio on npm: @offlinecreator/mcp 0.1.1
- OfflineCreator Studio on npm registry: @offlinecreator/mcp 0.1.1 published package artifact
- OfflineCreator Studio on npm registry: @offlinecreator/mcp 0.1.1 package README
- OfflineCreator Studio: MCP and CLI for AI image and video generation
- OfflineCreator Studio: OfflineCreator MCP server model tool at 4a7d1ed
Migration sequence, validation, and rollback
First, inventory every copied model ID, display name, ratio, workflow, and cost in scripts or deployment variables without changing generation behavior. Second, record the installed package version and capture a fresh `models` result to a new file. Third, have a reviewer match the intended job shape against the returned entries and update only the separate selection record. The first-party product page distinguishes text-to-image, image-to-video, and text-to-video and shows model, provider, ratios, and costs as pre-generation decision dimensions.
Validate before enabling the migrated workflow: the snapshot must parse as JSON, its top-level `models` value must be an array, the selected ID must be visibly present in the saved response, and the before/after diff must name the snapshot, package version, and verification time. Do not validate by starting a generation. If any check fails, roll back the configuration-file change, retain both snapshots and the failed diff, and keep paid execution disabled. Restoring the old file is not evidence that its copied ID is currently valid; it is only a reversible code rollback while catalog or authentication evidence is repaired.
- Symptom
- Copied ID has no current snapshotCause: selection and evidence were stored as one timeless constant. Fix: capture and review a live catalog.
- Breaking difference
- Snapshot entries are intentionally not field-schema-pinnedThe public contract guarantees a models collection, not every entry field used by a custom parser.
- Rollback
- Restore the prior config diff; keep generation disabledPreserve the failed snapshot and diagnostics instead of silently falling back to stale catalog data.
- Validation finish
- JSON array + observed ID + dated evidenceThis completes catalog migration without spending credits.
Exact `models` status and error index for package 0.1.1
Use the process result and exact stderr text as migration evidence. The package entry point catches configuration or API exceptions, writes the error message to stderr, and sets exit status 1. The `models` branch prints JSON and returns 0 only after `listModels()` resolves. A nonzero result is not an empty catalog and must not trigger substitution of copied model data.
API failures preserve the service's string `error` message when one exists; otherwise the client uses `Studio API error (<status>)`. Unexpected HTTP redirects become `Unexpected redirect from Studio API.` These are transport or service outcomes, not catalog snapshots. Keep stdout and stderr separate, repair the named boundary, then rerun the same read-only command.
- Exit 0
- Formatted JSON was printed after `/api/v1/models` resolvedNext action: validate the top-level models array and complete human selection.
- Exit 1 · missing key
- `OFFLINECREATOR_API_KEY is required. Create a key at /settings in OfflineCreator Studio.`Inject a scoped key through the process environment; do not place it in the snapshot or command arguments.
- Exit 1 · invalid key shape
- `OFFLINECREATOR_API_KEY looks invalid. Expected a key starting with oc_live_ or oc_test_.`Correct secret selection or injection without logging the key value.
- Exit 1 · unexpected redirect
- `Unexpected redirect from Studio API.`Stop and verify the configured trusted API origin; the client deliberately uses manual redirect handling.
- Exit 1 · API response
- Service `error` string, or `Studio API error (<status>)`Preserve the status context and message; do not reinterpret the failure as a zero-model response.
- Exit 1 · invalid API base
- `OFFLINECREATOR_API_BASE must be a valid absolute URL.`Fix the optional base URL or remove it to use the documented default; never add credentials to it.
Continue only after the snapshot passes
Once the migrated selection points to an ID observed in the saved snapshot, check the account balance as a separate read step. Use the focused image or video guide only after workflow, ratio, and cost review. Keeping catalog capture, selection approval, balance, and generation separate makes rollback possible without creating work.
Canonical ownership and consolidation rule
Canonical owner: `/cli/cli-list-models`. This page owns only the query “offlinecreator cli models command” and the models-command output contract, expressed as migration from copied or stale catalog data to a dated live snapshot. The parent `/cli/offlinecreator-cli` owns broad command routing; authentication owns key creation and storage; balance and generation pages own their narrower account and paid-action procedures.
Overlap guard: do not expand this page into a general CLI reference, complete model guide, pricing promise, authentication tutorial, or generation walkthrough. Consolidate this page into `/cli/offlinecreator-cli` if it can no longer provide a source-backed models-command output contract. Recent community coverage remains degraded and insufficient, so no adoption, reliability, compatibility, performance, or customer-outcome claim belongs in this canonical unit.
- Canonical owner
- /cli/cli-list-modelsOwns model-catalog retrieval and stale-to-live snapshot migration.
- Overlap guard
- Only “offlinecreator cli models command”Route install, authentication, balance, and generation detail to their existing owners.
- Consolidation condition
- No defensible models command output contractMerge the useful material into /cli/offlinecreator-cli rather than retaining a thin duplicate.