Loading...
Loading...
Upload and manage files using Google Gemini File API via scripts/. Use for uploading images, audio, video, PDFs, and other files for use with Gemini models. Supports file upload, status checking, and file management. Triggers on "upload file", "file API", "upload image", "upload PDF", "upload video", "file management".
npx skill4agent add akrindev/google-studio-skills gemini-files| Parameter | Description | Example |
|---|---|---|
| File path (required) | |
| Display name | |
| Wait for processing | Flag |
python scripts/upload.py image.jpgpython scripts/upload.py document.pdf --name "Quarterly Report Q4 2026"python scripts/upload.py video.mp4 --wait# 1. Upload image
python scripts/upload.py photo.png --name "product-shot"
# 2. Use with gemini-text for analysis
python skills/gemini-text/scripts/generate.py "Describe this image" --image photo.png# 1. Upload PDF
python scripts/upload.py research-paper.pdf --name "AI-Research-Paper" --wait
# 2. Extract content with gemini-text
python skills/gemini-text/scripts/generate.py "Extract key findings from this document" --image research-paper.pdf# 1. Upload multiple files
for file in *.jpg; do
python scripts/upload.py "$file"
done
# 2. Create batch job using uploaded files (gemini-batch skill)# 1. Upload audio
python scripts/upload.py interview.mp3 --name "interview-001" --wait
# 2. Process with gemini-text (if transcription available)
python skills/gemini-text/scripts/generate.py "Transcribe and summarize this audio" --image interview.mp3# 1. Upload video (may take time)
python scripts/upload.py product-demo.mp4 --name "demo-video" --wait
# 2. Analyze with gemini-text
python skills/gemini-text/scripts/generate.py "Analyze this product demo video" --image product-demo.mp4| Type | Extensions | Max Size | Processing Time |
|---|---|---|---|
| Images | jpg, jpeg, png, gif, webp | 20MB | Seconds |
| Audio | mp3, wav, aac, flac | 25MB | Seconds-minutes |
| Video | mp4, mov, avi, webm | 2GB | Minutes-hours |
| Documents | pdf, txt | 50MB | Seconds-minutes |
| State | Description | Ready for Use |
|---|---|---|
| File is being analyzed | No |
| File is ready | Yes |
| Processing failed | No |
Uploading photo.png...
Uploaded: files/abc123...
URI: gs://generation-tmp/abc123...
State: PROCESSINGUploading video.mp4...
Uploaded: files/xyz789...
URI: gs://generation-tmp/xyz789...
State: PROCESSING
Waiting for processing...
Still processing...
File ready!# With gemini-text
python skills/gemini-text/scripts/generate.py "Analyze" --image <uploaded-file-path>pip install google-genai--wait--wait--wait--name# Basic upload
python scripts/upload.py image.jpg
# With custom name
python scripts/upload.py document.pdf --name "My Document"
# Wait for processing
python scripts/upload.py video.mp4 --wait
# Multiple files
for file in *.jpg; do python scripts/upload.py "$file"; donefrom google import genai
client = genai.Client()
# List all files
for file in client.files.list():
print(f"{file.name}: {file.display_name} ({file.state})")
# Get file info
file = client.files.get(name="files/abc123...")
print(f"State: {file.state}")
# Delete file
client.files.delete(name="files/abc123...")