@synthetic-ai/premiere-mcp 2.1.0 → 2.3.0-dev.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.
Files changed (58) hide show
  1. package/CHANGELOG.md +135 -123
  2. package/LICENSE +21 -21
  3. package/README.md +242 -242
  4. package/cep-plugin/.debug +8 -8
  5. package/cep-plugin/CSInterface.js +92 -92
  6. package/cep-plugin/host.jsx +7 -7
  7. package/cep-plugin/index.html +472 -472
  8. package/cep-plugin/main.js +6 -0
  9. package/cep-plugin/premiere.jsx +24947 -24947
  10. package/dist/bridge/script-builder.js +378 -378
  11. package/dist/index.js +103 -4
  12. package/dist/license.js +38 -0
  13. package/dist/server.js +60 -60
  14. package/dist/tools/advanced.js +357 -357
  15. package/dist/tools/audio-advanced.js +1049 -1049
  16. package/dist/tools/audio.js +42 -42
  17. package/dist/tools/captions.js +27 -27
  18. package/dist/tools/clipboard.js +214 -214
  19. package/dist/tools/color-advanced.js +253 -253
  20. package/dist/tools/discovery.js +291 -291
  21. package/dist/tools/effects.js +285 -285
  22. package/dist/tools/export-presets.js +206 -206
  23. package/dist/tools/export.js +255 -255
  24. package/dist/tools/health.js +10 -10
  25. package/dist/tools/inspection.js +885 -885
  26. package/dist/tools/keyframes.js +369 -369
  27. package/dist/tools/markers.js +89 -89
  28. package/dist/tools/media.js +178 -178
  29. package/dist/tools/metadata.js +94 -94
  30. package/dist/tools/multicam.js +50 -50
  31. package/dist/tools/playback.js +15 -15
  32. package/dist/tools/playhead.js +95 -95
  33. package/dist/tools/project-manager.js +21 -21
  34. package/dist/tools/project.js +149 -149
  35. package/dist/tools/scripting.js +319 -319
  36. package/dist/tools/selection.js +202 -202
  37. package/dist/tools/sequence-advanced.js +379 -379
  38. package/dist/tools/sequence-settings.js +564 -564
  39. package/dist/tools/sequence.js +167 -167
  40. package/dist/tools/source-monitor.js +68 -68
  41. package/dist/tools/text.js +58 -58
  42. package/dist/tools/timeline.js +312 -312
  43. package/dist/tools/track-management.js +446 -446
  44. package/dist/tools/track-targeting.js +635 -635
  45. package/dist/tools/tracks.js +87 -87
  46. package/dist/tools/transitions-motion.js +174 -174
  47. package/dist/tools/transitions.js +111 -111
  48. package/dist/tools/utility.js +606 -606
  49. package/dist/tools/workspace.js +29 -29
  50. package/package.json +66 -66
  51. package/scripts/build-chat-dmg.sh +210 -210
  52. package/scripts/build-chat-zip.sh +291 -291
  53. package/scripts/install-cep-windows.ps1 +99 -99
  54. package/scripts/install-cep.sh +66 -66
  55. package/scripts/install-chat-plugin.bat +67 -67
  56. package/scripts/install-chat-plugin.sh +85 -85
  57. package/scripts/install-windows.bat +95 -95
  58. package/scripts/package.mjs +254 -254
@@ -36,28 +36,28 @@ export function getMarkerTools(bridgeOptions) {
36
36
  },
