@clipwright/cli 0.27.0 → 0.29.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +68 -0
- package/README.md +95 -0
- package/dist/format.js +9 -0
- package/dist/format.js.map +1 -1
- package/dist/index.js +174 -5
- package/dist/index.js.map +1 -1
- package/dist/workflows.js +67 -0
- package/dist/workflows.js.map +1 -0
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -16,6 +16,74 @@ a customer reading it should not miss what appeared in the product. Like *Server
|
|
|
16
16
|
they are live from the day the web app was deployed, not from the package release they are
|
|
17
17
|
listed under.
|
|
18
18
|
|
|
19
|
+
## [Unreleased]
|
|
20
|
+
|
|
21
|
+
## [0.29.0] - 2026-10-16
|
|
22
|
+
|
|
23
|
+
### Added
|
|
24
|
+
|
|
25
|
+
- Workflow plans: a method from the public workflow catalog becomes a plan that you prepare, save, approve and
|
|
26
|
+
quote for free, and then start as one paid UGC or faceless run with an explicit idempotency key. `listWorkflows`,
|
|
27
|
+
`getWorkflow`, `createWorkflowPlan`, `getWorkflowPlan`, `saveWorkflowPlan`, `approveWorkflowPlan`,
|
|
28
|
+
`quoteWorkflowPlan` and `runWorkflowPlan` in the SDK; `workflows`, `workflow-show`, `plan-create`, `plan-show`,
|
|
29
|
+
`plan-save`, `plan-approve`, `plan-quote` and `plan-run` in the CLI; the MCP tools `list_workflows`, `get_workflow`,
|
|
30
|
+
`prepare_workflow_plan`, `get_workflow_plan`, `approve_workflow_plan`, `quote_workflow_plan` and
|
|
31
|
+
`run_workflow_plan`. Approval and the paid start are separate explicit calls; nothing quotes, approves or starts on
|
|
32
|
+
its own. A method starts only once it is enabled on the server; until then its availability says why. `getRun` of a
|
|
33
|
+
workflow run carries the purchased plan revision and its receipt. *Dashboard:* the videos list labels a workflow
|
|
34
|
+
run with its plan, method and revision. (clipwright#631)
|
|
35
|
+
- *Dashboard:* the editor of a faceless video edits its draft: move a cut by dragging it or with the keys, set a shot's
|
|
36
|
+
start, end or length, start or end it on a word, remove a picture, and regenerate a picture or describe a new one.
|
|
37
|
+
The draft saves itself. "Copy as API call" copies the revision as `curl` and as the MCP `revise_run` call, and
|
|
38
|
+
"Render new version" shows the quote and starts the revision, which the header then follows to "Version ready".
|
|
39
|
+
An answer that does not come is held in the browser, so a retry starts no second revision. (clipwright#604)
|
|
40
|
+
- A shot of a faceless video can get a candidate: one picture or clip made for that shot, to keep or discard in a
|
|
41
|
+
revision. `quoteCandidate`, `createCandidate` and `listCandidates` in the SDK, `candidate-quote`, `candidate` and
|
|
42
|
+
`candidates` in the CLI, and the MCP tools `quote_candidate` and `create_candidate`. The quote charges nothing. A
|
|
43
|
+
delivered candidate is charged its one unit whether it is kept or discarded; one that fails is charged nothing,
|
|
44
|
+
even when its paid work was already done. An identical request returns the same run; `take` (`--take` in the CLI)
|
|
45
|
+
makes another candidate on purpose. `candidate` prints the quote and starts nothing without `--yes`. While shot
|
|
46
|
+
candidates are closed on the server, every call answers `editing_disabled`. (clipwright#604)
|
|
47
|
+
|
|
48
|
+
### Changed
|
|
49
|
+
|
|
50
|
+
- **Breaking:** `ApiFailure` gains the kinds `workflow_invalid`, `workflow_conflict` and `workflow_not_ready`, for
|
|
51
|
+
TypeScript callers that switch on the kind. Each keeps every issue and warning of the refusal. (clipwright#631)
|
|
52
|
+
- The agent report of `edit_ceiling_reached` and `edit_invalid` names a paid edit and the request, not a revision and
|
|
53
|
+
a document, since shot candidates are refused with the same codes. *Dashboard:* the docs page lists the prices of a
|
|
54
|
+
shot candidate. (clipwright#604)
|
|
55
|
+
|
|
56
|
+
## [0.28.0] - 2026-10-15
|
|
57
|
+
|
|
58
|
+
The revision of a faceless video is paid and open: `quoteRevision` and `startRevision` in the SDK, `revise-quote` and
|
|
59
|
+
`revise` in the CLI, and the MCP tools `quote_revision` and `revise_run`, which make the server list 17 tools. Three
|
|
60
|
+
failure kinds are new: `editing_closed`, `edit_ceiling_reached` and `edit_invalid`.
|
|
61
|
+
|
|
62
|
+
### Added
|
|
63
|
+
|
|
64
|
+
- A finished faceless video can be revised: `quoteRevision` and `startRevision` in the SDK, `revise-quote` and
|
|
65
|
+
`revise` in the CLI, and the MCP tools `quote_revision` and `revise_run`. A revision is a new run made from the
|
|
66
|
+
edited document, or from shots named to be generated anew. The quote charges nothing. An identical request returns
|
|
67
|
+
the same run; `attempt` (`--retry` in the CLI) starts a second revision on purpose. A revision that delivers is
|
|
68
|
+
charged its quoted total; one that fails is charged nothing, even when its paid work was already done. While paid
|
|
69
|
+
edits are closed on the server, both calls answer `editing_disabled`. (clipwright#604)
|
|
70
|
+
|
|
71
|
+
### Changed
|
|
72
|
+
|
|
73
|
+
- **Breaking:** `@clipwright/core`, for TypeScript callers: the union `ApiFailure` has three more members,
|
|
74
|
+
`editing_closed`, `edit_ceiling_reached` and `edit_invalid`. A `switch` over `failure.kind` that is checked for
|
|
75
|
+
exhaustiveness does not compile until it handles them. Code that does not switch on the kind is not affected.
|
|
76
|
+
(clipwright#604)
|
|
77
|
+
- The refusals of the revision routes have failure kinds of their own: `editing_closed` for the 503s
|
|
78
|
+
`editing_disabled`, `editing_not_priced` and `editing_window_not_set`, which are no longer retried as server errors;
|
|
79
|
+
`edit_ceiling_reached` with the limit, the count and the runs counted; `edit_invalid` with the issues of the
|
|
80
|
+
document. They were `server_error` and a `client_error` without their fields. (clipwright#604)
|
|
81
|
+
- *Dashboard:* `/videos` lists faceless videos as well as UGC videos. A faceless video has no still frame, so its
|
|
82
|
+
tile says that no preview was recorded, and a click plays it like any other tile. "Get video link" on the Balance
|
|
83
|
+
page now gives the link of a faceless video, where it used to answer "No video for this run.". (clipwright#604)
|
|
84
|
+
- *Dashboard:* a revision is labelled with the run it revises on the Balance page and on `/videos`, and the docs page
|
|
85
|
+
lists the prices of a revision. (clipwright#604)
|
|
86
|
+
|
|
19
87
|
## [0.27.0] - 2026-10-13
|
|
20
88
|
|
|
21
89
|
The shots of a finished video can be read, and the draft of an edit can be kept: `getRunShots`, `getRunEdit` and
|
package/README.md
CHANGED
|
@@ -32,6 +32,83 @@ above name the package with `-p`, so they resolve here either way.
|
|
|
32
32
|
| `shots <run>` | Lists the shots of a finished video: span, kind, start of the description and preview link of each. Free. |
|
|
33
33
|
| `edit-show <run>` | Prints the draft of an edit of a run as JSON. Version 0 means nothing is stored. Free. |
|
|
34
34
|
| `edit-save <run> --file <path>` | Saves the draft from a file `edit-show` printed. Charges nothing and renders nothing. |
|
|
35
|
+
| `revise-quote <run>` | Prices a revision of a faceless video and prints the quote as JSON. Spends nothing. |
|
|
36
|
+
| `revise <run>` | Starts a revision: a new run that renders the video again with the shots you change. **Costs credits.** Prints the run; follow it with `runs <id>`. |
|
|
37
|
+
| `candidate-quote <run>` | Prices a shot candidate, one picture or clip for one shot, and prints the quote as JSON. Spends nothing. |
|
|
38
|
+
| `candidate <run>` | Prints the quote of a shot candidate; with `--yes` makes it. **Costs credits.** Prints the run; follow it with `runs <id>`. |
|
|
39
|
+
| `candidates <run>` | Lists the shot candidates of a video's family as JSON, with state, charge and preview. Free. |
|
|
40
|
+
| `workflows` | Public workflow methods and availability as JSON. Free. |
|
|
41
|
+
| `workflow-show <method>` | One method's rules, requirements and limitations as JSON. Free. |
|
|
42
|
+
| `plan-create --file <path>` | Store `{ document }` without starting a run. Free. |
|
|
43
|
+
| `plan-show <plan>` | Print the current owned plan and revision as JSON. Free. |
|
|
44
|
+
| `plan-save <plan> --file <path>` | Save `{ base_version, document }` or the complete plan-show output for this plan. Free. |
|
|
45
|
+
| `plan-approve <plan> --file <path>` | Explicitly approve `{ revision, content_digest }`. Free; starts no run. |
|
|
46
|
+
| `plan-quote <plan>` | Print the approved plan's quote as JSON. Free. |
|
|
47
|
+
| `plan-run <plan> --file <path>` | Start one explicitly keyed paid workflow and print its receipt and native run immediately. |
|
|
48
|
+
|
|
49
|
+
## Workflow files and explicit purchases
|
|
50
|
+
|
|
51
|
+
The four native methods are `ugc-product-intro`, `ugc-faq-answer`,
|
|
52
|
+
`faceless-explainer` and `product-image-story`, subject to their executor's
|
|
53
|
+
configuration, qualification and activation. `website-proof-demo` and
|
|
54
|
+
`kinetic-launch` remain `execution_blocked` with reasons.
|
|
55
|
+
|
|
56
|
+
Workflow commands print JSON to stdout; API refusal messages, including all
|
|
57
|
+
issues and warnings, go to stderr. Files must be valid UTF-8 JSON and at most
|
|
58
|
+
1 MiB before parsing. Documents have a separate 256000 JSON-byte limit.
|
|
59
|
+
Unknown write fields are refused; accepted raw narration is preserved.
|
|
60
|
+
|
|
61
|
+
Start with a method's complete example, then edit its brief and evidence to
|
|
62
|
+
match your intent. Preserve the method/capability pins and accepted raw script:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
clipwright workflow-show faceless-explainer > method.json
|
|
66
|
+
jq '{document: {v: 1, method: {method_id: .descriptor.id, version: .descriptor.version, content_digest: .descriptor.content_digest, capability_digest: .capabilities.content_digest}, brief: .descriptor.example.brief, beats: .descriptor.example.beats, claims: [], assets: []}}' method.json > create.json
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
Inspect the plan's readiness issues and warnings before choosing its exact
|
|
70
|
+
revision for approval:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
clipwright plan-create --file create.json > plan.json
|
|
74
|
+
jq '{revision, content_digest}' plan.json > approval.json
|
|
75
|
+
clipwright plan-approve wfp_example --file approval.json
|
|
76
|
+
clipwright plan-quote wfp_example > quote.json
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Replace `wfp_example` with the returned plan id. After accepting the quoted
|
|
80
|
+
price, choose one stable key for this purchase and extract exactly the launch
|
|
81
|
+
fields. Do not send the whole quote as the launch file:
|
|
82
|
+
|
|
83
|
+
```bash
|
|
84
|
+
jq '{revision, content_digest, semantic_input_digest, quote_id, idempotency_key: "workflow-example:1"}' quote.json > launch.json
|
|
85
|
+
clipwright plan-run wfp_example --file launch.json
|
|
86
|
+
clipwright runs run_example
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Use the returned run id in `runs`. The launch does not wait for the video.
|
|
90
|
+
If its answer is uncertain, keep and explicitly resend the original file and
|
|
91
|
+
key to recover that purchase; a new key can pay twice. No workflow command
|
|
92
|
+
automatically approves, quotes, launches or selects a new attempt.
|
|
93
|
+
|
|
94
|
+
`plan-show wfp_example > edited.json` produces a file you can edit and pass to
|
|
95
|
+
`plan-save wfp_example --file edited.json`. The CLI requires its original plan
|
|
96
|
+
id, takes its revision as the base version, and validates the original document
|
|
97
|
+
strictly. Future document fields survive reading and cause an unsupported
|
|
98
|
+
save to fail before fetch. A repeated explicit save after a lost answer returns
|
|
99
|
+
the already-saved current revision; a different current document conflicts.
|
|
100
|
+
|
|
101
|
+
`runs` appends optional workflow JSON with the purchased plan and available
|
|
102
|
+
artifact/placement evidence. It keeps native state and warnings. Missing proof
|
|
103
|
+
is explicit `null` with a validation issue; `[]` means verified no placements.
|
|
104
|
+
Historical evidence does not renew a download URL, and
|
|
105
|
+
`creative_acceptance: "not_reviewed"` is separate from technical delivery.
|
|
106
|
+
Original product images use owned upload ids, digests and nonoverlapping
|
|
107
|
+
word/quote anchors in supported IMAGE shots; the generated opener is
|
|
108
|
+
illustrative. Required unsupported layouts or unproven protected placement
|
|
109
|
+
are refused. See the [workflow API contract](https://clipwright.io/docs).
|
|
110
|
+
|
|
111
|
+
## Native video commands
|
|
35
112
|
|
|
36
113
|
`quote` and `make` take the actor's photo as `--image <url>` or `--image-file <path>`
|
|
37
114
|
(uploaded first, then passed on), plus `--aspect-ratio 9:16|1:1|16:9` and
|
|
@@ -102,6 +179,24 @@ Otherwise it reports the conflict with the stored version: run `edit-show`
|
|
|
102
179
|
again and apply your change to that draft. Write the new draft to another file
|
|
103
180
|
than the one you pass with `--file`.
|
|
104
181
|
|
|
182
|
+
`revise-quote` and `revise` take one of two inputs: `--shot <id>` with one of
|
|
183
|
+
`--retake`, `--new-picture <description>` or `--animate [motion]`, or
|
|
184
|
+
`--document <path>`, a file `edit-show` printed whose edited `document` is the
|
|
185
|
+
whole revision. A revision that delivers is charged its quoted total; one that
|
|
186
|
+
fails is charged nothing, even when its paid work was already done. The same
|
|
187
|
+
request sent again returns the run it started; `--retry 2` starts a second
|
|
188
|
+
revision. While paid edits are closed on the server, both commands answer
|
|
189
|
+
`editing_disabled`.
|
|
190
|
+
|
|
191
|
+
`candidate-quote` and `candidate` take `--shot <id>` with one of `--retake`,
|
|
192
|
+
`--new-picture <description>` or `--animate [motion]`, and `--take <n>`, 1 by
|
|
193
|
+
default. `candidate` prints the price first and starts nothing without `--yes`.
|
|
194
|
+
A delivered candidate is charged its one unit whether it is kept or discarded;
|
|
195
|
+
one that fails is charged nothing, even when its paid work was already done.
|
|
196
|
+
The same request and take sent again return the run they started; `--take 2`
|
|
197
|
+
makes another candidate, charged again. While shot candidates are closed on the
|
|
198
|
+
server, the three commands answer `editing_disabled`.
|
|
199
|
+
|
|
105
200
|
`make` retries are explicit: `--retry 2` deliberately starts a *new* run for the
|
|
106
201
|
same script. Without it a repeated call returns the run you already paid for,
|
|
107
202
|
because every request carries an idempotency key derived from the input and from
|
package/dist/format.js
CHANGED
|
@@ -20,6 +20,8 @@ export function formatRun(run) {
|
|
|
20
20
|
if (run.error) {
|
|
21
21
|
lines.push(`error: ${run.error}`);
|
|
22
22
|
}
|
|
23
|
+
if (run.workflow !== undefined)
|
|
24
|
+
lines.push(`workflow: ${JSON.stringify(run.workflow)}`);
|
|
23
25
|
return lines.join("\n");
|
|
24
26
|
}
|
|
25
27
|
// A shot's description can be a paragraph; its line shows the start.
|
|
@@ -88,6 +90,13 @@ export function formatDraftNotes(draft) {
|
|
|
88
90
|
export function formatApiError(error) {
|
|
89
91
|
const report = error.report();
|
|
90
92
|
const lines = [`error: ${report.message}`, `code: ${report.code} (HTTP ${error.status})`];
|
|
93
|
+
if (report.warnings !== undefined) {
|
|
94
|
+
for (const issue of report.issues ?? [])
|
|
95
|
+
if ('kind' in issue)
|
|
96
|
+
lines.push(`issue: ${issue.kind} at ${issue.path || 'input'}: ${issue.message}`);
|
|
97
|
+
for (const warning of report.warnings)
|
|
98
|
+
lines.push(`warning: ${warning}`);
|
|
99
|
+
}
|
|
91
100
|
if (report.next_action)
|
|
92
101
|
lines.push(report.next_action);
|
|
93
102
|
return lines.join("\n");
|
package/dist/format.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -4,9 +4,10 @@ import { createRequire } from "node:module";
|
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
import { isDeepStrictEqual } from "node:util";
|
|
6
6
|
import { Command, Option } from "commander";
|
|
7
|
-
import { ACTOR_GENDERS_ACCEPTED, ACTOR_QUALITIES_ACCEPTED, apiBaseUrlFromEnv, ASPECT_RATIOS, CATALOG_GENDERS, CATALOG_LANGUAGES, DEFAULT_FACELESS_VOICE, editDocumentRead, MODEL_VOICE_MODEL, PUBLIC_APP_BASE_URL, RESOLUTIONS, TTS_MODELS, UPLOAD_MAX_BYTES, VOICE_NAME_PATTERN, VOICE_PRESET_NAMES, VOICE_SKILLS, sniffUploadMediaType, } from "@clipwright/core";
|
|
7
|
+
import { ACTOR_GENDERS_ACCEPTED, ACTOR_QUALITIES_ACCEPTED, apiBaseUrlFromEnv, ASPECT_RATIOS, CATALOG_GENDERS, CATALOG_LANGUAGES, CANDIDATE_CHARGE_TEXT, DEFAULT_FACELESS_VOICE, editDocumentRead, FAILED_STATE, MODEL_VOICE_MODEL, PUBLIC_APP_BASE_URL, RESOLUTIONS, REVISION_CHARGE_TEXT, TTS_MODELS, UPLOAD_MAX_BYTES, VOICE_NAME_PATTERN, VOICE_PRESET_NAMES, VOICE_SKILLS, sniffUploadMediaType, } from "@clipwright/core";
|
|
8
8
|
import { ClipwrightApiError, ClipwrightClient, ClipwrightResponseError, } from "@clipwright/sdk";
|
|
9
9
|
import { formatApiError, formatDraftNotes, formatRun, formatRunShots, formatSchemaError, formatVoices, } from "./format.js";
|
|
10
|
+
import { registerWorkflowCommands, WorkflowFileError } from './workflows.js';
|
|
10
11
|
// Version from the manifest: a literal drifts, and a JSON import breaks `rootDir`.
|
|
11
12
|
const { version } = createRequire(import.meta.url)("../package.json");
|
|
12
13
|
const program = new Command();
|
|
@@ -60,18 +61,19 @@ function withSourceOptions(command) {
|
|
|
60
61
|
.addOption(new Option("--aspect-ratio <ratio>", "output format; pass it explicitly with a picture").choices(ASPECT_RATIOS))
|
|
61
62
|
.addOption(new Option("--resolution <size>", "output resolution").choices(RESOLUTIONS));
|
|
62
63
|
}
|
|
63
|
-
/** --retry
|
|
64
|
+
/** --retry and --take are NUMBERS, parsed strictly: the value enters the */
|
|
64
65
|
/** idempotency key, so a lenient parse could buy a second render. */
|
|
65
|
-
|
|
66
|
+
const parseWholeNumber = (flag) => (raw) => {
|
|
66
67
|
// Same bound as the SDK's `attemptSuffix`: a leading `[1-9]` rejects zero,
|
|
67
68
|
// `isSafeInteger` rejects values too large to stay distinct.
|
|
68
69
|
const parsed = Number.parseInt(raw, 10);
|
|
69
70
|
if (!/^[1-9]\d*$/.test(raw) || !Number.isSafeInteger(parsed)) {
|
|
70
|
-
console.error(
|
|
71
|
+
console.error(`${flag} expects a whole number of 1 or more, got ${raw}`);
|
|
71
72
|
process.exit(1);
|
|
72
73
|
}
|
|
73
74
|
return parsed;
|
|
74
|
-
}
|
|
75
|
+
};
|
|
76
|
+
const parseRetry = parseWholeNumber("--retry");
|
|
75
77
|
program
|
|
76
78
|
.command("upload <path>")
|
|
77
79
|
.description("upload a local PNG/JPEG and print the https url to pass as --image")
|
|
@@ -234,6 +236,167 @@ program
|
|
|
234
236
|
}
|
|
235
237
|
printDraft(saved);
|
|
236
238
|
});
|
|
239
|
+
const GENERATE_FLAGS = ["retake", "newPicture", "animate"];
|
|
240
|
+
/** Revision input shared by quote and start, so the quote prices what is started: one shot to generate, or a document. */
|
|
241
|
+
const withReviseOptions = (command) => command
|
|
242
|
+
.addOption(new Option("--shot <id>", "the shot to generate anew, with one of --retake, --new-picture or --animate")
|
|
243
|
+
.conflicts("document"))
|
|
244
|
+
.addOption(new Option("--retake", "generate the shot again from its own description").conflicts(["newPicture", "animate", "document"]))
|
|
245
|
+
.addOption(new Option("--new-picture <description>", "draw a new picture for the shot from this description")
|
|
246
|
+
.conflicts(["animate", "document"]))
|
|
247
|
+
.addOption(new Option("--animate [motion]", "turn the opening picture into a clip, with this motion if given").conflicts("document"))
|
|
248
|
+
.option("--document <path>", "the file edit-show prints: its document, edited, is the whole revision");
|
|
249
|
+
/** The request a revision sends, built here and refused before any request when the flags or the file name none. */
|
|
250
|
+
function revisionInput(opts) {
|
|
251
|
+
if (opts.document !== undefined) {
|
|
252
|
+
let parsed;
|
|
253
|
+
try {
|
|
254
|
+
parsed = JSON.parse(readFileSync(opts.document, "utf8"));
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
console.error(`${opts.document} cannot be read as JSON: ${error instanceof Error ? error.message : String(error)}`);
|
|
258
|
+
process.exit(1);
|
|
259
|
+
}
|
|
260
|
+
const document = isRecord(parsed) ? parsed.document : undefined;
|
|
261
|
+
if (!isRecord(document)) {
|
|
262
|
+
console.error(`${opts.document} is not a draft as "clipwright edit-show" prints it: it lacks document (an object). ` +
|
|
263
|
+
"Nothing was sent.");
|
|
264
|
+
process.exit(1);
|
|
265
|
+
}
|
|
266
|
+
return { document };
|
|
267
|
+
}
|
|
268
|
+
const chosen = GENERATE_FLAGS.filter((flag) => opts[flag] !== undefined);
|
|
269
|
+
if (opts.shot === undefined || chosen.length !== 1) {
|
|
270
|
+
console.error("pass --shot <id> with one of --retake, --new-picture or --animate, or --document <path>. Nothing was sent.");
|
|
271
|
+
process.exit(1);
|
|
272
|
+
}
|
|
273
|
+
const operation = opts.retake === true ? { mode: "retake" }
|
|
274
|
+
: opts.newPicture !== undefined ? { mode: "new_picture", description: opts.newPicture }
|
|
275
|
+
: { mode: "animate", ...(typeof opts.animate === "string" ? { motion: opts.animate } : {}) };
|
|
276
|
+
return { changes: [{ shot_id: opts.shot, operation }] };
|
|
277
|
+
}
|
|
278
|
+
withReviseOptions(program.command("revise-quote <run>")
|
|
279
|
+
.description(`price a revision of a run without spending credits; prints the quote as JSON. ${REVISION_CHARGE_TEXT}`)).action(async (run, opts) => {
|
|
280
|
+
console.log(JSON.stringify(await client().quoteRevision(run, revisionInput(opts)), null, 2));
|
|
281
|
+
});
|
|
282
|
+
withReviseOptions(program.command("revise <run>")
|
|
283
|
+
.description(`start a revision of a run (paid): a new run, editable in its turn; prints the run. ${REVISION_CHARGE_TEXT}`))
|
|
284
|
+
.option("--retry <n>", "attempt number: the same request with another number starts another revision", parseRetry)
|
|
285
|
+
.action(async (run, opts) => {
|
|
286
|
+
const request = revisionInput(opts);
|
|
287
|
+
let started;
|
|
288
|
+
try {
|
|
289
|
+
started = await client().startRevision(run, request, { attempt: opts.retry });
|
|
290
|
+
}
|
|
291
|
+
catch (error) {
|
|
292
|
+
if (!(error instanceof ClipwrightApiError))
|
|
293
|
+
throw error;
|
|
294
|
+
const failure = error.failure;
|
|
295
|
+
if (failure.kind === "edit_ceiling_reached") {
|
|
296
|
+
console.error(formatApiError(error));
|
|
297
|
+
if (failure.limit === "in_flight") {
|
|
298
|
+
for (const id of failure.runIds)
|
|
299
|
+
console.error(`running: ${id}; follow it with "clipwright runs ${id}"`);
|
|
300
|
+
}
|
|
301
|
+
else {
|
|
302
|
+
console.error(`${failure.counted} of ${failure.allowed} revisions of ${failure.rootRunId} are counted; ask support to raise the limit.`);
|
|
303
|
+
}
|
|
304
|
+
process.exit(1);
|
|
305
|
+
}
|
|
306
|
+
// The source is resolved before a resent key is replayed, so a `--shot` resend of a source past its media meets this.
|
|
307
|
+
if (failure.kind === "run_not_editable" && "changes" in request) {
|
|
308
|
+
console.error(formatApiError(error));
|
|
309
|
+
console.error('if you started this revision before, find it with "clipwright runs"');
|
|
310
|
+
process.exit(1);
|
|
311
|
+
}
|
|
312
|
+
throw error;
|
|
313
|
+
}
|
|
314
|
+
console.log(JSON.stringify(started, null, 2));
|
|
315
|
+
if (started.state === FAILED_STATE) {
|
|
316
|
+
console.error(`run ${started.run_id} is ${started.state}; to try again, pass --retry ${(opts.retry ?? 1) + 1}`);
|
|
317
|
+
process.exit(1);
|
|
318
|
+
}
|
|
319
|
+
console.error(`follow it with "clipwright runs ${started.run_id}"`);
|
|
320
|
+
});
|
|
321
|
+
/** Candidate input shared by quote and start, so the quote prices what is started: one shot, one operation, one take. */
|
|
322
|
+
const withCandidateOptions = (command) => command
|
|
323
|
+
.option("--shot <id>", "the shot to make a candidate for, with one of --retake, --new-picture or --animate")
|
|
324
|
+
.addOption(new Option("--retake", "generate the shot again from its own description").conflicts(["newPicture", "animate"]))
|
|
325
|
+
.addOption(new Option("--new-picture <description>", "draw a new picture for the shot from this description").conflicts("animate"))
|
|
326
|
+
.option("--animate [motion]", "turn the opening picture into a clip, with this motion if given")
|
|
327
|
+
.option("--take <n>", "take number, 1 by default: the same request and take return the first candidate; " +
|
|
328
|
+
"another take makes another one, charged again", parseWholeNumber("--take"));
|
|
329
|
+
/** The request a candidate sends, built here and refused before any request when the flags name no shot or operation. */
|
|
330
|
+
function candidateInput(opts) {
|
|
331
|
+
const chosen = GENERATE_FLAGS.filter((flag) => opts[flag] !== undefined);
|
|
332
|
+
if (opts.shot === undefined || chosen.length !== 1) {
|
|
333
|
+
console.error("pass --shot <id> with one of --retake, --new-picture or --animate. Nothing was sent.");
|
|
334
|
+
process.exit(1);
|
|
335
|
+
}
|
|
336
|
+
const operation = opts.retake === true ? { mode: "retake" }
|
|
337
|
+
: opts.newPicture !== undefined ? { mode: "new_picture", description: opts.newPicture }
|
|
338
|
+
: { mode: "animate", ...(typeof opts.animate === "string" ? { motion: opts.animate } : {}) };
|
|
339
|
+
return { shot_id: opts.shot, operation, take: opts.take ?? 1 };
|
|
340
|
+
}
|
|
341
|
+
withCandidateOptions(program.command("candidate-quote <run>")
|
|
342
|
+
.description(`price a shot candidate of a run without spending credits; prints the quote as JSON. ${CANDIDATE_CHARGE_TEXT}`)).action(async (run, opts) => {
|
|
343
|
+
console.log(JSON.stringify(await client().quoteCandidate(run, candidateInput(opts)), null, 2));
|
|
344
|
+
});
|
|
345
|
+
withCandidateOptions(program.command("candidate <run>")
|
|
346
|
+
.description("make a shot candidate of a run (paid): one picture or clip for one shot, to keep or discard in a revision; " +
|
|
347
|
+
`prints the quote, then with --yes starts it and prints the run. ${CANDIDATE_CHARGE_TEXT}`))
|
|
348
|
+
.option("--yes", "start the candidate after printing its quote; without it nothing is started")
|
|
349
|
+
.action(async (run, opts) => {
|
|
350
|
+
const request = candidateInput(opts);
|
|
351
|
+
const quote = await client().quoteCandidate(run, request);
|
|
352
|
+
console.error(`candidate of shot ${quote.shot_id} (${quote.unit}, take ${request.take}): ${quote.credits} credits; ` +
|
|
353
|
+
`usable in a revision until ${quote.usable_until}`);
|
|
354
|
+
for (const warning of quote.warnings)
|
|
355
|
+
console.error(`warning: ${warning}`);
|
|
356
|
+
if (opts.yes !== true) {
|
|
357
|
+
console.error("Nothing was started; pass --yes to start it.");
|
|
358
|
+
process.exit(1);
|
|
359
|
+
}
|
|
360
|
+
let created;
|
|
361
|
+
try {
|
|
362
|
+
created = await client().createCandidate(run, request);
|
|
363
|
+
}
|
|
364
|
+
catch (error) {
|
|
365
|
+
if (!(error instanceof ClipwrightApiError))
|
|
366
|
+
throw error;
|
|
367
|
+
const failure = error.failure;
|
|
368
|
+
if (failure.kind === "edit_ceiling_reached") {
|
|
369
|
+
console.error(formatApiError(error));
|
|
370
|
+
if (failure.limit === "in_flight") {
|
|
371
|
+
for (const id of failure.runIds)
|
|
372
|
+
console.error(`running: ${id}; follow it with "clipwright runs ${id}"`);
|
|
373
|
+
}
|
|
374
|
+
else {
|
|
375
|
+
console.error(`${failure.counted} of ${failure.allowed} candidates of ${failure.rootRunId} are counted; ` +
|
|
376
|
+
"no candidate of it can start, and support cannot raise this limit yet.");
|
|
377
|
+
}
|
|
378
|
+
process.exit(1);
|
|
379
|
+
}
|
|
380
|
+
// The source is resolved before a resent key is replayed, so a resend after the source's media are gone meets this.
|
|
381
|
+
if (failure.kind === "run_not_editable") {
|
|
382
|
+
console.error(formatApiError(error));
|
|
383
|
+
console.error(`if you made this candidate before, find it with "clipwright candidates ${run}"`);
|
|
384
|
+
process.exit(1);
|
|
385
|
+
}
|
|
386
|
+
throw error;
|
|
387
|
+
}
|
|
388
|
+
console.log(JSON.stringify(created, null, 2));
|
|
389
|
+
if (created.state === FAILED_STATE) {
|
|
390
|
+
console.error(`run ${created.run_id} is ${created.state}; to try again, pass --take ${request.take + 1}`);
|
|
391
|
+
process.exit(1);
|
|
392
|
+
}
|
|
393
|
+
console.error(`follow it with "clipwright runs ${created.run_id}"; once it succeeded, "clipwright candidates ${run}" shows its preview`);
|
|
394
|
+
});
|
|
395
|
+
program.command("candidates <run>")
|
|
396
|
+
.description("list the shot candidates of a run's family, oldest first, with state, charge and preview; free")
|
|
397
|
+
.action(async (run) => {
|
|
398
|
+
console.log(JSON.stringify(await client().listCandidates(run), null, 2));
|
|
399
|
+
});
|
|
237
400
|
program.command("actors").description("list saved actors and verified formats").action(async () => {
|
|
238
401
|
console.log(JSON.stringify({ actors: await client().listActors() }, null, 2));
|
|
239
402
|
});
|
|
@@ -337,6 +500,7 @@ program
|
|
|
337
500
|
});
|
|
338
501
|
/** Exported so tests can drive the program; autorun happens only when this */
|
|
339
502
|
/** module is the process entry point, so importing it runs nothing. */
|
|
503
|
+
registerWorkflowCommands(program, client);
|
|
340
504
|
export { program };
|
|
341
505
|
const isDirectRun = () => {
|
|
342
506
|
const entry = process.argv[1];
|
|
@@ -359,6 +523,11 @@ if (isDirectRun())
|
|
|
359
523
|
/** still throw, since their stack is the useful part. */
|
|
360
524
|
function run() {
|
|
361
525
|
program.parseAsync().catch((error) => {
|
|
526
|
+
if (error instanceof WorkflowFileError) {
|
|
527
|
+
console.error(`error: ${error.message}`);
|
|
528
|
+
process.exitCode = 1;
|
|
529
|
+
return;
|
|
530
|
+
}
|
|
362
531
|
if (error instanceof ClipwrightApiError) {
|
|
363
532
|
console.error(formatApiError(error));
|
|
364
533
|
process.exitCode = 1;
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { constants, openSync, fstatSync, readSync, closeSync } from 'node:fs';
|
|
2
|
+
import { createWorkflowPlan, saveWorkflowPlan, approveWorkflowPlan, launchWorkflow, workflowPlanRead } from '@clipwright/core/workflows';
|
|
3
|
+
export class WorkflowFileError extends Error {
|
|
4
|
+
constructor(message, cause) { super(message, { cause }); this.name = 'WorkflowFileError'; }
|
|
5
|
+
}
|
|
6
|
+
const FILE_MAX_BYTES = 1_048_576;
|
|
7
|
+
function readFile(path) {
|
|
8
|
+
let fd;
|
|
9
|
+
try {
|
|
10
|
+
fd = openSync(path, constants.O_RDONLY | constants.O_NONBLOCK);
|
|
11
|
+
const stat = fstatSync(fd);
|
|
12
|
+
if (!stat.isFile() || stat.size > FILE_MAX_BYTES)
|
|
13
|
+
throw new Error(`expected a regular file of at most ${FILE_MAX_BYTES} bytes`);
|
|
14
|
+
const buffer = Buffer.alloc(FILE_MAX_BYTES + 1);
|
|
15
|
+
let used = 0;
|
|
16
|
+
while (used < buffer.length) {
|
|
17
|
+
const count = readSync(fd, buffer, used, buffer.length - used, null);
|
|
18
|
+
if (count === 0)
|
|
19
|
+
break;
|
|
20
|
+
used += count;
|
|
21
|
+
}
|
|
22
|
+
if (used > FILE_MAX_BYTES)
|
|
23
|
+
throw new Error(`file exceeds ${FILE_MAX_BYTES} bytes`);
|
|
24
|
+
return JSON.parse(new TextDecoder('utf-8', { fatal: true }).decode(buffer.subarray(0, used)));
|
|
25
|
+
}
|
|
26
|
+
catch (cause) {
|
|
27
|
+
throw new WorkflowFileError(`${path}: cannot read workflow JSON. ${cause instanceof Error ? cause.message : String(cause)} Nothing was sent.`, cause);
|
|
28
|
+
}
|
|
29
|
+
finally {
|
|
30
|
+
if (fd !== undefined)
|
|
31
|
+
closeSync(fd);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
function saveInput(planId, raw) {
|
|
35
|
+
if (raw !== null && typeof raw === 'object' && !Array.isArray(raw) && 'plan_id' in raw) {
|
|
36
|
+
workflowPlanRead.parse(raw);
|
|
37
|
+
const value = raw;
|
|
38
|
+
if (value.plan_id !== planId)
|
|
39
|
+
throw new WorkflowFileError('The file belongs to another plan. Nothing was sent.');
|
|
40
|
+
return saveWorkflowPlan.parse({ base_version: value.revision, document: value.document });
|
|
41
|
+
}
|
|
42
|
+
return saveWorkflowPlan.parse(raw);
|
|
43
|
+
}
|
|
44
|
+
const print = (value) => { console.log(JSON.stringify(value, null, 2)); };
|
|
45
|
+
export function registerWorkflowCommands(program, client) {
|
|
46
|
+
program.command('workflows').description('list workflow methods and current availability (free)')
|
|
47
|
+
.action(async () => print(await client().listWorkflows()));
|
|
48
|
+
program.command('workflow-show <method>').description('read one workflow method and its script rules (free)')
|
|
49
|
+
.action(async (method) => print(await client().getWorkflow(method)));
|
|
50
|
+
program.command('plan-create').description('create a workflow plan from a complete document (free; starts no run)')
|
|
51
|
+
.requiredOption('--file <path>', 'JSON with document')
|
|
52
|
+
.action(async (opts) => print(await client().createWorkflowPlan(createWorkflowPlan.parse(readFile(opts.file)))));
|
|
53
|
+
program.command('plan-show <plan>').description('print the owned workflow plan and revision as JSON (free)')
|
|
54
|
+
.action(async (plan) => print(await client().getWorkflowPlan(plan)));
|
|
55
|
+
program.command('plan-save <plan>').description('save a workflow revision without approving or starting a run (free)')
|
|
56
|
+
.requiredOption('--file <path>', 'JSON with base_version/document, or the complete plan-show output')
|
|
57
|
+
.action(async (plan, opts) => print(await client().saveWorkflowPlan(plan, saveInput(plan, readFile(opts.file)))));
|
|
58
|
+
program.command('plan-approve <plan>').description('explicitly approve the chosen workflow revision (free; starts no run)')
|
|
59
|
+
.requiredOption('--file <path>', 'JSON with revision and content_digest')
|
|
60
|
+
.action(async (plan, opts) => print(await client().approveWorkflowPlan(plan, approveWorkflowPlan.parse(readFile(opts.file)))));
|
|
61
|
+
program.command('plan-quote <plan>').description('quote the approved workflow revision without spending credits')
|
|
62
|
+
.action(async (plan) => print(await client().quoteWorkflowPlan(plan)));
|
|
63
|
+
program.command('plan-run <plan>').description('start one paid workflow run with an explicit original idempotency key; returns immediately')
|
|
64
|
+
.requiredOption('--file <path>', 'exact launch JSON: revision, content_digest, semantic_input_digest, quote_id, idempotency_key')
|
|
65
|
+
.action(async (plan, opts) => print(await client().runWorkflowPlan(plan, launchWorkflow.parse(readFile(opts.file)))));
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=workflows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflows.js","sourceRoot":"","sources":["../src/workflows.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clipwright/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.29.0",
|
|
4
4
|
"description": "Command-line client for the Clipwright UGC video API",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cli",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
30
|
"commander": "^15.0.0",
|
|
31
|
-
"@clipwright/core": "0.
|
|
32
|
-
"@clipwright/sdk": "0.
|
|
31
|
+
"@clipwright/core": "0.29.0",
|
|
32
|
+
"@clipwright/sdk": "0.29.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@types/node": "^26.1.1"
|