@writepanda/cli 1.224.0 → 1.225.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/README.md CHANGED
@@ -54,6 +54,13 @@ pandastudio caption.set-template --templateId=bold
54
54
  pandastudio export.start --id=$ID
55
55
  ```
56
56
 
57
+ Review items: the user can pin notes, drawings and picked graphics on the editor preview and send them to the agent. Read and close them with:
58
+
59
+ ```bash
60
+ pandastudio review.list --json # open project; each item has imagePath (frame crop)
61
+ pandastudio review.resolve --id=$ID --annotationIds='["ITEM_ID"]'
62
+ ```
63
+
57
64
  Same Tier-3 PixiJS render pipeline the in-app Export Video button uses (v1.24+ — convergence release). Reuses an open editor window if it's already on the target project, otherwise spawns a hidden one for the duration of the render. Identical output to a UI-driven export.
58
65
 
59
66
  ## For AI agents (Claude Code, Claude Desktop)
@@ -111,3 +118,9 @@ English, Parakeet's European set and the Whisper languages. Provider is
111
118
  `local|apple|deepgram|elevenlabs`. Never use cloud or apple with `auto`; choose a language first.
112
119
  Cloud needs a connected key and user consent to upload audio. Surface job `warnings`
113
120
  when a network/provider failure caused a local fallback.
121
+
122
+ ### Close a timeline gap
123
+
124
+ `pandastudio project.close-gap --id=PROJECT --startMs=2500 --endMs=4000 --lane=media:0 --json`
125
+
126
+ The timeline's right-click "Close gap". Times are edited milliseconds. Omit `lane` (or use `main`) to ripple-delete the range from the video; inserted pauses inside it are shortened or removed rather than cutting footage, and anchored regions follow. Use `media[:index]`, `audio[:index]` or `effects[:index]` to close an empty span of that sub-lane: every later item in the lane shifts left. Sub-lanes are zero based and packed by start time, matching the editor; speed changes never move. A range that is not empty fails and changes nothing. `expectedRevision` is supported. MCP: `project_close_gap`.
@@ -40,7 +40,7 @@ for (const stream of [process.stdout, process.stderr]) {
40
40
  });
41
41
  }
42
42
 
43
- const VERSION = "1.224.0";
43
+ const VERSION = "1.225.0";
44
44
 
45
45
  function configDir() {
46
46
  // PANDASTUDIO_CONFIG_DIR mirrors the override the main process
@@ -73,6 +73,13 @@ USAGE
73
73
  pandastudio brand.add-asset --path=/absolute/logo.png --role=logo
74
74
  pandastudio project.add-brand-asset --id=<project> --assetId=<asset> --atMs=0
75
75
  pandastudio brand.remove-asset --id=<asset>
76
+ pandastudio motion.variables --source=@generatedFrom.json Typed variables of a graphic
77
+ pandastudio motion.generate --templateId=creator-card --variables='{"headline":"Client A"}'
78
+ pandastudio project.update-motion-graphic --id=ID --overlayId=OVERLAY --variables='{"headline":"New"}'
79
+ pandastudio project.update-motion-graphic --id=ID --overlayId=OVERLAY --preset="Client A lower third"
80
+ pandastudio motion.save-preset --source=@generatedFrom.json --name="Client A lower third" --variables=@values.json
81
+ pandastudio motion.list-presets --templateId=creator-card
82
+ pandastudio motion.delete-preset --templateId=creator-card --name="Client A lower third"
76
83
  pandastudio commands List every available verb.noun
77
84
 
78
85
  OPTIONS
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@writepanda/cli",
3
- "version": "1.224.0",
3
+ "version": "1.225.0",
4
4
  "description": "Drive PandaStudio (a desktop video editor for YouTube creators) from the command line. Talks to a localhost HTTP API the desktop app exposes.",
5
5
  "keywords": [
6
6
  "pandastudio",