37
37
  handler: async (args) => {
38
38
  const markerTarget = args.node_id
39
- ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
40
- if (!clipResult) return __error("Clip not found");
39
+ ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
40
+ if (!clipResult) return __error("Clip not found");
41
41
  var markers = clipResult.clip.markers;`
42
- : `var seq = app.project.activeSequence;
43
- if (!seq) return __error("No active sequence");
42
+ : `var seq = app.project.activeSequence;
43
+ if (!seq) return __error("No active sequence");
44
44
  var markers = seq.markers;`;
45
- const script = buildToolScript(`
46
- ${markerTarget}
47
-
48
- var marker = markers.createMarker(${args.time_seconds});
49
-
50
- ${args.name ? `marker.name = "${escapeForExtendScript(args.name)}";` : ""}
51
- ${args.comments ? `marker.comments = "${escapeForExtendScript(args.comments)}";` : ""}
52
- ${args.color !== undefined ? `marker.setColorByIndex(${args.color});` : ""}
53
- ${args.duration_seconds ? `marker.end.ticks = __secondsToTicks(${args.time_seconds + args.duration_seconds}).toString();` : ""}
54
-
55
- return __result({
56
- added: true,
57
- timeSeconds: ${args.time_seconds},
58
- name: marker.name,
59
- comments: marker.comments
60
- });
45
+ const script = buildToolScript(`
46
+ ${markerTarget}
47
+
48
+ var marker = markers.createMarker(${args.time_seconds});
49
+
50
+ ${args.name ? `marker.name = "${escapeForExtendScript(args.name)}";` : ""}
51
+ ${args.comments ? `marker.comments = "${escapeForExtendScript(args.comments)}";` : ""}
52
+ ${args.color !== undefined ? `marker.setColorByIndex(${args.color});` : ""}
53
+ ${args.duration_seconds ? `marker.end.ticks = __secondsToTicks(${args.time_seconds + args.duration_seconds}).toString();` : ""}
54
+
55
+ return __result({
56
+ added: true,
57
+ timeSeconds: ${args.time_seconds},
58
+ name: marker.name,
59
+ comments: marker.comments
60
+ });
61
61
  `);
62
62
  return sendCommand(script, bridgeOptions);
63
63
  },
@@ -80,31 +80,31 @@ export function getMarkerTools(bridgeOptions) {
80
80
  },
81
81
  handler: async (args) => {
82
82
  const markerTarget = args.node_id
83
- ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
84
- if (!clipResult) return __error("Clip not found");
83
+ ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
84
+ if (!clipResult) return __error("Clip not found");
85
85
  var markers = clipResult.clip.markers;`
86
- : `var seq = app.project.activeSequence;
87
- if (!seq) return __error("No active sequence");
86
+ : `var seq = app.project.activeSequence;
87
+ if (!seq) return __error("No active sequence");
88
88
  var markers = seq.markers;`;
89
- const script = buildToolScript(`
90
- ${markerTarget}
91
-
92
- var targetTicks = __secondsToTicks(${args.time_seconds});
93
- var marker = markers.getFirstMarker();
94
- var deleted = false;
95
-
96
- while (marker) {
97
- var markerTicks = parseFloat(marker.start.ticks);
98
- if (Math.abs(markerTicks - targetTicks) < TICKS_PER_SECOND * 0.01) {
99
- markers.deleteMarker(marker);
100
- deleted = true;
101
- break;
102
- }
103
- marker = markers.getNextMarker(marker);
104
- }
105
-
106
- if (!deleted) return __error("No marker found at " + ${args.time_seconds} + "s");
107
- return __result({ deleted: true, timeSeconds: ${args.time_seconds} });
89
+ const script = buildToolScript(`
90
+ ${markerTarget}
91
+
92
+ var targetTicks = __secondsToTicks(${args.time_seconds});
93
+ var marker = markers.getFirstMarker();
94
+ var deleted = false;
95
+
96
+ while (marker) {
97
+ var markerTicks = parseFloat(marker.start.ticks);
98
+ if (Math.abs(markerTicks - targetTicks) < TICKS_PER_SECOND * 0.01) {
99
+ markers.deleteMarker(marker);
100
+ deleted = true;
101
+ break;
102
+ }
103
+ marker = markers.getNextMarker(marker);
104
+ }
105
+
106
+ if (!deleted) return __error("No marker found at " + ${args.time_seconds} + "s");
107
+ return __result({ deleted: true, timeSeconds: ${args.time_seconds} });
108
108
  `);
109
109
  return sendCommand(script, bridgeOptions);
110
110
  },
@@ -130,33 +130,33 @@ export function getMarkerTools(bridgeOptions) {
130
130
  },
131
131
  handler: async (args) => {
132
132
  const markerTarget = args.node_id
133
- ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
134
- if (!clipResult) return __error("Clip not found");
133
+ ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
134
+ if (!clipResult) return __error("Clip not found");
135
135
  var markers = clipResult.clip.getMarkers();`
136
- : `var seq = app.project.activeSequence;
137
- if (!seq) return __error("No active sequence");
136
+ : `var seq = app.project.activeSequence;
137
+ if (!seq) return __error("No active sequence");
138
138
  var markers = seq.markers;`;
139
- const script = buildToolScript(`
140
- ${markerTarget}
141
-
142
- var targetTicks = __secondsToTicks(${args.time_seconds});
143
- var marker = markers.getFirstMarker();
144
- var found = false;
145
-
146
- while (marker) {
147
- var markerTicks = parseFloat(marker.start.ticks);
148
- if (Math.abs(markerTicks - targetTicks) < TICKS_PER_SECOND * 0.01) {
149
- ${args.name ? `marker.name = "${escapeForExtendScript(args.name)}";` : ""}
150
- ${args.comments ? `marker.comments = "${escapeForExtendScript(args.comments)}";` : ""}
151
- ${args.color !== undefined ? `marker.setColorByIndex(${args.color});` : ""}
152
- found = true;
153
- break;
154
- }
155
- marker = markers.getNextMarker(marker);
156
- }
157
-
158
- if (!found) return __error("No marker found at " + ${args.time_seconds} + "s");
159
- return __result({ updated: true, timeSeconds: ${args.time_seconds} });
139
+ const script = buildToolScript(`
140
+ ${markerTarget}
141
+
142
+ var targetTicks = __secondsToTicks(${args.time_seconds});
143
+ var marker = markers.getFirstMarker();
144
+ var found = false;
145
+
146
+ while (marker) {
147
+ var markerTicks = parseFloat(marker.start.ticks);
148
+ if (Math.abs(markerTicks - targetTicks) < TICKS_PER_SECOND * 0.01) {
149
+ ${args.name ? `marker.name = "${escapeForExtendScript(args.name)}";` : ""}
150
+ ${args.comments ? `marker.comments = "${escapeForExtendScript(args.comments)}";` : ""}
151
+ ${args.color !== undefined ? `marker.setColorByIndex(${args.color});` : ""}
152
+ found = true;
153
+ break;
154
+ }
155
+ marker = markers.getNextMarker(marker);
156
+ }
157
+
158
+ if (!found) return __error("No marker found at " + ${args.time_seconds} + "s");
159
+ return __result({ updated: true, timeSeconds: ${args.time_seconds} });
160
160
  `);
161
161
  return sendCommand(script, bridgeOptions);
162
162
  },
@@ -174,29 +174,29 @@ export function getMarkerTools(bridgeOptions) {
174
174
  },
175
175
  handler: async (args) => {
176
176
  const markerTarget = args.node_id
177
- ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
178
- if (!clipResult) return __error("Clip not found");
177
+ ? `var clipResult = __findClip("${escapeForExtendScript(args.node_id)}");
178
+ if (!clipResult) return __error("Clip not found");
179
179
  var markers = clipResult.clip.markers;`
180
- : `var seq = app.project.activeSequence;
181
- if (!seq) return __error("No active sequence");
180
+ : `var seq = app.project.activeSequence;
181
+ if (!seq) return __error("No active sequence");
182
182
  var markers = seq.markers;`;
183
- const script = buildToolScript(`
184
- ${markerTarget}
185
-
186
- var list = [];
187
- var marker = markers.getFirstMarker();
188
- while (marker) {
189
- list.push({
190
- name: marker.name,
191
- comments: marker.comments,
192
- startSeconds: __ticksToSeconds(marker.start.ticks),
193
- endSeconds: __ticksToSeconds(marker.end.ticks),
194
- type: marker.type
195
- });
196
- marker = markers.getNextMarker(marker);
197
- }
198
-
199
- return __result(list);
183
+ const script = buildToolScript(`
184
+ ${markerTarget}
185
+
186
+ var list = [];
187
+ var marker = markers.getFirstMarker();
188
+ while (marker) {
189
+ list.push({
190
+ name: marker.name,
191
+ comments: marker.comments,
192
+ startSeconds: __ticksToSeconds(marker.start.ticks),
193
+ endSeconds: __ticksToSeconds(marker.end.ticks),
194
+ type: marker.type
195
+ });
196
+ marker = markers.getNextMarker(marker);
197
+ }
198
+
199
+ return __result(list);
200
200
  `);
201
201
  return sendCommand(script, bridgeOptions);
202
202
  },