keryx reel duplicate¶
Copy a reel workspace's authoring inputs to a new slug, starting the copy as a draft.
Usage¶
Both arguments are positional and required; omitting either gives
missing argument (usage: keryx reel duplicate <src> <dst>).
What gets copied, and what does not¶
| Copied | Skipped |
|---|---|
workspace.yaml (with the new slug) |
vo/takes/ |
storyboard.json, source.md, direction.md |
cards/takes/ |
selected vo/NN.mp3, cards/NN.*, music.mp3, cover.png |
music/takes/ |
the locked block |
.cache/ |
| the rendered mp4, under its old name | a pre-0060 social.json, if one is still there |
The posting record is not the reel's to copy. Since spec 0060 it belongs to the
article, in the bundle's social.json; the copy
is a reel the article has no copy for yet, so it starts as a draft and inherits no
approvals or posting results.
The candidate takes and the generation cache are skipped because they are regenerable, so a duplicate is small.
The lock state comes with it¶
Assets marked reviewed with reel lock stay locked in the copy,
because the asset they approve was copied too. Unlock anything you intend to re-roll.
When it refuses¶
| Situation | Error |
|---|---|
| The destination slug is not lowercase kebab-case | invalid slug (want lowercase kebab-case) |
| The source does not exist | workspace not found |
| The destination already exists | workspace already exists |
See also¶
reel rename— a move rather than a copy.