S3 buckets, side by side.
Captain’s Deck speaks native S3 — and any S3-compatible service. Browse a bucket like a folder, copy objects with F5, and never see an XML response again.
Connecting
Choose Go → Connect to S3 Storage…. The dialog asks for:
- Provider — Amazon S3, MinIO, DigitalOcean Spaces, Backblaze B2, or Custom S3-Compatible
- Profile — optional; fills in the fields below from your AWS profiles (more on those below)
- Access Key and Secret Key
- Region —
us-east-1if you leave it empty - Bucket — the bucket to open (required)
- Endpoint — only for S3-compatible services; greyed out for Amazon S3
Click Connect and the bucket opens in the active pane. Prefixes nest like directories. Each connection covers one bucket — to work in another bucket, connect again.
Captain’s Deck doesn’t save S3 connections or keys. You enter them each time you connect — or keep them in an AWS profile so the dialog can fill them in for you.
AWS profiles
The S3 connection dialog has a Profile picker that reads ~/.aws/credentials and ~/.aws/config. Pick a profile and the access key, secret, and region fields fill in for you. Profiles you’ve saved with the AWS CLI (aws configure --profile work) just show up.
SSO, role-chained, and credential_process profiles work too, as of 1.4.4.4. Captain’s Deck routes the connection through Soto’s configFile(profile:) loader, which calls STS:AssumeRole and materialises short-term credentials when needed. Pick the profile in the dialog and the rest is handled.
No profile? Choose (none — enter manually) and type the access key and secret key yourself.
S3-compatible services
The Provider menu has presets for:
- MinIO (example endpoint
http://localhost:9000) - DigitalOcean Spaces (fills in region
nyc3) - Backblaze B2 (fills in region
us-west-004)
Type your own endpoint URL in the Endpoint field. For any other S3-compatible service — Cloudflare R2, Wasabi and so on — choose Custom S3-Compatible and enter its endpoint URL and region.
Multipart uploads
Files of 64 MB and up are uploaded in parts, several at a time, so big uploads go up noticeably faster. What that gets you:
- No 5 GB ceiling — files larger than S3’s single-upload limit go up fine
- The file streams from disk, so it never has to fit in memory
- Cancel cleanly — a cancelled or failed upload is discarded on the server, so nothing half-uploaded is left behind costing storage
- Or resume it — with Resume interrupted transfers on in Settings → Transfers, the parts already uploaded are kept instead, and the next try of the same file sends only the rest. Downloads resume too. Parts of an upload that’s never finished are cleared after 7 days, so they don’t keep costing storage
- Pause and Resume from the Activity panel (Cmd+Option+A), and slow things down with the progress window’s Throttle setting
Presigned URLs
Right-click any object → Create Share Link. The submenu lets you pick a duration: 1 hour, 6 hours, 24 hours, or 7 days. Captain’s Deck signs the URL with your AWS credentials and copies it to the clipboard. The follow-up dialog shows when the link expires and offers to open it in your browser.
Presigned URLs can’t be revoked individually — they expire on their own. If you need to invalidate one before its time is up, the only way is to rotate the signing credentials.