Skill detail
infsh-cli
Runs AI apps via the inference.sh CLI covering image generation, video creation, LLMs, search, 3D, and Twitter automation with many models.
Inspect before use
Read the source instructions and check the requirements before you install this skill.
SKILL.md
The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.
---
name: infsh-cli
description: "Run AI apps via inference.sh CLI - image generation, video creation, LLMs, search, 3D, Twitter automation. Models: FLUX, Veo, Gemini, Grok, Claude, Seedance, OmniHuman, Tavily, Exa, OpenRouter, and many more. Use when running AI apps, generating images/videos, calling LLMs, web search, or automating Twitter. Triggers: inference.sh, infsh, ai model, run ai, serverless ai, ai api, flux, veo, claude api, image generation, video generation, openrouter, tavily, exa search, twitter api, grok"
allowed-tools: Bash(belt *)
---
> **Install the belt CLI skill:** `npx skills add belt-sh/cli`
# [inference.sh](https://inference.sh)
Run AI apps in the cloud with a simple CLI. No GPU required.
](https://cloud.inference.sh/app/files/u/4mg21r6ta37mpaz6ktzwtt8krr/01kgjw8atdxgkrsr8a2t5peq7b.jpeg)
## Install CLI
```bash
curl -fsSL https://cli.inference.sh | sh
belt login
```
Agents / non-interactive shells: `belt login --key <api-key>`, or set `INFSH_API_KEY` (read on every command, no login needed).
Without a TTY, `belt login` prints a URL; the browser then shows a claim code. Run `belt login --code <code>` on the same machine within 5 minutes.
> **What does the installer do?** The [install script](https://cli.inference.sh) detects your OS and architecture, downloads the correct binary from `dist.inference.sh`, verifies its SHA-256 checksum, and places it in your PATH. That's it — no elevated permissions, no background processes, no telemetry. If you have [cosign](https://docs.sigstore.dev/cosign/system_config/installation/) installed, the installer also verifies the Sigstore signature automatically.
>
> **Manual install** (if you prefer not to pipe to sh):
> ```bash
> # Download the binary and checksums
> curl -LO https://dist.inference.sh/cli/checksums.txt
> curl -LO $(curl -fsSL https://dist.inference.sh/cli/manifest.json | grep -o '"url":"[^"]*"' | grep $(uname -s | tr A-Z a-z)-$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/') | head -1 | cut -d'"' -f4)
> # Verify checksum
> sha256sum -c checksums.txt --ignore-missing
> # Extract and install
> tar -xzf inferencesh-cli-*.tar.gz
> mv inferencesh-cli-* ~/.local/bin/inferencesh
> ```
## Quick Examples
```bash
# Generate an image
belt app run falai/flux-dev-lora --input '{"prompt": "a cat astronaut"}'
# Generate a video
belt app run google/veo-3-1-fast --input '{"prompt": "drone over mountains"}'
# Call Claude
belt app run openrouter/claude-sonnet-45 --input '{"prompt": "Explain quantum computing"}'
# Web search
belt app run tavily/search-assistant --input '{"query": "latest AI news"}'
# Post to Twitter
belt app run x/post-create --input '{"text": "Hello from AI!"}'
# Generate 3D model
belt app run infsh/rodin-3d-generator --input '{"prompt": "a wooden chair"}'
```
## Local File Uploads
The CLI automatically uploads local files when you provide a path instead of a URL:
```bash
# Upscale a local image
belt app run falai/topaz-image-upscaler --input '{"image": "/path/to/photo.jpg", "upscale_factor": 2}'
# Image-to-video from local file
belt app run falai/wan-2-5-i2v --input '{"image": "./my-image.png", "prompt": "make it move"}'
# Avatar with local audio and image
belt app run bytedance/omnihuman-1-5 --input '{"audio": "/path/to/speech.mp3", "image": "/path/to/face.jpg"}'
# Post tweet with local media
belt app run x/post-create --input '{"text": "Check this out!", "media": ["./screenshot.png"]}'
```
## Commands
| Task | Command |
|------|---------|
| Browse the app store | `belt app list` |
| Search the store | `belt app search "flux"` |
| Filter by category | `belt app list --category image` |
| List your apps | `belt app list` |
| Get app details | `belt app get google/veo-3-1-fast` |
| Generate sample input | `belt app sample google/veo-3-1-fast --save input.json` |
| Run app | `belt app run google/veo-3-1-fast --input input.json` |
| Run without waiting | `belt app run <app> --input input.json --no-Read the full source on GitHub (opens external page)