@clipwright/cli 0.19.0 → 0.21.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 +55 -0
- package/README.md +14 -0
- package/dist/format.js +8 -44
- package/dist/format.js.map +1 -1
- package/dist/index.js +70 -81
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -16,6 +16,61 @@ 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
|
+
## [0.21.0] - 2026-09-27
|
|
20
|
+
|
|
21
|
+
Faceless videos: an agent can now make a video of up to 90 seconds without an on-camera presenter, from a script or
|
|
22
|
+
from a short brief, and see the price before anything is made.
|
|
23
|
+
|
|
24
|
+
### Added
|
|
25
|
+
|
|
26
|
+
- `quote_faceless` and `make_faceless` MCP tools, `quoteFaceless` and `startFaceless` in the SDK, and the
|
|
27
|
+
`quote-faceless` and `make-faceless` CLI commands. The video is narration over an opening animated clip and image
|
|
28
|
+
scenes, with captions on by default. `duration_seconds` (30 to 90) is a target: the video ends with its narration
|
|
29
|
+
and runs from 25 seconds to 5 seconds past `duration_seconds`, never past 90. `quote_faceless` is free;
|
|
30
|
+
`make_faceless` returns a `run_id`, and `get_run` reports progress. The MCP server now lists fourteen tools.
|
|
31
|
+
|
|
32
|
+
### Server-side
|
|
33
|
+
|
|
34
|
+
- A faceless run is charged for the video it delivers, by its actual length, and never more than its quote: seconds
|
|
35
|
+
past `duration_seconds` are free. A failed
|
|
36
|
+
run is charged nothing, including one we stop ourselves because a step did not meet our checks. A run held for
|
|
37
|
+
review keeps its credit hold until it is resolved.
|
|
38
|
+
- Captions drop surrounding punctuation, keep accents and other diacritics, and show numbers as written (`$3.50`,
|
|
39
|
+
`10:30`, `1,000`, `50%`, `-20`).
|
|
40
|
+
- With captions on, the script is checked against the caption font before speech is generated; a character the font
|
|
41
|
+
cannot draw fails the run without a customer charge.
|
|
42
|
+
- Narration uses automatic language detection.
|
|
43
|
+
- Pictures change about every three seconds, between spoken words.
|
|
44
|
+
|
|
45
|
+
### Changed
|
|
46
|
+
|
|
47
|
+
- *Server-side* Voice catalog: `cs_female_jana` is now listed with use case `advertisement` (was `narrative_story`);
|
|
48
|
+
the notice period is 4015 days for `en_female_cassidy` (was 730) and 730 days for `fi_male_jaakko` (was 365).
|
|
49
|
+
`es_male_benjamin` is unchanged and remains available.
|
|
50
|
+
|
|
51
|
+
### Known limits
|
|
52
|
+
|
|
53
|
+
- The voice reads some abbreviations literally: write "1.5 million" rather than "1.5M".
|
|
54
|
+
- A generated picture can come out as a collage of two or three panels, and small character details (glasses,
|
|
55
|
+
for instance) can change between pictures.
|
|
56
|
+
- Narration is not loudness-normalized yet, so a video can play quieter than other clips in the same feed.
|
|
57
|
+
- *Server-side* A faceless run can fail when the opening clip shows a pattern our text check mistakes for lettering
|
|
58
|
+
(a chain, for instance). The run is charged nothing; running it again produces a new video.
|
|
59
|
+
|
|
60
|
+
## [0.20.0] - 2026-09-25
|
|
61
|
+
|
|
62
|
+
The MCP server is ready for directories: it has a name in the official MCP
|
|
63
|
+
Registry, and every tool tells the host whether it only reads or writes.
|
|
64
|
+
|
|
65
|
+
### Added
|
|
66
|
+
|
|
67
|
+
- Every MCP tool now carries a `title` and the `readOnlyHint`/`destructiveHint`
|
|
68
|
+
annotations: quotes, lists and reads are read-only, `delete_actor` is
|
|
69
|
+
destructive, and `make_ugc`, `create_actor`, `upload_image` and
|
|
70
|
+
`set_actor_defaults` write.
|
|
71
|
+
- `@clipwright/mcp-server` declares `mcpName: io.clipwright/mcp` for the official
|
|
72
|
+
MCP Registry.
|
|
73
|
+
|
|
19
74
|
## [0.19.0] - 2026-09-22
|
|
20
75
|
|
|
21
76
|
A paid video that arrived after we stopped waiting can now be collected: the run
|
package/README.md
CHANGED
|
@@ -25,6 +25,8 @@ above name the package with `-p`, so they resolve here either way.
|
|
|
25
25
|
| `actors` | Lists the actors this account can use: the Clipwright catalog and your own. Free. |
|
|
26
26
|
| `quote-actor` | Estimates the cost of a personal actor. Spends nothing. |
|
|
27
27
|
| `create-actor` | Creates a personal actor from a description. **Costs credits** — one charge per requested format. Prints the run; follow it with `runs <id>`. |
|
|
28
|
+
| `quote-faceless` | Estimates the cost of a faceless video. Spends nothing. |
|
|
29
|
+
| `make-faceless` | Starts a faceless video: narration over an opening animated clip and image scenes. **Costs credits.** Prints the run; follow it with `runs <id>`. |
|
|
28
30
|
| `delete-actor <id>` | Deletes a personal actor of this account. Videos already made with it stay as they are. Free. |
|
|
29
31
|
|
|
30
32
|
`quote` and `make` take the actor's photo as `--image <url>` or `--image-file <path>`
|
|
@@ -47,6 +49,18 @@ Every preset and catalog voice speaks `eleven_v3`. `--tts-model` overrides it wi
|
|
|
47
49
|
`eleven_flash_v2_5` or `eleven_turbo_v2_5`, which cost less but misread Russian stress
|
|
48
50
|
marks. In a Russian script, mark stress with a capital vowel inside the word: `потОм`.
|
|
49
51
|
|
|
52
|
+
`quote-faceless` and `make-faceless` take the narration as `--script <text>`,
|
|
53
|
+
`--script-file <path>` or `--brief <text>` (a short description the narration is
|
|
54
|
+
written from), plus a required `--duration <seconds>` from 30 to 90. The video
|
|
55
|
+
ends with the narration, runs at least 25 seconds and may exceed the selection
|
|
56
|
+
by up to 5 seconds, never beyond 90 seconds. A script must fit this output
|
|
57
|
+
range. The charge follows the delivered duration and never exceeds the quote;
|
|
58
|
+
the minimum remains 200 base credits plus 150 for the opening clip.
|
|
59
|
+
Captions are on; `--no-captions`
|
|
60
|
+
turns them off. `--style-reference <url>` and `--character-reference <url>` take
|
|
61
|
+
public https images. Quote first: both commands take the same flags, so the
|
|
62
|
+
quote prices exactly the request `make-faceless` would send.
|
|
63
|
+
|
|
50
64
|
`make` retries are explicit: `--retry 2` deliberately starts a *new* run for the
|
|
51
65
|
same script. Without it a repeated call returns the run you already paid for,
|
|
52
66
|
because every request carries an idempotency key derived from the input and from
|
package/dist/format.js
CHANGED
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
import { FAILED_STATE, isTerminal } from "@clipwright/core";
|
|
2
|
-
/**
|
|
3
|
-
|
|
4
|
-
* тестировать терминальные/нетерминальные/неизвестные стадии без сети
|
|
5
|
-
* (US-502, заметка Critic №1: выделенный тест CLI-поверхности, а не только
|
|
6
|
-
* транзитивное покрытие через SDK).
|
|
7
|
-
*
|
|
8
|
-
* Терминальность определяется через `isTerminal`/`FAILED_STATE` из core, а
|
|
9
|
-
* не строковыми литералами: неизвестная стадия (расширение enum на сервере,
|
|
10
|
-
* напр. `"publishing"`) просто печатается как есть и НЕ роняет команду.
|
|
11
|
-
*/
|
|
2
|
+
/** Pure formatter for `clipwright runs <id>`. Terminality comes from core, so an */
|
|
3
|
+
/** unknown server stage (e.g. `"publishing"`) prints as is and does not crash. */
|
|
12
4
|
export function formatRun(run) {
|
|
13
5
|
const lines = [];
|
|
14
6
|
if (isTerminal(run.state)) {
|
|
@@ -29,24 +21,8 @@ export function formatRun(run) {
|
|
|
29
21
|
}
|
|
30
22
|
return lines.join("\n");
|
|
31
23
|
}
|
|
32
|
-
/**
|
|
33
|
-
|
|
34
|
-
* же паттерн, что `formatRun`. Каталог курируемый по дизайну (план §5): это
|
|
35
|
-
* не полный список голосов вендора, остальные достижимы сырым `voice_id`.
|
|
36
|
-
*/
|
|
37
|
-
/**
|
|
38
|
-
* Отказ API для ЧЕЛОВЕКА (US-622) — из того же развёртывания, что видит агент.
|
|
39
|
-
*
|
|
40
|
-
* ЧИСЛА БЕРУТСЯ ИЗ `report()`, А НЕ СОБИРАЮТСЯ ЗДЕСЬ ЗАНОВО. Соблазн написать
|
|
41
|
-
* `Balance: ${err.failure.balanceCredits}` велик и стоил бы третьего источника
|
|
42
|
-
* правды о том, что значит отказ: MCP говорил бы агенту одно, CLI человеку —
|
|
43
|
-
* другое, и разошлись бы они молча, при первой же правке формулировки.
|
|
44
|
-
*
|
|
45
|
-
* ЧТО ДОБАВЛЯЕТ CLI СВЕРХ ОТЧЁТА — только оформление: код отказа отдельной
|
|
46
|
-
* строкой (человек ищет его в доках) и `next_action` как совет. Стек-трейс не
|
|
47
|
-
* печатается: у отказа сервера он показывает наши внутренности вместо ответа на
|
|
48
|
-
* вопрос «что делать».
|
|
49
|
-
*/
|
|
24
|
+
/** An API refusal for a human, built from the same `report()` the agent sees so */
|
|
25
|
+
/** CLI and MCP cannot drift. No stack trace: it answers nothing about what to do. */
|
|
50
26
|
export function formatApiError(error) {
|
|
51
27
|
const report = error.report();
|
|
52
28
|
const lines = [`error: ${report.message}`, `code: ${report.code} (HTTP ${error.status})`];
|
|
@@ -54,21 +30,8 @@ export function formatApiError(error) {
|
|
|
54
30
|
lines.push(report.next_action);
|
|
55
31
|
return lines.join("\n");
|
|
56
32
|
}
|
|
57
|
-
/**
|
|
58
|
-
|
|
59
|
-
*
|
|
60
|
-
* Вход отвергается схемой ещё до сети: `--script ""` короче минимума,
|
|
61
|
-
* `--voice-id nosuch` не проходит формат вендорского идентификатора. До этой
|
|
62
|
-
* ветки такой отказ долетал до пользователя необработанным `ZodError` — стеком
|
|
63
|
-
* с путями `core/dist/idempotency.js` и внутренностями регулярок. Человек
|
|
64
|
-
* спрашивал про видео, а получал наши кадры стека.
|
|
65
|
-
*
|
|
66
|
-
* ОПОЗНАЁТСЯ ПО ИМЕНИ, А НЕ ЧЕРЕЗ `instanceof`, и это не небрежность. `zod`
|
|
67
|
-
* приходит сюда транзитивно через два пакета, и при разных копиях модуля в
|
|
68
|
-
* дереве `instanceof` вернул бы `false` — проверка молча перестала бы работать
|
|
69
|
-
* ровно там, где её труднее всего заметить: у потребителя после установки, а не
|
|
70
|
-
* у нас. Имя класса и форма `issues` — часть публичного контракта zod.
|
|
71
|
-
*/
|
|
33
|
+
/** A schema refusal for a human instead of a raw `ZodError` stack. Matched by */
|
|
34
|
+
/** name, not `instanceof`: two zod copies in one install would break `instanceof`. */
|
|
72
35
|
export function formatSchemaError(error) {
|
|
73
36
|
if (!(error instanceof Error) || error.name !== "ZodError")
|
|
74
37
|
return undefined;
|
|
@@ -81,8 +44,9 @@ export function formatSchemaError(error) {
|
|
|
81
44
|
});
|
|
82
45
|
return ["error: the request was rejected before it was sent", ...lines].join("\n");
|
|
83
46
|
}
|
|
84
|
-
//
|
|
47
|
+
// A catalog description can be a paragraph; the list line shows its start.
|
|
85
48
|
const VOICE_DESCRIPTION_WIDTH = 100;
|
|
49
|
+
/** Pure formatter for `clipwright voices`. */
|
|
86
50
|
export function formatVoices(voices) {
|
|
87
51
|
return voices
|
|
88
52
|
.map((v) => {
|
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,EAAgB,MAAM,kBAAkB,CAAC;AAG1E
|
|
1
|
+
{"version":3,"file":"format.js","sourceRoot":"","sources":["../src/format.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { Command, Option } from "commander";
|
|
|
6
6
|
import { ACTOR_GENDERS_ACCEPTED, ACTOR_QUALITIES_ACCEPTED, apiBaseUrlFromEnv, ASPECT_RATIOS, CATALOG_GENDERS, CATALOG_LANGUAGES, PUBLIC_APP_BASE_URL, RESOLUTIONS, TTS_MODELS, UPLOAD_MAX_BYTES, VOICE_NAME_PATTERN, VOICE_PRESET_NAMES, sniffUploadMediaType, } from "@clipwright/core";
|
|
7
7
|
import { ClipwrightApiError, ClipwrightClient, ClipwrightResponseError } from "@clipwright/sdk";
|
|
8
8
|
import { formatApiError, formatRun, formatSchemaError, formatVoices } from "./format.js";
|
|
9
|
-
//
|
|
9
|
+
// Version from the manifest: a literal drifts, and a JSON import breaks `rootDir`.
|
|
10
10
|
const { version } = createRequire(import.meta.url)("../package.json");
|
|
11
11
|
const program = new Command();
|
|
12
12
|
program.name("clipwright").description("UGC video platform CLI").version(version);
|
|
@@ -27,7 +27,7 @@ function client() {
|
|
|
27
27
|
}
|
|
28
28
|
return new ClipwrightClient({ apiKey, baseUrl });
|
|
29
29
|
}
|
|
30
|
-
/**
|
|
30
|
+
/** Reads the file and checks its signature BEFORE the network; extensions are not trusted. */
|
|
31
31
|
async function uploadFile(path) {
|
|
32
32
|
const bytes = new Uint8Array(readFileSync(path));
|
|
33
33
|
const mediaType = sniffUploadMediaType(bytes);
|
|
@@ -46,19 +46,31 @@ async function uploadFile(path) {
|
|
|
46
46
|
async function resolveImage(opts) {
|
|
47
47
|
return opts.imageFile ? uploadFile(opts.imageFile) : opts.image;
|
|
48
48
|
}
|
|
49
|
-
/**
|
|
49
|
+
/** Image and format options shared by `quote` and `make`, so the quote sees the render's source. */
|
|
50
50
|
function withSourceOptions(command) {
|
|
51
51
|
return command
|
|
52
52
|
.addOption(new Option("--actor-id <id>", "saved actor from the actors catalog").conflicts(["image", "imageFile", "person", "actorGender"]))
|
|
53
53
|
.addOption(new Option("--image <url>", "public https url of the actor's photo").conflicts("imageFile"))
|
|
54
54
|
.option("--image-file <path>", "local PNG/JPEG: uploaded first (POST /v1/uploads), then used as --image")
|
|
55
|
-
//
|
|
55
|
+
// Commander cannot express "only with --image"; the schema rejects it before the network.
|
|
56
56
|
.addOption(new Option("--actor-gender <gender>", "gender of the face in --image; picks the default voice of that gender")
|
|
57
57
|
.choices(["female", "male"])
|
|
58
58
|
.conflicts("actorId"))
|
|
59
59
|
.addOption(new Option("--aspect-ratio <ratio>", "output format; pass it explicitly with a picture").choices(ASPECT_RATIOS))
|
|
60
60
|
.addOption(new Option("--resolution <size>", "output resolution").choices(RESOLUTIONS));
|
|
61
61
|
}
|
|
62
|
+
/** --retry is an attempt NUMBER, parsed strictly: the value enters the */
|
|
63
|
+
/** idempotency key, so a lenient parse could buy a second render. */
|
|
64
|
+
function parseRetry(raw) {
|
|
65
|
+
// Same bound as the SDK's `attemptSuffix`: a leading `[1-9]` rejects zero,
|
|
66
|
+
// `isSafeInteger` rejects values too large to stay distinct.
|
|
67
|
+
const parsed = Number.parseInt(raw, 10);
|
|
68
|
+
if (!/^[1-9]\d*$/.test(raw) || !Number.isSafeInteger(parsed)) {
|
|
69
|
+
console.error(`--retry expects a whole number of 1 or more, got ${raw}`);
|
|
70
|
+
process.exit(1);
|
|
71
|
+
}
|
|
72
|
+
return parsed;
|
|
73
|
+
}
|
|
62
74
|
program
|
|
63
75
|
.command("upload <path>")
|
|
64
76
|
.description("upload a local PNG/JPEG and print the https url to pass as --image")
|
|
@@ -84,13 +96,10 @@ withSourceOptions(program
|
|
|
84
96
|
.description("generate a UGC video and wait for the result")
|
|
85
97
|
.requiredOption("--script <text>", "the spoken script"))
|
|
86
98
|
.option("--person <description>", "who says it, in words")
|
|
87
|
-
// `--character
|
|
88
|
-
// (реестр в @clipwright/core), сервер отбивает его четырёхсотым. Флаг,
|
|
89
|
-
// оставшийся в `--help`, предлагал бы пользователю то, за что мы его
|
|
90
|
-
// накажем (блокер B4). Вернётся вместе с персистентными персонажами.
|
|
99
|
+
// No `--character`: the server rejects that field, so offering it would invite a 400.
|
|
91
100
|
.option("--captions", "burn in word-synced captions")
|
|
92
|
-
//
|
|
93
|
-
//
|
|
101
|
+
// Only the name's shape is checked here; the server knows the catalog and
|
|
102
|
+
// answers 400 before reserving credits.
|
|
94
103
|
.option("--voice <name>", `voice name from "clipwright voices" (presets: ${VOICE_PRESET_NAMES.join(", ")})`, (raw) => {
|
|
95
104
|
if (!VOICE_NAME_PATTERN.test(raw)) {
|
|
96
105
|
console.error(`--voice expects a voice name (letters, digits, "_" or "-"), got ${JSON.stringify(raw)}; ` +
|
|
@@ -99,35 +108,11 @@ withSourceOptions(program
|
|
|
99
108
|
}
|
|
100
109
|
return raw;
|
|
101
110
|
})
|
|
102
|
-
//
|
|
103
|
-
//
|
|
104
|
-
// `ZodError`, который CLI не обрабатывает, и человек вместо «эти два флага
|
|
105
|
-
// несовместимы» получил бы стек.
|
|
111
|
+
// Commander catches the conflict, so the user gets "incompatible flags"
|
|
112
|
+
// instead of a schema error.
|
|
106
113
|
.addOption(new Option("--voice-id <id>", "raw vendor voice id, for voices outside the catalog").conflicts("voice"))
|
|
107
114
|
.addOption(new Option("--tts-model <model>", "speech model; omitted = the preset's model").choices(TTS_MODELS))
|
|
108
|
-
|
|
109
|
-
// и второй ретрай вернул бы тот же ран.
|
|
110
|
-
//
|
|
111
|
-
// РАЗБОР СТРОГИЙ, И ЭТО ДЕНЕЖНЫЙ ВОПРОС. Прежний `parseInt` молча возвращал
|
|
112
|
-
// `NaN` на `--retry banana` и `2` на `--retry 2junk`. `NaN` доезжал до
|
|
113
|
-
// суффикса ключа идемпотентности, ключ отличался от обычного, и сервер
|
|
114
|
-
// запускал ВТОРОЙ платный рендер вместо того, чтобы отбить опечатку.
|
|
115
|
-
.option("--retry <n>", "retry attempt number (forces a fresh run)", (raw) => {
|
|
116
|
-
// ПРОВЕРЯЕТСЯ И ФОРМА ЗАПИСИ, И САМО ЧИСЛО — граница здесь ровно та же, что
|
|
117
|
-
// в `attemptSuffix` у SDK, и разъехаться им нельзя: расхождение означает
|
|
118
|
-
// стек вместо отказа.
|
|
119
|
-
// `[1-9]` в начале, а не `\d` — иначе ноль проезжал регулярку и падал уже
|
|
120
|
-
// в SDK (внешнее ревью, круг 6);
|
|
121
|
-
// `isSafeInteger` после разбора — иначе строка из трёхсот девяток давала
|
|
122
|
-
// `Infinity`, а соседние огромные целые сливались в одно и переставали
|
|
123
|
-
// различать попытки (круг 7).
|
|
124
|
-
const parsed = Number.parseInt(raw, 10);
|
|
125
|
-
if (!/^[1-9]\d*$/.test(raw) || !Number.isSafeInteger(parsed)) {
|
|
126
|
-
console.error(`--retry expects a whole number of 1 or more, got ${raw}`);
|
|
127
|
-
process.exit(1);
|
|
128
|
-
}
|
|
129
|
-
return parsed;
|
|
130
|
-
})
|
|
115
|
+
.option("--retry <n>", "retry attempt number (forces a fresh run)", parseRetry)
|
|
131
116
|
.action(async (opts) => {
|
|
132
117
|
const run = await client().makeUgc({
|
|
133
118
|
script: opts.script,
|
|
@@ -142,10 +127,8 @@ withSourceOptions(program
|
|
|
142
127
|
voice_id: opts.voiceId,
|
|
143
128
|
tts_model: opts.ttsModel,
|
|
144
129
|
}, { attempt: opts.retry }, (r) => console.error(`state: ${r.state}`));
|
|
145
|
-
// Warnings
|
|
146
|
-
//
|
|
147
|
-
// URL. Молча их проглатывать нельзя (правило проекта №3): CLI —
|
|
148
|
-
// единственная поверхность, где их больше никто не покажет.
|
|
130
|
+
// Warnings go to stderr, the URL to stdout: visible to the human, kept
|
|
131
|
+
// out of the pipe that reads the URL.
|
|
149
132
|
for (const warning of run.warnings) {
|
|
150
133
|
console.error(`warning: ${warning}`);
|
|
151
134
|
}
|
|
@@ -161,8 +144,7 @@ program
|
|
|
161
144
|
program.command("actors").description("list saved actors and verified formats").action(async () => {
|
|
162
145
|
console.log(JSON.stringify({ actors: await client().listActors() }, null, 2));
|
|
163
146
|
});
|
|
164
|
-
/**
|
|
165
|
-
/** Разойдись они, оценка считала бы цену не того, что потом создаётся. */
|
|
147
|
+
/** Actor options shared by quote and create, so the quote prices what gets created. */
|
|
166
148
|
const withActorOptions = (command) => command
|
|
167
149
|
.requiredOption("--name <text>", "name shown in the actor list")
|
|
168
150
|
.requiredOption("--description <text>", "words describing a fictional adult")
|
|
@@ -189,6 +171,40 @@ withActorOptions(program.command("quote-actor").description("estimate credits fo
|
|
|
189
171
|
withActorOptions(program.command("create-actor").description("create a personal actor from a description (paid)")).action(async (opts) => {
|
|
190
172
|
console.log(JSON.stringify(await client().createActor(actorInput(opts)), null, 2));
|
|
191
173
|
});
|
|
174
|
+
/** Faceless options shared by quote and make, so the quote prices what gets made. */
|
|
175
|
+
const withFacelessOptions = (command) => command
|
|
176
|
+
.addOption(new Option("--script <text>", "narration, read as written").conflicts(["scriptFile", "brief"]))
|
|
177
|
+
.addOption(new Option("--script-file <path>", "read the narration from a file").conflicts("brief"))
|
|
178
|
+
.option("--brief <text>", "what the video is about; the narration is written from it")
|
|
179
|
+
.requiredOption("--duration <seconds>", "target length, 30 to 90 seconds")
|
|
180
|
+
.option("--no-captions", "turn off burned-in captions (on by default)")
|
|
181
|
+
.option("--style-reference <url>", "public https image whose visual style the scenes follow")
|
|
182
|
+
.option("--character-reference <url>", "public https image of a person or figure to keep across scenes");
|
|
183
|
+
function facelessInput(opts) {
|
|
184
|
+
const common = {
|
|
185
|
+
duration_seconds: Number(opts.duration),
|
|
186
|
+
captions: opts.captions,
|
|
187
|
+
...(opts.styleReference === undefined ? {} : { style_reference: opts.styleReference }),
|
|
188
|
+
...(opts.characterReference === undefined ? {} : { character_reference: opts.characterReference }),
|
|
189
|
+
};
|
|
190
|
+
if (opts.brief !== undefined)
|
|
191
|
+
return { ...common, input_mode: "brief", brief: opts.brief };
|
|
192
|
+
const script = opts.scriptFile === undefined ? opts.script : readFileSync(opts.scriptFile, "utf8");
|
|
193
|
+
if (script === undefined) {
|
|
194
|
+
console.error("pass one of --script, --script-file or --brief");
|
|
195
|
+
process.exit(1);
|
|
196
|
+
}
|
|
197
|
+
return { ...common, input_mode: "script", script };
|
|
198
|
+
}
|
|
199
|
+
withFacelessOptions(program.command("quote-faceless").description("estimate credits for a faceless video without spending them")).action(async (opts) => {
|
|
200
|
+
console.log(JSON.stringify(await client().quoteFaceless(facelessInput(opts)), null, 2));
|
|
201
|
+
});
|
|
202
|
+
withFacelessOptions(program.command("make-faceless").description("start a 30-90 second faceless video (paid); prints the run"))
|
|
203
|
+
.option("--retry <n>", "retry attempt number (forces a fresh run)", parseRetry)
|
|
204
|
+
.action(async (opts) => {
|
|
205
|
+
const run = await client().startFaceless(facelessInput(opts), { attempt: opts.retry });
|
|
206
|
+
console.log(JSON.stringify(run, null, 2));
|
|
207
|
+
});
|
|
192
208
|
program
|
|
193
209
|
.command("delete-actor <id>")
|
|
194
210
|
.description("delete a personal actor of this account")
|
|
@@ -220,54 +236,28 @@ program
|
|
|
220
236
|
});
|
|
221
237
|
console.log(formatVoices(voices));
|
|
222
238
|
});
|
|
223
|
-
/**
|
|
224
|
-
|
|
225
|
-
*
|
|
226
|
-
* До этой обработки `clipwright make` на 402 падал необработанным промисом: имя
|
|
227
|
-
* класса, стек до `node:internal`, код выхода 1. Числа отказа в этой куче есть,
|
|
228
|
-
* но найти их человек не обязан — он спрашивал про видео, а не про наши кадры
|
|
229
|
-
* стека. Прочие ошибки (сеть, отсутствующий `CLIPWRIGHT_CLIENT_ID`) намеренно
|
|
230
|
-
* летят как раньше: у них стек и есть полезная часть.
|
|
231
|
-
*/
|
|
232
|
-
/**
|
|
233
|
-
* ПРОГРАММА ЭКСПОРТИРУЕТСЯ, А АВТОЗАПУСК ОХРАНЯЕТСЯ (US-614, круг 13 внешней
|
|
234
|
-
* приёмки).
|
|
235
|
-
*
|
|
236
|
-
* ЗАЧЕМ. Лендинг утверждает, что продукт вызывается из CLI, и приёмка
|
|
237
|
-
* справедливо возразила: опорой стояли имя пакета и реестр команд, то есть
|
|
238
|
-
* ИМЕНА. Мутант «оставить команду, а действие заменить выводом фиктивного
|
|
239
|
-
* идентификатора» их не трогал. Проверить поведение можно только вызвав
|
|
240
|
-
* программу — а вызвать её из теста было нельзя: `parseAsync()` исполнялся НА
|
|
241
|
-
* ИМПОРТЕ, и тест запускал бы саму команду.
|
|
242
|
-
*
|
|
243
|
-
* Охрана сравнивает исполняемый файл процесса с этим модулем: под `node
|
|
244
|
-
* dist/index.js` (и под `bin` пакета) автозапуск происходит как раньше, а
|
|
245
|
-
* `import` из теста его не вызывает. Публичное поведение не меняется —
|
|
246
|
-
* `bin` остаётся тем же файлом.
|
|
247
|
-
*/
|
|
239
|
+
/** Exported so tests can drive the program; autorun happens only when this */
|
|
240
|
+
/** module is the process entry point, so importing it runs nothing. */
|
|
248
241
|
export { program };
|
|
249
242
|
const isDirectRun = () => {
|
|
250
243
|
const entry = process.argv[1];
|
|
251
244
|
if (entry === undefined)
|
|
252
245
|
return false;
|
|
253
|
-
//
|
|
254
|
-
//
|
|
255
|
-
// под установленным `bin` это ломалось: npm кладёт СИМВОЛЬНУЮ ССЫЛКУ, Node
|
|
256
|
-
// разрешает главный модуль до настоящего файла (см. `--preserve-symlinks-main`),
|
|
257
|
-
// и пути расходились — то есть `clipwright make` молча не делал ничего. Тест это
|
|
258
|
-
// не поймал, потому что звал `program.parseAsync()` в обход охраны; теперь есть
|
|
259
|
-
// кейс, запускающий CLI ЧЕРЕЗ ССЫЛКУ.
|
|
246
|
+
// Real paths, not URL strings: npm installs `bin` as a symlink, and Node
|
|
247
|
+
// resolves the main module to the real file.
|
|
260
248
|
try {
|
|
261
249
|
return realpathSync(fileURLToPath(import.meta.url)) === realpathSync(entry);
|
|
262
250
|
}
|
|
263
251
|
catch {
|
|
264
|
-
//
|
|
265
|
-
// CLI
|
|
252
|
+
// Unresolvable path (file removed mid-run): assume a direct run, since a
|
|
253
|
+
// silent CLI is worse than an extra run.
|
|
266
254
|
return true;
|
|
267
255
|
}
|
|
268
256
|
};
|
|
269
257
|
if (isDirectRun())
|
|
270
258
|
run();
|
|
259
|
+
/** API refusals print as an answer, not a stack; network and other errors */
|
|
260
|
+
/** still throw, since their stack is the useful part. */
|
|
271
261
|
function run() {
|
|
272
262
|
program.parseAsync().catch((error) => {
|
|
273
263
|
if (error instanceof ClipwrightApiError) {
|
|
@@ -275,15 +265,14 @@ function run() {
|
|
|
275
265
|
process.exitCode = 1;
|
|
276
266
|
return;
|
|
277
267
|
}
|
|
278
|
-
//
|
|
279
|
-
//
|
|
280
|
-
// Собственное сообщение класса это и говорит; стек тут ничего не добавит.
|
|
268
|
+
// A broken server response is NOT an input error: after `POST /run` the run
|
|
269
|
+
// may be charged, and the class's own message says so.
|
|
281
270
|
if (error instanceof ClipwrightResponseError) {
|
|
282
271
|
console.error(`error: ${error.message}`);
|
|
283
272
|
process.exitCode = 1;
|
|
284
273
|
return;
|
|
285
274
|
}
|
|
286
|
-
//
|
|
275
|
+
// A schema refusal is an answer to the user too, not our bug.
|
|
287
276
|
const schema = formatSchemaError(error);
|
|
288
277
|
if (schema !== undefined) {
|
|
289
278
|
console.error(schema);
|
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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@clipwright/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.21.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.21.0",
|
|
32
|
+
"@clipwright/sdk": "0.21.0"
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
35
|
"@types/node": "^26.1.1"
|