CLI commands
CLI di inferenza
openclaw infer è la superficie headless canonica per i flussi di lavoro di inferenza supportati da provider.
Espone intenzionalmente famiglie di capability, non nomi RPC grezzi del Gateway e non ID grezzi degli strumenti agente.
Trasformare infer in una skill
Copia e incolla questo in un agente:
Leggi https://docs.openclaw.ai/cli/infer, quindi crea una skill che instradi i miei flussi di lavoro comuni verso `openclaw infer`.Concentrati su esecuzioni di modelli, generazione di immagini, generazione di video, trascrizione audio, TTS, ricerca web ed embeddings.Una buona skill basata su infer dovrebbe:
- mappare gli intenti utente comuni al sottocomando infer corretto
- includere alcuni esempi infer canonici per i flussi di lavoro che copre
- preferire
openclaw infer ...negli esempi e nei suggerimenti - evitare di documentare di nuovo l'intera superficie infer nel corpo della skill
Copertura tipica di una skill incentrata su infer:
openclaw infer model runopenclaw infer image generateopenclaw infer audio transcribeopenclaw infer tts convertopenclaw infer web searchopenclaw infer embedding create
Perché usare infer
openclaw infer fornisce una CLI coerente per le attività di inferenza supportate da provider all'interno di OpenClaw.
Vantaggi:
- Usa i provider e i modelli già configurati in OpenClaw invece di cablare wrapper una tantum per ogni backend.
- Mantieni i flussi di lavoro di modelli, immagini, trascrizione audio, TTS, video, web ed embedding sotto un unico albero di comandi.
- Usa una forma di output
--jsonstabile per script, automazione e flussi di lavoro guidati da agenti. - Preferisci una superficie OpenClaw first-party quando l'attività è fondamentalmente "eseguire inferenza".
- Usa il normale percorso locale senza richiedere il gateway per la maggior parte dei comandi infer.
Per i controlli provider end-to-end, preferisci openclaw infer ... una volta che i test
provider di livello inferiore sono verdi. Esercita la CLI distribuita, il caricamento della configurazione,
la risoluzione dell'agente predefinito, l'attivazione dei Plugin in bundle e il runtime condiviso delle capability
prima che venga effettuata la richiesta al provider.
Albero dei comandi
openclaw infer list inspect model run list inspect providers auth login auth logout auth status image generate edit describe describe-many providers audio transcribe providers tts convert voices providers status enable disable set-provider video generate describe providers web search fetch providers embedding create providersAttività comuni
Questa tabella mappa le attività di inferenza comuni al comando infer corrispondente.
| Attività | Comando | Note |
|---|---|---|
| Eseguire un prompt testo/modello | openclaw infer model run --prompt "..." --json |
Usa il normale percorso locale per impostazione predefinita |
| Eseguire un prompt modello su immagini | openclaw infer model run --prompt "Describe this" --file ./image.png --model provider/model |
Ripeti --file per più input immagine |
| Generare un'immagine | openclaw infer image generate --prompt "..." --json |
Usa image edit quando parti da un file esistente |
| Descrivere un file immagine o URL | openclaw infer image describe --file ./image.png --prompt "..." --json |
--model deve essere un <provider/model> con capability immagine |
| Trascrivere audio | openclaw infer audio transcribe --file ./memo.m4a --json |
--model deve essere <provider/model> |
| Sintetizzare voce | openclaw infer tts convert --text "..." --output ./speech.mp3 --json |
tts status è orientato al gateway |
| Generare un video | openclaw infer video generate --prompt "..." --json |
Supporta suggerimenti provider come --resolution |
| Descrivere un file video | openclaw infer video describe --file ./clip.mp4 --json |
--model deve essere <provider/model> |
| Cercare nel web | openclaw infer web search --query "..." --json |
|
| Recuperare una pagina web | openclaw infer web fetch --url https://example.com --json |
|
| Creare embeddings | openclaw infer embedding create --text "..." --json |
Comportamento
openclaw infer ...è la superficie CLI primaria per questi flussi di lavoro.- Usa
--jsonquando l'output sarà consumato da un altro comando o script. - Usa
--providero--model provider/modelquando è richiesto un backend specifico. - Usa
model run --thinking <level>per passare un livello thinking/reasoning una tantum (off,minimal,low,medium,high,adaptive,xhighomax) mantenendo l'esecuzione raw. - Per
image describe,audio transcribeevideo describe,--modeldeve usare la forma<provider/model>. - Per
image describe,--fileaccetta percorsi locali e URL immagine HTTP(S). Gli URL remoti usano la normale policy SSRF di recupero media. - Per
image describe, un--modelesplicito esegue prima quel provider/modello, poi prova iagents.defaults.imageModel.fallbacksconfigurati quando la chiamata al modello fallisce. Gli errori di preparazione dell'input, come file mancanti o URL non supportati, falliscono prima dei tentativi di fallback. Il modello deve avere capability immagine nel catalogo modelli o nella configurazione provider.codex/<model>esegue un turno limitato di comprensione immagini del server app Codex;openai/<model>usa il percorso del provider OpenAI con autenticazione tramite API key oppure OAuth ChatGPT/Codex. - I comandi di esecuzione stateless usano local per impostazione predefinita.
- I comandi di stato gestiti dal Gateway usano gateway per impostazione predefinita.
- Il normale percorso locale non richiede che il gateway sia in esecuzione.
model runlocale è una completion provider one-shot leggera. Risolve il modello agente configurato e l'autenticazione, ma non avvia un turno chat-agent, non carica strumenti e non apre server MCP in bundle.model run --fileaccetta file immagine, ne rileva il tipo MIME e li invia con il prompt fornito al modello selezionato. Ripeti--fileper più immagini.model run --filerifiuta input non immagine. Usainfer audio transcribeper file audio einfer video describeper file video.model run --gatewayesercita routing Gateway, autenticazione salvata, selezione provider e runtime incorporato, ma viene comunque eseguito come probe raw del modello: invia il prompt fornito ed eventuali allegati immagine senza transcript di sessione precedente, contesto bootstrap/AGENTS, assemblaggio del motore di contesto, strumenti o server MCP in bundle.model run --gateway --model <provider/model>richiede una credenziale gateway operatore attendibile perché la richiesta chiede al Gateway di eseguire un override provider/modello una tantum.model run --thinkinglocale usa il percorso leggero di completion provider; livelli specifici del provider comeadaptiveemaxsono mappati al livello portatile di simple-completion più vicino.
Modello
Usa model per l'inferenza testuale supportata da provider e per l'ispezione di modelli/provider.
openclaw infer model run --prompt "Reply with exactly: smoke-ok" --jsonopenclaw infer model run --prompt "Summarize this changelog entry" --model openai/gpt-5.4 --jsonopenclaw infer model run --prompt "Describe this image in one sentence" --file ./photo.jpg --model google/gemini-2.5-flash --jsonopenclaw infer model run --prompt "Use more reasoning here" --thinking high --jsonopenclaw infer model providers --jsonopenclaw infer model inspect --name gpt-5.5 --jsonUsa riferimenti completi <provider/model> per fare smoke test di un provider specifico senza
avviare il Gateway o caricare l'intera superficie degli strumenti agente:
openclaw infer model run --local --model anthropic/claude-sonnet-4-6 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model cerebras/zai-glm-4.7 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model google/gemini-2.5-flash --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model groq/llama-3.1-8b-instant --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model mistral/mistral-medium-3-5 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model mistral/mistral-small-latest --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model openai/gpt-5.5 --prompt "Reply with exactly: pong" --jsonopenclaw infer model run --local --model ollama/qwen2.5vl:7b --prompt "Describe this image." --file ./photo.jpg --jsonNote:
model runlocale è lo smoke CLI più stretto per lo stato di salute di provider/modello/auth perché, per provider non Codex, invia solo il prompt fornito al modello selezionato.model run --model <provider/model>locale può usare righe esatte del catalogo statico in bundle damodels list --allprima che quel provider venga scritto nella configurazione. L'autenticazione provider è comunque richiesta; credenziali mancanti falliscono come errori di autenticazione, nonUnknown model.- Per probe di reasoning Mistral Medium 3.5, lascia la temperatura non impostata/predefinita. Mistral rifiuta
reasoning_effort="high"piùtemperature: 0; usamistral/mistral-medium-3-5con temperatura predefinita o un valore reasoning-mode diverso da zero come0.7. - I probe locali Codex Responses sono la stretta eccezione: OpenClaw aggiunge un'istruzione di sistema minima così il transport può popolare il suo campo
instructionsrichiesto, senza aggiungere contesto agente completo, strumenti, memoria o transcript di sessione. model run --filelocale mantiene quel percorso leggero e allega contenuto immagine direttamente al singolo messaggio utente. File immagine comuni come PNG, JPEG e WebP funzionano quando il loro tipo MIME viene rilevato comeimage/*; file non supportati o non riconosciuti falliscono prima che venga chiamato il provider.model run --fileè ideale quando vuoi testare direttamente il modello testuale multimodale selezionato. Usainfer image describequando vuoi la selezione provider di comprensione immagini di OpenClaw e il routing predefinito del modello immagine.- Il modello selezionato deve supportare input immagine; i modelli solo testo possono rifiutare la richiesta al livello del provider.
model run --promptdeve contenere testo non composto solo da spazi; i prompt vuoti vengono rifiutati prima che siano chiamati i provider locali o il Gateway.model runlocale esce con codice diverso da zero quando il provider non restituisce output testuale, quindi provider locali non raggiungibili e completion vuote non sembrano probe riusciti.- Usa
model run --gatewayquando devi testare routing Gateway, configurazione del runtime agente o stato provider gestito dal Gateway mantenendo raw l'input del modello. Usaopenclaw agento superfici chat quando vuoi il contesto agente completo, strumenti, memoria e transcript di sessione. model auth login,model auth logoutemodel auth statusgestiscono lo stato di autenticazione provider salvato.
Immagine
Usa image per generazione, modifica e descrizione.
openclaw infer image generate --prompt "friendly lobster illustration" --jsonopenclaw infer image generate --prompt "cinematic product photo of headphones" --jsonopenclaw infer image generate --model openai/gpt-image-1.5 --output-format png --background transparent --prompt "simple red circle sticker on a transparent background" --jsonopenclaw infer image generate --model openai/gpt-image-2 --quality low --openai-moderation low --prompt "low-cost draft poster" --jsonopenclaw infer image generate --prompt "slow image backend" --timeout-ms 180000 --jsonopenclaw infer image edit --file ./logo.png --model openai/gpt-image-1.5 --output-format png --background transparent --prompt "keep the logo, remove the background" --jsonopenclaw infer image edit --file ./poster.png --prompt "make this a vertical story ad" --size 2160x3840 --aspect-ratio 9:16 --resolution 4K --jsonopenclaw infer image describe --file ./photo.jpg --jsonopenclaw infer image describe --file https://example.com/photo.png --jsonopenclaw infer image describe --file ./receipt.jpg --prompt "Extract the merchant, date, and total" --jsonopenclaw infer image describe-many --file ./before.png --file ./after.png --prompt "Compare the screenshots and list visible UI changes" --jsonopenclaw infer image describe --file ./ui-screenshot.png --model openai/gpt-5.4-mini --jsonopenclaw infer image describe --file ./photo.jpg --model ollama/qwen2.5vl:7b --prompt "Describe the image in one sentence" --timeout-ms 300000 --jsonNote:
-
Usa
image editquando parti da file di input esistenti. -
Usa
--size,--aspect-ratioo--resolutionconimage editper provider/modelli che supportano suggerimenti geometrici nelle modifiche di immagini di riferimento. -
Usa
--output-format png --background transparentcon--model openai/gpt-image-1.5per l'output PNG OpenAI con sfondo trasparente;--openai-backgroundresta disponibile come alias specifico di OpenAI. I provider che non dichiarano il supporto dello sfondo segnalano il suggerimento come override ignorato. -
Usa
--quality low|medium|high|autoper i provider che supportano suggerimenti sulla qualità delle immagini, incluso OpenAI. OpenAI accetta anche--openai-moderation low|autoper il suggerimento di moderazione specifico del provider. -
Usa
image providers --jsonper verificare quali provider di immagini inclusi sono individuabili, configurati, selezionati e quali capacità di generazione/modifica espone ciascun provider. -
Usa
image generate --model <provider/model> --jsoncome smoke test CLI live più mirato per modifiche alla generazione di immagini. Esempio:bash openclaw infer image providers --jsonopenclaw infer image generate \ --model google/gemini-3.1-flash-image-preview \ --prompt "Minimal flat test image: one blue square on a white background, no text." \ --output ./openclaw-infer-image-smoke.png \ --jsonLa risposta JSON riporta
ok,provider,model,attemptse i percorsi di output scritti. Quando--outputè impostato, l'estensione finale può seguire il tipo MIME restituito dal provider. -
Per
image describeeimage describe-many, usa--promptper dare al modello vision un'istruzione specifica per il compito, come OCR, confronto, ispezione dell'interfaccia utente o didascalia concisa. -
Usa
--timeout-mscon modelli vision locali lenti o avvii a freddo di Ollama. -
Per
image describe,--modeldeve essere un<provider/model>con capacità immagine. Quando è impostato, OpenClaw prova prima quel modello esplicito e poi i fallback configurati dei modelli immagine se la chiamata al modello non riesce. -
Per i modelli vision Ollama locali, scarica prima il modello e imposta
OLLAMA_API_KEYsu un valore segnaposto qualsiasi, per esempioollama-local. Vedi Ollama.
Audio
Usa audio per la trascrizione di file.
openclaw infer audio transcribe --file ./memo.m4a --jsonopenclaw infer audio transcribe --file ./team-sync.m4a --language en --prompt "Focus on names and action items" --jsonopenclaw infer audio transcribe --file ./memo.m4a --model openai/whisper-1 --jsonNote:
audio transcribeserve per la trascrizione di file, non per la gestione di sessioni in tempo reale.--modeldeve essere<provider/model>.
TTS
Usa tts per la sintesi vocale e lo stato del provider TTS.
openclaw infer tts convert --text "hello from openclaw" --output ./hello.mp3 --jsonopenclaw infer tts convert --text "Your build is complete" --output ./build-complete.mp3 --jsonopenclaw infer tts providers --jsonopenclaw infer tts status --jsonNote:
tts statususa gateway come impostazione predefinita perché riflette lo stato TTS gestito dal gateway.- Usa
tts providers,tts voicesetts set-providerper ispezionare e configurare il comportamento TTS.
Video
Usa video per generazione e descrizione.
openclaw infer video generate --prompt "cinematic sunset over the ocean" --jsonopenclaw infer video generate --prompt "slow drone shot over a forest lake" --resolution 768P --duration 6 --jsonopenclaw infer video describe --file ./clip.mp4 --jsonopenclaw infer video describe --file ./clip.mp4 --model openai/gpt-5.4-mini --jsonNote:
video generateaccetta--size,--aspect-ratio,--resolution,--duration,--audio,--watermarke--timeout-mse li inoltra al runtime di generazione video.--modeldeve essere<provider/model>pervideo describe.
Web
Usa web per flussi di lavoro di ricerca e recupero.
openclaw infer web search --query "OpenClaw docs" --jsonopenclaw infer web search --query "OpenClaw infer web providers" --jsonopenclaw infer web fetch --url https://docs.openclaw.ai/cli/infer --jsonopenclaw infer web providers --jsonNote:
- Usa
web providersper ispezionare i provider disponibili, configurati e selezionati.
Embedding
Usa embedding per la creazione di vettori e l'ispezione dei provider di embedding.
openclaw infer embedding create --text "friendly lobster" --jsonopenclaw infer embedding create --text "customer support ticket: delayed shipment" --model openai/text-embedding-3-large --jsonopenclaw infer embedding providers --jsonOutput JSON
I comandi Infer normalizzano l'output JSON in un contenitore condiviso:
{ "ok": true, "capability": "image.generate", "transport": "local", "provider": "openai", "model": "gpt-image-2", "attempts": [], "outputs": []}I campi di primo livello sono stabili:
okcapabilitytransportprovidermodelattemptsoutputserror
Per i comandi di media generati, outputs contiene i file scritti da OpenClaw. Usa
path, mimeType, size e le eventuali dimensioni specifiche dei media in quell'array
per l'automazione invece di analizzare lo stdout leggibile dall'uomo.
Errori comuni
# Badopenclaw infer media image generate --prompt "friendly lobster" # Goodopenclaw infer image generate --prompt "friendly lobster"# Badopenclaw infer audio transcribe --file ./memo.m4a --model whisper-1 --json # Goodopenclaw infer audio transcribe --file ./memo.m4a --model openai/whisper-1 --jsonNote
openclaw capability ...è un alias diopenclaw infer ....