← Tools Portal
THE BLACKCAT Vimeo Agent Studio
# THE BLACKCAT Vimeo Agent Studio
## Purpose
THE BLACKCAT Vimeo Agent Studio imports MP4/MOV videos from Dropbox shared links into Vimeo and keeps a local state file so already-uploaded links are skipped.
## Current Location
```text
/Users/pabloscandoglierro/Documents/Codex/2026-05-07/tengo-un-listado-de-links-de
```
## Current Engine
- `vimeo_dropbox_uploader.py`: main uploader.
- `subir_videos_a_vimeo.sh`: operator command for upload, dry-run, retry, and token checks.
- `guardar_token_vimeo.sh`: one-time token setup into macOS Keychain.
- `vimeo_upload_state.json`: local upload state used to avoid duplicates.
The Vimeo token is expected in macOS Keychain:
```text
service: vimeo-dropbox-uploader
account: vimeo-access-token
```
Do not commit tokens, Dropbox URLs, Vimeo state files, or private upload manifests into this portal repo.
## Master Input
Expected source list:
```text
/Users/pabloscandoglierro/Desktop/links.txt
```
Put one Dropbox shared video link per line. Supported extensions are:
- `.mp4`
- `.mov`
## Normal Flow
1. Update `/Users/pabloscandoglierro/Desktop/links.txt` with new Dropbox video links.
2. Ask Codex: `Ya actualice links.txt, subi los videos nuevos a Vimeo.`
3. Codex runs the uploader from the tool workspace.
4. The uploader skips links already marked as `uploaded` in `vimeo_upload_state.json`.
5. Codex reports the new Vimeo links and final state counts.
## Commands
Open the workspace from the portal repo:
```bash
scripts/open-vimeo-agent-studio.command
```
Run from the Vimeo Agent workspace:
```bash
cd "/Users/pabloscandoglierro/Documents/Codex/2026-05-07/tengo-un-listado-de-links-de"
```
Check token:
```bash
./subir_videos_a_vimeo.sh --check-token
```
Preview without uploading:
```bash
./subir_videos_a_vimeo.sh --dry-run
```
Upload pending/new links:
```bash
./subir_videos_a_vimeo.sh
```
Retry failed uploads:
```bash
./subir_videos_a_vimeo.sh --retry-failed
```
Upload only one planned item:
```bash
./subir_videos_a_vimeo.sh --limit 1
```
## Current Verified Snapshot
Last local verification during portal integration:
```text
tests: 16 passed
state records: 35
uploaded records: 35
master links file present: no
```
Before the next live upload, recreate or update:
```text
/Users/pabloscandoglierro/Desktop/links.txt
```
## Vimeo Privacy Defaults
The uploader creates pull uploads with conservative privacy defaults:
```text
view: nobody
embed: private
comments: nobody
download: false
```
Change those defaults only deliberately in the source uploader.