Loading...
Loading...
Uploads promo videos and content to Cloudflare R2 or AWS S3. Use when the user wants to host promo content for social media or distribution.
npx skill4agent add bitwize-music-studio/claude-ai-music-skills cloud-uploader/bitwize-music:promo-directorGenerate → Master → Promo Videos → **[Cloud Upload]** → Release~/.bitwize-music/config.yamlcloud:
enabled: true
provider: "r2" # or "s3"
# For Cloudflare R2
r2:
account_id: "your-account-id"
access_key_id: "your-access-key"
secret_access_key: "your-secret-key"
bucket: "promo-videos"
# For AWS S3
s3:
region: "us-west-2"
access_key_id: "your-access-key"
secret_access_key: "your-secret-key"
bucket: "promo-videos"${CLAUDE_PLUGIN_ROOT}/reference/cloud/setup-guide.md/bitwize-music:promo-director{audio_root}/artists/{artist}/albums/{genre}/{album}/promo_videos/{audio_root}/artists/{artist}/albums/{genre}/{album}/album_sampler.mp4# If using the shared venv (recommended)
~/.bitwize-music/venv/bin/pip install -r ${CLAUDE_PLUGIN_ROOT}/requirements.txt
# Or install separately
pip install boto3~/.bitwize-music/venvcat ~/.bitwize-music/config.yaml | grep -A 20 "cloud:"cloud.enabled: truels {audio_root}/artists/{artist}/albums/{genre}/{album}/promo_videos/
ls {audio_root}/artists/{artist}/albums/{genre}/{album}/album_sampler.mp4Error: Promo videos not found.
Generate with: /bitwize-music:promo-director {album}get_python_command()PYTHON="{python from get_python_command}"
PLUGIN_DIR="{plugin_root from get_python_command}"$PYTHON "$PLUGIN_DIR/tools/cloud/upload_to_cloud.py" {album} --dry-run$PYTHON "$PLUGIN_DIR/tools/cloud/upload_to_cloud.py" {album}$PYTHON "$PLUGIN_DIR/tools/cloud/upload_to_cloud.py" {album} --type promos$PYTHON "$PLUGIN_DIR/tools/cloud/upload_to_cloud.py" {album} --type sampler$PYTHON "$PLUGIN_DIR/tools/cloud/upload_to_cloud.py" {album} --public{artist}/{album}/aws s3 ls s3://{bucket}/{artist}/{album}/## Cloud Upload Complete
**Provider:** R2 (or S3)
**Bucket:** {bucket}
**Album:** {album}
**Uploaded Files:**
- {artist}/{album}/promos/01-track_promo.mp4
- {artist}/{album}/promos/02-track_promo.mp4
- ...
- {artist}/{album}/promos/album_sampler.mp4
**Total:** 11 files, 125.4 MB
**Next Steps:**
1. Verify files in cloud dashboard
2. If public: Test URLs work
3. Continue to release: /bitwize-music:release-director {album}| Location | Path Structure |
|---|---|
| Local content | |
| Local audio | |
| Cloud | |
{bucket}/
└── {artist}/
└── {album}/
└── promos/
├── 01-track_promo.mp4
├── 02-track_promo.mp4
├── ...
└── album_sampler.mp4~/music/artists/bitwize/albums/rock/my-album/bitwize/my-album/promos/bitwize/albums/rock/my-album/| Option | Description |
|---|---|
| Upload only track promo videos |
| Upload only album sampler |
| Upload both (default) |
| Preview without uploading |
| Set files as public-read |
| Override audio_root from config |
/bitwize-music:cloud-uploader my-album/bitwize-music:cloud-uploader my-album --dry-run/bitwize-music:cloud-uploader my-album --type promos/bitwize-music:cloud-uploader my-album --publiccloud.enabled: true${CLAUDE_PLUGIN_ROOT}/reference/cloud/setup-guide.md{audio_root}/artists/{artist}/albums/{genre}/{album}//bitwize-music:promo-director {album}--publicPromo videos generated successfully.
**Optional:** Upload to cloud storage: /bitwize-music:cloud-uploader {album}Cloud upload complete.
Ready for release workflow: /bitwize-music:release-director {album}${CLAUDE_PLUGIN_ROOT}/reference/cloud/setup-guide.md${CLAUDE_PLUGIN_ROOT}/skills/promo-director/SKILL.md${CLAUDE_PLUGIN_ROOT}/skills/release-director/SKILL.md