Files
hermes-agent/optional-skills/devops/cli/references/cli-reference.md
Teknium 5ceed021dc feat(gateway): skill-aware slash commands, paginated /commands, Telegram 100-cap (#3934)
* feat(gateway): skill-aware slash commands, paginated /commands, Telegram 100-cap

Map active skills to Telegram's slash command menu so users can
discover and invoke skills directly. Three changes:

1. Telegram menu now includes active skill commands alongside built-in
   commands, capped at 100 entries (Telegram Bot API limit). Overflow
   commands remain callable but hidden from the picker. Logged at
   startup when cap is hit.

2. New /commands [page] gateway command for paginated browsing of all
   commands + skills. /help now shows first 10 skill commands and
   points to /commands for the full list.

3. When a user types a slash command that matches a disabled or
   uninstalled skill, they get actionable guidance:
   - Disabled: 'Enable it with: hermes skills config'
   - Optional (not installed): 'Install with: hermes skills install official/<path>'

Built on ideas from PR #3921 by @kshitijk4poor.

* chore: move 21 niche skills to optional-skills

Move specialized/niche skills from built-in (skills/) to optional
(optional-skills/) to reduce the default skill count. Users can
install them with: hermes skills install official/<category>/<name>

Moved skills (21):
- mlops: accelerate, chroma, faiss, flash-attention,
  hermes-atropos-environments, huggingface-tokenizers, instructor,
  lambda-labs, llava, nemo-curator, pinecone, pytorch-lightning,
  qdrant, saelens, simpo, slime, tensorrt-llm, torchtitan
- research: domain-intel, duckduckgo-search
- devops: inference-sh cli

Built-in skills: 96 → 75
Optional skills: 22 → 43

* fix: only include repo built-in skills in Telegram menu, not user-installed

User-installed skills (from hub or manually added) stay accessible via
/skills and by typing the command directly, but don't get registered
in the Telegram slash command picker. Only skills whose SKILL.md is
under the repo's skills/ directory are included in the menu.

This keeps the Telegram menu focused on the curated built-in set while
user-installed skills remain discoverable through /skills and /commands.
2026-03-30 10:57:30 -07:00

3.1 KiB

CLI Reference

Installation

curl -fsSL https://cli.inference.sh | sh

Global Commands

Command Description
infsh help Show help
infsh version Show CLI version
infsh update Update CLI to latest
infsh login Authenticate
infsh me Show current user

App Commands

Discovery

Command Description
infsh app list List available apps
infsh app list --category <cat> Filter by category (image, video, audio, text, other)
infsh app search <query> Search apps
infsh app list --search <query> Search apps (flag form)
infsh app list --featured Show featured apps
infsh app list --new Sort by newest
infsh app list --page <n> Pagination
infsh app list -l Detailed table view
infsh app list --save <file> Save to JSON file
infsh app my List your deployed apps
infsh app get <app> Get app details
infsh app get <app> --json Get app details as JSON

Execution

Command Description
infsh app run <app> --input <file> Run app with input file
infsh app run <app> --input '<json>' Run with inline JSON
infsh app run <app> --input <file> --no-wait Run without waiting for completion
infsh app sample <app> Show sample input
infsh app sample <app> --save <file> Save sample to file

Task Commands

Command Description
infsh task get <task-id> Get task status and result
infsh task get <task-id> --json Get task as JSON
infsh task get <task-id> --save <file> Save task result to file

Development

Command Description
infsh app init Create new app (interactive)
infsh app init <name> Create new app with name
infsh app test --input <file> Test app locally
infsh app deploy Deploy app
infsh app deploy --dry-run Validate without deploying
infsh app pull <id> Pull app source
infsh app pull --all Pull all your apps

Environment Variables

Variable Description
INFSH_API_KEY API key (overrides config)

Shell Completions

# Bash
infsh completion bash > /etc/bash_completion.d/infsh

# Zsh
infsh completion zsh > "${fpath[1]}/_infsh"

# Fish
infsh completion fish > ~/.config/fish/completions/infsh.fish

App Name Format

Apps use the format namespace/app-name:

  • falai/flux-dev-lora - fal.ai's FLUX 2 Dev
  • google/veo-3 - Google's Veo 3
  • infsh/sdxl - inference.sh's SDXL
  • bytedance/seedance-1-5-pro - ByteDance's Seedance
  • xai/grok-imagine-image - xAI's Grok

Version pinning: namespace/app-name@version

Documentation