fotohubapp-cli
Official command-line interface for the FOTOhub AI Platform. Generate images, video, music, chat with 30+ LLMs, manage cloud storage, automate workflows — all from your terminal.
Installation
npm install -g fotohubapp-cli
Requires Node.js 18+.
Quick Start
# 1. Authenticate
fotohub auth login
# 2. Generate an image
fotohub generate image "a futuristic city at sunset"
# 3. Start an interactive chat
fotohub chat
# 4. Check your balance
fotohub billing balance
Commands
Authentication
fotohub auth login # Set your API key
fotohub auth logout # Remove credentials
fotohub auth whoami # Show account info
fotohub auth keys list # List API keys
fotohub auth keys create # Create new key
AI Generation
fotohub generate image <prompt> # Generate image (25+ models)
fotohub generate video <prompt> # Generate video (Veo 3, Kling, Wan)
fotohub generate music <prompt> # Generate music
fotohub generate speech <text> # Text-to-Speech
Image options: --model, --width, --height, --num, --aspect-ratio, --negative-prompt, --seed, --output
Video options: --model, --duration, --aspect-ratio, --image (img2video)
Chat & LLM
fotohub chat # Interactive chat (streaming)
fotohub chat send "Hello" # One-shot message
Supports 30+ models from 12 providers: Claude, GPT, Grok, DeepSeek, Gemini, Qwen, Nova, Mistral, Kimi, and more.
Options: --model, --system, --temperature
Interactive commands: /quit, /clear, /model <id>, /system <prompt>
Models
fotohub models list # List all available models
fotohub models list --category image
fotohub models info <model-id> # Model details & pricing
Cloud Storage (S3)
fotohub storage list # List buckets
fotohub storage create <name> # Create bucket
fotohub storage upload <file> -b <bucket> # Upload file
fotohub storage download <key> -b <bucket> # Download file
fotohub storage ls <bucket> # List objects
Billing & Usage
fotohub billing balance # Credits & wallet balance
fotohub billing usage # Usage breakdown
fotohub billing history # Transaction history
Workflows
fotohub workflow list # List workflows
fotohub workflow run <id> # Execute workflow
fotohub workflow status <exec-id> # Check execution status
Configuration
fotohub config list # Show all config
fotohub config set <key> <value> # Set value
fotohub config get <key> # Get value
System
fotohub status # System health check
fotohub --version # CLI version
Global Options
| Flag | Description |
|---|---|
--api-key <key> |
Override stored API key |
--json |
Output raw JSON (for scripting) |
--no-color |
Disable colored output |
--base-url <url> |
Custom API URL |
--verbose |
Debug output |
Configuration
Credentials are stored in ~/.fotohub/config.json with restricted permissions (0600).
Auth priority: --api-key flag > FOTOHUB_API_KEY env var > config file.
Environment Variables
| Variable | Description |
|---|---|
FOTOHUB_API_KEY |
API key (alternative to fotohub auth login) |
FOTOHUB_BASE_URL |
Custom API endpoint |
NO_COLOR |
Disable colors (standard) |
Examples
# Generate 4 images with a specific model
fotohub gen image "abstract art" --model flux-schnell --num 4 --output art.png
# Generate a video from an image
fotohub gen video "camera slowly zooms in" --image https://example.com/photo.jpg --duration 10
# Chat with Claude using a system prompt
fotohub chat send "Explain quantum physics simply" --model claude-sonnet-4-20250514 --system "You are a physics teacher"
# Get JSON output for scripting
fotohub models list --json | jq '.[] | select(.category == "image") | .id'
# Upload a file to storage
fotohub storage upload ./render.mp4 -b my-renders
# Run a workflow with input
fotohub workflow run abc123 --input '{"prompt": "hello"}'
Documentation
Full API documentation: docs.fotohub.app
License
MIT