upfile.sh

Instant file uploads. Permanent URLs.

$ upfile screenshot.png
https://cdn.upfile.sh/xK9mZ.png

$ screencapture -x - | upfile
https://cdn.upfile.sh/mP3xQ.png
Public
Permanent CDN URL. Anyone can access.
Expiring
Self-destructs after your TTL.
Private
Auth-gated. Only you can access.

Built for AI Agents and Developers

⚡ Instant Uploads

Upload any file from your terminal and get a permanent CDN URL in seconds. No browser, no drag-and-drop, just a simple command.

🤖 AI-Ready API

Perfect for AI agents that need to share files, images, or documents. Programmatic access with simple HTTP endpoints.

🔒 Three Visibility Modes

Public files get permanent CDN URLs. Expiring files auto-delete after your TTL. Private files require authentication.

📦 Generous Free Tier

Start with 1GB of storage on the free tier. Upgrade to Pro for 100GB and advanced features when you need them.

Common Use Cases

Screenshot Sharing

Capture and share screenshots instantly. Pipe screencapture output directly to upfile and get a shareable URL in your clipboard. Perfect for bug reports, design feedback, and quick sharing with teammates.

AI Agent File Handling

Enable your AI agents to upload and share files automatically. Generate charts, export data, or create documents and get permanent URLs that can be shared in conversations or stored for later reference.

Temporary File Hosting

Need to share a file that shouldn't live forever? Use expiring uploads with custom TTL. Files automatically delete after your specified time, keeping your digital footprint clean.

Get Started in Seconds

# Install globally
$ yarn global add upfilesh

# Or use npx (no install)
$ npx upfilesh screenshot.png

Free tier includes 1GB storage. No credit card required.

Self Host

Run your own upfile instance on Cloudflare. Full control, no vendor lock-in.

# Clone the worker
$ git clone https://github.com/upfilesh/worker.git

# Deploy to Cloudflare
$ cd worker && yarn install && yarn wrangler deploy
View on GitHub →

Frequently Asked Questions

Is upfile free?

Yes! The free tier includes 1GB of storage with no expiration. Upgrade to Pro ($9/month) for 100GB and additional features.

How long do files last?

Public and private files are permanent unless you delete them. Expiring files are automatically removed after your specified TTL (time-to-live).

Can I use this in my scripts?

Absolutely. The CLI is designed for scripting and automation. Use it in shell scripts, Git hooks, or any automated workflow. JSON output available with the --json flag.

Is there an API?

Yes, check out the CLI documentation on GitHub for API details and examples.