premiere-cli 0.2.0__tar.gz → 0.3.0__tar.gz
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.
- {premiere_cli-0.2.0/src/premiere_cli.egg-info → premiere_cli-0.3.0}/PKG-INFO +13 -8
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/README.md +12 -7
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/pyproject.toml +2 -1
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/__init__.py +1 -1
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/cli.py +18 -0
- premiere_cli-0.3.0/src/premiere_cli/init_project.py +73 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/.debug +1 -1
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/CSXS/manifest.xml +3 -3
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/js/main.js +1 -1
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel_install.py +1 -1
- premiere_cli-0.3.0/src/premiere_cli/templates/empty-project/Adobe Premiere Pro Auto-Save/Untitled--8627e8e5-eccf-e7ea-8c87-b4de7f17596a-2026-07-10_12-30-47.prproj +0 -0
- premiere_cli-0.3.0/src/premiere_cli/templates/empty-project/Untitled.prproj +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0/src/premiere_cli.egg-info}/PKG-INFO +13 -8
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli.egg-info/SOURCES.txt +3 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/LICENSE +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/setup.cfg +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/log.py +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/css/style.css +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-adjustment-layer.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-audio-keyframes.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-custom-metadata-field.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-keyframe.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-marker-to-project-item.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-marker.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-text-overlay.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-to-render-queue.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-to-timeline.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-transition.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/adjust-audio-levels.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/apply-audio-effect.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/apply-effect.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/apply-lut.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/attach-custom-property.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/auto-reframe-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/batch-add-transitions.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/batch-apply-effect.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/batch-rename-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/batch-set-clips-enabled.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/clear-item-in-out.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/clear-sequence-in-out.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/close-all-source-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/close-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/close-source-monitor.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/color-correct.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/copy-effect-values.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/copy-effects-between-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-bars-and-tone.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-bin.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-caption-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-sequence-from-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-sequence-from-preset.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-smart-bin.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-subclip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-subsequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/debug-qe-inspect.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/debug-qe-try-mutate.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/delete-marker.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/deselect-all-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/detach-proxy.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/duplicate-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/duplicate-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/encode-file.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/encode-project-item.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-aaf.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-fcp-xml.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-frame.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-omf.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-sequence-as-project.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/extract-audio-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/extract-selection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/find-items-by-media-path.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/freeze-frame.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-active-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-all-project-paths.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-bin-contents.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-adjustment-layer.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-at-playhead.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-at-position.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-links.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-markers.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-speed.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-color-label.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-color-space.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-duplicate-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-effect-properties.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-encoder-presets.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-export-file-extension.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-footage-interpretation.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-full-clip-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-full-project-overview.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-full-sequence-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-graphics-white-luminance.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-insertion-bin.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-item-metadata.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-keyframes.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-mogrt-component.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-next-edit-point.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-offline-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-open-projects.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-premiere-state.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-project-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-project-item-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-project-panel-metadata.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-qe-clip-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-render-queue-status.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-sequence-count.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-sequence-in-out.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-sequence-markers-by-type.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-source-monitor-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-source-monitor-position.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-target-tracks.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-timeline-gaps.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-timeline-summary.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-total-clip-count.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-track-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-unused-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-used-media-report.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-value-at-time.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-version-info.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-work-area.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-workspaces.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-xmp-metadata.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-ae-comps.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-fcp-xml.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-folder.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-image-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-mogrt-from-library.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-mogrt.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/import-sequences-from-project.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/insert-from-source.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/inspect-dom-object.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/invert-selection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/is-work-area-enabled.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/lift-selection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/link-selection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/list-available-audio-effects.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/list-available-audio-transitions.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/list-available-effects.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/list-available-transitions.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/list-markers.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/list-project-items.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/lock-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/manage-proxies.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/match-frame.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/move-clip-to-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/move-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/move-items-to-bin.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/move-playhead-to-edit.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/move-playhead.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/nest-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/open-in-source.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/open-project.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/overwrite-clip-at.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/overwrite-from-source.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/play-source-monitor.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/play-timeline.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/razor-all-tracks.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/redo.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/refresh-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/relink-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-all-effects.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-effect-by-name.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-effect.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-from-timeline.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-keyframe-range.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-keyframe.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-selected-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-track-intervals.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/remove-transition.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/rename-bin.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/rename-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/rename-project-item.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/rename-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/replace-clip-media.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/replace-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/reverse-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/ripple-delete-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/roll-edit.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/save-project-as.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/save-project.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/scene-edit-detection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/search-project-items.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/select-all-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/select-clips-by-color.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/select-clips-by-name.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/select-clips-in-range.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/select-disabled-clips.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/select-project-item.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-active-project.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-active-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-all-tracks-targeted.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-anti-alias-quality.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-blend-mode.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-anchor-point.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-enabled.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-opacity.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-pan.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-position.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-properties.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-rotation.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-scale.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-selection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-speed.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-clip-volume.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-color-label.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-color-value.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-effect-property.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-footage-interpretation.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-frame-blend.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-graphics-white-luminance.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-item-in-out.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-item-metadata.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-item-offline.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-item-start-time.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-keyframe-interpolation.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-override-frame-rate.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-override-pixel-aspect-ratio.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-poster-frame.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-project-panel-metadata.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-scale-to-frame-size.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-scale-width-height.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-sequence-in-out.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-sequence-settings.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-source-in-out.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-target-track.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-time-interpolation.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-track-mute.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-track-visibility.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-transcode-on-ingest.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-uniform-scale.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-work-area.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-workspace.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/set-xmp-metadata.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/slide-edit.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/slip-edit.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/split-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/stabilize-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/stop-playback.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/trim-clip.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/undo.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/unlink-selection.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/unnest-sequence.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/update-marker.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/index.jsx +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/presets/default-4k-25fps.sqpreset +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/index.html +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/js/cs-interface.js +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli.egg-info/dependency_links.txt +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli.egg-info/entry_points.txt +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli.egg-info/requires.txt +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli.egg-info/top_level.txt +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/tests/test_cli.py +0 -0
- {premiere_cli-0.2.0 → premiere_cli-0.3.0}/tests/test_log.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: premiere-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: Drive Adobe Premiere Pro from the command line: a Python CLI plus a bundled CEP bridge panel exposing Premiere's scripting APIs over local HTTP
|
|
5
5
|
License: CC-BY-SA-4.0
|
|
6
6
|
Project-URL: Repository, https://github.com/stefanwebb/premiere-cli
|
|
@@ -22,16 +22,17 @@ ExtendScript / QE scripting APIs as ~230 JSON-in/JSON-out commands —
|
|
|
22
22
|
reading project/sequence/clip state, editing the timeline, applying
|
|
23
23
|
effects, managing markers and bins, exporting media and frames, and more.
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
The Claude Code skill for driving this CLI lives in the separate
|
|
26
|
+
[premiere-ai-skills](https://github.com/stefanwebb/premiere-ai-skills)
|
|
27
|
+
plugin, alongside the AI-assisted workflow skills — install that plugin
|
|
28
|
+
to give Claude the skill.
|
|
28
29
|
|
|
29
30
|
## Install
|
|
30
31
|
|
|
31
32
|
```bash
|
|
32
33
|
# 1. The CLI (isolated, no dependencies)
|
|
33
|
-
pipx install
|
|
34
|
-
# or: uv tool install
|
|
34
|
+
pipx install premiere-cli
|
|
35
|
+
# or: uv tool install premiere-cli
|
|
35
36
|
|
|
36
37
|
# 2. The CEP panel (copies it into Adobe's extensions dir + enables PlayerDebugMode)
|
|
37
38
|
premiere-cli install-panel
|
|
@@ -42,6 +43,10 @@ premiere-cli install-panel
|
|
|
42
43
|
premiere-cli doctor
|
|
43
44
|
```
|
|
44
45
|
|
|
46
|
+
`premiere-cli init-project <name> --base-dir <path>` scaffolds a fresh,
|
|
47
|
+
empty `.prproj` from a bundled template — no Premiere Pro session needed,
|
|
48
|
+
so it works before step 3.
|
|
49
|
+
|
|
45
50
|
Supported: macOS and Windows (CEP does not exist on Linux). The panel
|
|
46
51
|
targets Premiere Pro 2020+ (CEP 10-12); the API behavior notes in
|
|
47
52
|
[docs/BUILD_FINDINGS.md](docs/BUILD_FINDINGS.md) were live-calibrated on
|
|
@@ -65,8 +70,8 @@ Every command prints a JSON object: `{"ok": true, "result": ...}` or
|
|
|
65
70
|
## Use from Claude Code
|
|
66
71
|
|
|
67
72
|
```
|
|
68
|
-
/plugin marketplace add stefanwebb/premiere-
|
|
69
|
-
/plugin install premiere-
|
|
73
|
+
/plugin marketplace add stefanwebb/premiere-ai-skills
|
|
74
|
+
/plugin install premiere-ai-skills@premiere-ai-skills
|
|
70
75
|
```
|
|
71
76
|
|
|
72
77
|
This gives Claude the `premiere-cli` skill — a complete, behavior-annotated
|
|
@@ -9,16 +9,17 @@ ExtendScript / QE scripting APIs as ~230 JSON-in/JSON-out commands —
|
|
|
9
9
|
reading project/sequence/clip state, editing the timeline, applying
|
|
10
10
|
effects, managing markers and bins, exporting media and frames, and more.
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
The Claude Code skill for driving this CLI lives in the separate
|
|
13
|
+
[premiere-ai-skills](https://github.com/stefanwebb/premiere-ai-skills)
|
|
14
|
+
plugin, alongside the AI-assisted workflow skills — install that plugin
|
|
15
|
+
to give Claude the skill.
|
|
15
16
|
|
|
16
17
|
## Install
|
|
17
18
|
|
|
18
19
|
```bash
|
|
19
20
|
# 1. The CLI (isolated, no dependencies)
|
|
20
|
-
pipx install
|
|
21
|
-
# or: uv tool install
|
|
21
|
+
pipx install premiere-cli
|
|
22
|
+
# or: uv tool install premiere-cli
|
|
22
23
|
|
|
23
24
|
# 2. The CEP panel (copies it into Adobe's extensions dir + enables PlayerDebugMode)
|
|
24
25
|
premiere-cli install-panel
|
|
@@ -29,6 +30,10 @@ premiere-cli install-panel
|
|
|
29
30
|
premiere-cli doctor
|
|
30
31
|
```
|
|
31
32
|
|
|
33
|
+
`premiere-cli init-project <name> --base-dir <path>` scaffolds a fresh,
|
|
34
|
+
empty `.prproj` from a bundled template — no Premiere Pro session needed,
|
|
35
|
+
so it works before step 3.
|
|
36
|
+
|
|
32
37
|
Supported: macOS and Windows (CEP does not exist on Linux). The panel
|
|
33
38
|
targets Premiere Pro 2020+ (CEP 10-12); the API behavior notes in
|
|
34
39
|
[docs/BUILD_FINDINGS.md](docs/BUILD_FINDINGS.md) were live-calibrated on
|
|
@@ -52,8 +57,8 @@ Every command prints a JSON object: `{"ok": true, "result": ...}` or
|
|
|
52
57
|
## Use from Claude Code
|
|
53
58
|
|
|
54
59
|
```
|
|
55
|
-
/plugin marketplace add stefanwebb/premiere-
|
|
56
|
-
/plugin install premiere-
|
|
60
|
+
/plugin marketplace add stefanwebb/premiere-ai-skills
|
|
61
|
+
/plugin install premiere-ai-skills@premiere-ai-skills
|
|
57
62
|
```
|
|
58
63
|
|
|
59
64
|
This gives Claude the `premiere-cli` skill — a complete, behavior-annotated
|
|
@@ -6,7 +6,7 @@ build-backend = "setuptools.build_meta"
|
|
|
6
6
|
name = "premiere-cli"
|
|
7
7
|
# Keep in lockstep with premiere_cli.__version__ and PANEL_VERSION in
|
|
8
8
|
# src/premiere_cli/panel/js/main.js.
|
|
9
|
-
version = "0.
|
|
9
|
+
version = "0.3.0"
|
|
10
10
|
description = "Drive Adobe Premiere Pro from the command line: a Python CLI plus a bundled CEP bridge panel exposing Premiere's scripting APIs over local HTTP"
|
|
11
11
|
readme = "README.md"
|
|
12
12
|
license = {text = "CC-BY-SA-4.0"}
|
|
@@ -34,4 +34,5 @@ where = ["src"]
|
|
|
34
34
|
premiere_cli = [
|
|
35
35
|
"panel/**/*",
|
|
36
36
|
"panel/.debug",
|
|
37
|
+
"templates/**/*",
|
|
37
38
|
]
|
|
@@ -104,6 +104,20 @@ def main() -> None:
|
|
|
104
104
|
help="Diagnose the CLI -> panel -> Premiere chain: panel installed, panel reachable, versions matching, Premiere responding",
|
|
105
105
|
)
|
|
106
106
|
|
|
107
|
+
init_project_parser = subparsers.add_parser(
|
|
108
|
+
"init-project",
|
|
109
|
+
help="Create a fresh, empty Premiere Pro project from the bundled empty-project template",
|
|
110
|
+
)
|
|
111
|
+
init_project_parser.add_argument("project_name", help="Name of the new project, e.g. project0002")
|
|
112
|
+
init_project_parser.add_argument(
|
|
113
|
+
"--series", default=None,
|
|
114
|
+
help="Optional series name; the project is nested under <base-dir>/<series>/<project_name>",
|
|
115
|
+
)
|
|
116
|
+
init_project_parser.add_argument(
|
|
117
|
+
"--base-dir", required=True,
|
|
118
|
+
help="Directory the project (or series) is created under",
|
|
119
|
+
)
|
|
120
|
+
|
|
107
121
|
create_sequence_parser = subparsers.add_parser("create-sequence", help="Create a new sequence")
|
|
108
122
|
create_sequence_parser.add_argument("--name", required=True, help="Name of the new sequence")
|
|
109
123
|
create_sequence_parser.add_argument(
|
|
@@ -2155,6 +2169,10 @@ def main() -> None:
|
|
|
2155
2169
|
from premiere_cli import panel_install
|
|
2156
2170
|
|
|
2157
2171
|
sys.exit(panel_install.doctor(port=args.port))
|
|
2172
|
+
if args.subcommand == "init-project":
|
|
2173
|
+
from premiere_cli import init_project
|
|
2174
|
+
|
|
2175
|
+
sys.exit(init_project.init_project(args.project_name, args.series, args.base_dir))
|
|
2158
2176
|
|
|
2159
2177
|
if args.subcommand == "create-sequence":
|
|
2160
2178
|
command_args = {"name": args.name, "bin": args.bin, "fps": args.fps, "width": args.width, "height": args.height}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"""Create a fresh, empty Premiere Pro project from the bundled empty-project
|
|
2
|
+
template.
|
|
3
|
+
|
|
4
|
+
The template (``premiere_cli/templates/empty-project/``) ships inside this
|
|
5
|
+
package, so ``premiere-cli init-project`` works from any checkout/install
|
|
6
|
+
without needing access to a shared drive.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
import json
|
|
10
|
+
import os
|
|
11
|
+
import shutil
|
|
12
|
+
from importlib import resources
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
def _template_dir() -> str:
|
|
16
|
+
"""Filesystem path of the empty-project template bundled inside this package."""
|
|
17
|
+
template = resources.files("premiere_cli") / "templates" / "empty-project"
|
|
18
|
+
path = str(template)
|
|
19
|
+
if not os.path.isdir(path):
|
|
20
|
+
raise RuntimeError(
|
|
21
|
+
f"bundled empty-project template not found at {path} — broken installation?"
|
|
22
|
+
)
|
|
23
|
+
return path
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def create_project(project_name: str, dest_dir: str) -> str:
|
|
27
|
+
"""Copy the bundled empty-project template into dest_dir and rename its
|
|
28
|
+
.prproj file to '<project_name>.prproj'. Returns dest_dir.
|
|
29
|
+
|
|
30
|
+
Raises RuntimeError if dest_dir already exists or the template doesn't
|
|
31
|
+
contain exactly one .prproj file.
|
|
32
|
+
"""
|
|
33
|
+
template_dir = _template_dir()
|
|
34
|
+
|
|
35
|
+
if os.path.exists(dest_dir):
|
|
36
|
+
raise RuntimeError(f"destination already exists, refusing to overwrite: {dest_dir}")
|
|
37
|
+
|
|
38
|
+
shutil.copytree(template_dir, dest_dir)
|
|
39
|
+
|
|
40
|
+
# Copying across some filesystems (e.g. exFAT external drives) emits
|
|
41
|
+
# AppleDouble sidecar files (e.g. "._Untitled.prproj") for xattrs/resource
|
|
42
|
+
# forks. Strip them from the copy so they don't get mistaken for real files.
|
|
43
|
+
for root, _dirs, files in os.walk(dest_dir):
|
|
44
|
+
for f in files:
|
|
45
|
+
if f.startswith("._"):
|
|
46
|
+
os.remove(os.path.join(root, f))
|
|
47
|
+
|
|
48
|
+
prproj_files = [f for f in os.listdir(dest_dir) if f.endswith(".prproj")]
|
|
49
|
+
if len(prproj_files) != 1:
|
|
50
|
+
raise RuntimeError(
|
|
51
|
+
f"expected exactly one .prproj file in the template, found {len(prproj_files)}: {prproj_files}"
|
|
52
|
+
)
|
|
53
|
+
|
|
54
|
+
old_path = os.path.join(dest_dir, prproj_files[0])
|
|
55
|
+
new_path = os.path.join(dest_dir, f"{project_name}.prproj")
|
|
56
|
+
os.rename(old_path, new_path)
|
|
57
|
+
|
|
58
|
+
return dest_dir
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
def init_project(project_name: str, series_name: str | None, base_dir: str) -> int:
|
|
62
|
+
"""CLI entry point: build the destination path and create the project,
|
|
63
|
+
printing a JSON result. Returns the process exit code."""
|
|
64
|
+
dest_dir = os.path.join(base_dir, series_name, project_name) if series_name else os.path.join(base_dir, project_name)
|
|
65
|
+
|
|
66
|
+
try:
|
|
67
|
+
create_project(project_name, dest_dir)
|
|
68
|
+
except RuntimeError as exc:
|
|
69
|
+
print(json.dumps({"ok": False, "error": str(exc)}))
|
|
70
|
+
return 1
|
|
71
|
+
|
|
72
|
+
print(json.dumps({"ok": True, "projectDir": dest_dir}))
|
|
73
|
+
return 0
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
-
<ExtensionManifest Version="7.0" ExtensionBundleId="com.
|
|
2
|
+
<ExtensionManifest Version="7.0" ExtensionBundleId="com.stefanwebb.premierecli" ExtensionBundleVersion="1.0.0" ExtensionBundleName="Premiere Bridge">
|
|
3
3
|
<ExtensionList>
|
|
4
|
-
<Extension Id="com.
|
|
4
|
+
<Extension Id="com.stefanwebb.premierecli.panel" Version="1.0.0" />
|
|
5
5
|
</ExtensionList>
|
|
6
6
|
<ExecutionEnvironment>
|
|
7
7
|
<HostList>
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
</RequiredRuntimeList>
|
|
16
16
|
</ExecutionEnvironment>
|
|
17
17
|
<DispatchInfoList>
|
|
18
|
-
<Extension Id="com.
|
|
18
|
+
<Extension Id="com.stefanwebb.premierecli.panel">
|
|
19
19
|
<DispatchInfo>
|
|
20
20
|
<Resources>
|
|
21
21
|
<MainPath>./index.html</MainPath>
|
|
@@ -5,7 +5,7 @@ const PORT = 47823;
|
|
|
5
5
|
// Kept in lockstep with the premiere-cli Python package version —
|
|
6
6
|
// `premiere-cli doctor` compares the two and warns when the installed
|
|
7
7
|
// panel is stale relative to the CLI that ships it.
|
|
8
|
-
const PANEL_VERSION = '0.
|
|
8
|
+
const PANEL_VERSION = '0.3.0';
|
|
9
9
|
const VALID_LEVELS = ['info', 'warn', 'error'];
|
|
10
10
|
|
|
11
11
|
// main.js is loaded via a plain <script src="js/main.js"> tag, not
|
|
@@ -16,7 +16,7 @@ import urllib.error
|
|
|
16
16
|
import urllib.request
|
|
17
17
|
from importlib import resources
|
|
18
18
|
|
|
19
|
-
EXTENSION_ID = "com.
|
|
19
|
+
EXTENSION_ID = "com.stefanwebb.premierecli"
|
|
20
20
|
DEFAULT_PORT = 47823
|
|
21
21
|
|
|
22
22
|
# CSXS major versions to enable PlayerDebugMode for. Premiere 2020-2022 use
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: premiere-cli
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.3.0
|
|
4
4
|
Summary: Drive Adobe Premiere Pro from the command line: a Python CLI plus a bundled CEP bridge panel exposing Premiere's scripting APIs over local HTTP
|
|
5
5
|
License: CC-BY-SA-4.0
|
|
6
6
|
Project-URL: Repository, https://github.com/stefanwebb/premiere-cli
|
|
@@ -22,16 +22,17 @@ ExtendScript / QE scripting APIs as ~230 JSON-in/JSON-out commands —
|
|
|
22
22
|
reading project/sequence/clip state, editing the timeline, applying
|
|
23
23
|
effects, managing markers and bins, exporting media and frames, and more.
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
The Claude Code skill for driving this CLI lives in the separate
|
|
26
|
+
[premiere-ai-skills](https://github.com/stefanwebb/premiere-ai-skills)
|
|
27
|
+
plugin, alongside the AI-assisted workflow skills — install that plugin
|
|
28
|
+
to give Claude the skill.
|
|
28
29
|
|
|
29
30
|
## Install
|
|
30
31
|
|
|
31
32
|
```bash
|
|
32
33
|
# 1. The CLI (isolated, no dependencies)
|
|
33
|
-
pipx install
|
|
34
|
-
# or: uv tool install
|
|
34
|
+
pipx install premiere-cli
|
|
35
|
+
# or: uv tool install premiere-cli
|
|
35
36
|
|
|
36
37
|
# 2. The CEP panel (copies it into Adobe's extensions dir + enables PlayerDebugMode)
|
|
37
38
|
premiere-cli install-panel
|
|
@@ -42,6 +43,10 @@ premiere-cli install-panel
|
|
|
42
43
|
premiere-cli doctor
|
|
43
44
|
```
|
|
44
45
|
|
|
46
|
+
`premiere-cli init-project <name> --base-dir <path>` scaffolds a fresh,
|
|
47
|
+
empty `.prproj` from a bundled template — no Premiere Pro session needed,
|
|
48
|
+
so it works before step 3.
|
|
49
|
+
|
|
45
50
|
Supported: macOS and Windows (CEP does not exist on Linux). The panel
|
|
46
51
|
targets Premiere Pro 2020+ (CEP 10-12); the API behavior notes in
|
|
47
52
|
[docs/BUILD_FINDINGS.md](docs/BUILD_FINDINGS.md) were live-calibrated on
|
|
@@ -65,8 +70,8 @@ Every command prints a JSON object: `{"ok": true, "result": ...}` or
|
|
|
65
70
|
## Use from Claude Code
|
|
66
71
|
|
|
67
72
|
```
|
|
68
|
-
/plugin marketplace add stefanwebb/premiere-
|
|
69
|
-
/plugin install premiere-
|
|
73
|
+
/plugin marketplace add stefanwebb/premiere-ai-skills
|
|
74
|
+
/plugin install premiere-ai-skills@premiere-ai-skills
|
|
70
75
|
```
|
|
71
76
|
|
|
72
77
|
This gives Claude the `premiere-cli` skill — a complete, behavior-annotated
|
|
@@ -3,6 +3,7 @@ README.md
|
|
|
3
3
|
pyproject.toml
|
|
4
4
|
src/premiere_cli/__init__.py
|
|
5
5
|
src/premiere_cli/cli.py
|
|
6
|
+
src/premiere_cli/init_project.py
|
|
6
7
|
src/premiere_cli/log.py
|
|
7
8
|
src/premiere_cli/panel_install.py
|
|
8
9
|
src/premiere_cli.egg-info/PKG-INFO
|
|
@@ -248,5 +249,7 @@ src/premiere_cli/panel/host/commands/update-marker.jsx
|
|
|
248
249
|
src/premiere_cli/panel/host/presets/default-4k-25fps.sqpreset
|
|
249
250
|
src/premiere_cli/panel/js/cs-interface.js
|
|
250
251
|
src/premiere_cli/panel/js/main.js
|
|
252
|
+
src/premiere_cli/templates/empty-project/Untitled.prproj
|
|
253
|
+
src/premiere_cli/templates/empty-project/Adobe Premiere Pro Auto-Save/Untitled--8627e8e5-eccf-e7ea-8c87-b4de7f17596a-2026-07-10_12-30-47.prproj
|
|
251
254
|
tests/test_cli.py
|
|
252
255
|
tests/test_log.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-keyframe.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-marker.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-text-overlay.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-to-timeline.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-track.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/add-transition.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/apply-effect.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/apply-lut.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/clear-item-in-out.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/close-sequence.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/color-correct.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-bin.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-sequence.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-smart-bin.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/create-subclip.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/debug-qe-inspect.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/delete-marker.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/detach-proxy.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/duplicate-clip.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/encode-file.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-aaf.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-fcp-xml.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-frame.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-omf.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/export-sequence.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/extract-selection.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/freeze-frame.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-bin-contents.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-links.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-markers.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-clip-speed.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-color-label.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-color-space.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-insertion-bin.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-item-metadata.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-keyframes.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-offline-media.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-open-projects.jsx
RENAMED
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-project-info.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-qe-clip-info.jsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-target-tracks.jsx
RENAMED
|
File without changes
|
{premiere_cli-0.2.0 → premiere_cli-0.3.0}/src/premiere_cli/panel/host/commands/get-timeline-gaps.jsx
RENAMED
|
File without changes
|