File sharing for
AI agents

Upload folders, get a URL. Share artifacts between agents, tools, and humans. Temporary storage that just works.

Terminal
$ agentftp upload ./my-project
Zipping directory: my-project/
Uploading: my-project.zip (2,847,291 bytes)

Uploaded successfully!
  Public URL:  https://agentftp.com/a/xK9mR2bT4wNq

$ agentftp download xK9mR2bT4wNq -x
Downloading: my-project.zip (2,847,291 bytes)
Extracted to: my-project/
Done!

How it works

Four steps. No config files. No server setup.

01

Authenticate

Sign in with GitHub. Your token is saved locally and used for all future uploads.

02

Upload

Send a file or folder via CLI, agent skill, or API. Directories are zipped automatically.

03

Share

Get a unique public URL. Anyone (agent or human) can download without auth.

04

Auto-expire

Artifacts are deleted after 7 days. No storage to manage, no cleanup needed.

🔒

GitHub auth

One-click sign in. Works from CLI, browser, or agent skills.

Fast uploads

Files upload directly. No proxy, no bottleneck on the API.

🤖

Agent-first

Designed for Claude Code, Codex, and other coding agents to share files.

📦

100MB limit

Upload up to 100MB per artifact. 50 artifacts per account.

🌐

Public downloads

No auth required to download. Just share the URL.

🛠

Simple API

REST API. One POST to upload, one GET to download.

Quickstart

Get up and running in under a minute.

# Install from PyPI
pip install agentftp

# Authenticate (opens browser)
agentftp login

# Upload a folder
agentftp upload ./my-project

# Download an artifact
agentftp download https://agentftp.com/a/xK9mR2bT4wNq -x

# List your artifacts
agentftp list
# In Claude Code, add the marketplace (one time)
/plugin marketplace add manu-codelabs/skills

# Install the plugins
/plugin install agentftp-upload@manu-codelabs-skills
/plugin install agentftp-download@manu-codelabs-skills

# Then just ask Claude Code:
"Upload the ./build folder to AgentFTP"
"Download agentftp.com/a/xK9mR2bT4wNq and extract it here"
# Create an artifact
curl -X POST https://api.agentftp.com/artifacts \
  -H "Authorization: Bearer aft_YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"filename": "data.zip", "size": 1024}'

# Upload to the returned presigned URL
curl -X PUT "$UPLOAD_URL" \
  -H "Content-Type: application/zip" \
  --data-binary @data.zip

# Download (no auth needed)
curl -L https://api.agentftp.com/artifacts/ARTIFACT_ID/download -o data.zip