Run 150+ AI Apps via the inference.sh CLI in Hermes Agent
Run 150+ AI apps (image, video, LLM) via inference.sh CLI.
Written by Neura Market from the official Hermes Agent documentation for Inference Sh Cli. Commands, paths, and version numbers are reproduced from the source unchanged.
Read the official documentationThe inference.sh CLI (infsh) lets you run over 150 AI applications from the terminal without managing GPUs or individual provider API keys. If you are building an autonomous agent with Hermes Agent and need to generate images, video, audio, or run AI-powered search, this skill gives you a single command interface to services like FLUX, Veo, Claude, and Tavily. You never install a model locally; the CLI calls the cloud and returns URLs to the generated media.
What it does
infsh is a command-line client for the inference.sh platform. You search for an app by name or category, then run it with a JSON input payload. The output comes back as structured JSON containing URLs to the result. The skill is designed for Hermes Agent's terminal tool: the agent issues infsh commands, parses the JSON, and presents media to the user inline.
Before you start
The infsh CLI must be installed and authenticated on the machine where Hermes Agent runs. Check with:
infsh me
If not installed:
curl -fsSL https://cli.inference.sh | sh
infsh login
See references/authentication.md for full setup details.
Workflow
1. Always Search First
Never guess app names, always search to find the correct app ID:
infsh app list --search flux
infsh app list --search video
infsh app list --search image
2. Run an App
Use the exact app ID from the search results. Always use --json for machine-readable output:
infsh app run <app-id> --input '{"prompt": "your prompt here"}' --json
3. Parse the Output
The JSON output contains URLs to generated media. Present these to the user with MEDIA: for inline display.
Common Commands
Image Generation
# Search for image apps
infsh app list --search image
# FLUX Dev with LoRA
infsh app run falai/flux-dev-lora --input '{"prompt": "sunset over mountains", "num_images": 1}' --json
# Gemini image generation
infsh app run google/gemini-2-5-flash-image --input '{"prompt": "futuristic city", "num_images": 1}' --json
# Seedream (ByteDance)
infsh app run bytedance/seedream-5-lite --input '{"prompt": "nature scene"}' --json
# Grok Imagine (xAI)
infsh app run xai/grok-imagine-image --input '{"prompt": "abstract art"}' --json
Video Generation
# Search for video apps
infsh app list --search video
# Veo 3.1 (Google)
infsh app run google/veo-3-1-fast --input '{"prompt": "drone shot of coastline"}' --json
# Seedance (ByteDance)
infsh app run bytedance/seedance-1-5-pro --input '{"prompt": "dancing figure", "resolution": "1080p"}' --json
# Wan 2.5
infsh app run falai/wan-2-5 --input '{"prompt": "person walking through city"}' --json
Local File Uploads
The CLI automatically uploads local files when you provide a path:
# Upscale a local image
infsh app run falai/topaz-image-upscaler --input '{"image": "/path/to/photo.jpg", "upscale_factor": 2}' --json
# Image-to-video from local file
infsh app run falai/wan-2-5-i2v --input '{"image": "/path/to/image.png", "prompt": "make it move"}' --json
# Avatar with audio
infsh app run bytedance/omnihuman-1-5 --input '{"audio": "/path/to/audio.mp3", "image": "/path/to/face.jpg"}' --json
Search & Research
infsh app list --search search
infsh app run tavily/tavily-search --input '{"query": "latest AI news"}' --json
infsh app run exa/exa-search --input '{"query": "machine learning papers"}' --json
Other Categories
# 3D generation
infsh app list --search 3d
# Audio / TTS
infsh app list --search tts
# Twitter/X automation
infsh app list --search twitter
Pitfalls
- Never guess app IDs, always run
infsh app list --searchfirst. App IDs change and new apps are added frequently. - Always use
--json, raw output is hard to parse. The--jsonflag gives structured output with URLs. - Check authentication, if commands fail with auth errors, run
infsh loginor verifyINFSH_API_KEYis set. - Long-running apps, video generation can take 30-120 seconds. The terminal tool timeout should be sufficient, but warn the user it may take a moment.
- Input format, the
--inputflag takes a JSON string. Make sure to properly escape quotes.
Reference Docs
references/authentication.md, Setup, login, API keysreferences/app-discovery.md, Searching and browsing the app catalogreferences/running-apps.md, Running apps, input formats, output handlingreferences/cli-reference.md, Complete CLI command reference