CLI commands
CLI di inferenza
openclaw infer è la superficie headless canonica per i flussi di lavoro di inferenza basati su provider.
Espone intenzionalmente famiglie di funzionalità, non nomi RPC grezzi del Gateway né ID grezzi degli strumenti agente.
Trasformare infer in una skill
Copia e incolla questo in un agente:
Read https://docs.openclaw.ai/cli/infer, then create a skill that routes my common workflows to `openclaw infer`.
Focus on model runs, image generation, video generation, audio transcription, TTS, web search, and 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 nuovamente 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 attività di inferenza basate su provider dentro OpenClaw.
Vantaggi:
- Usa i provider e i modelli già configurati in OpenClaw invece di collegare wrapper ad hoc per ogni backend.
- Mantiene i flussi di lavoro per 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. - Preferisce una superficie OpenClaw di prima parte 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 end-to-end dei provider, preferisci openclaw infer ... dopo 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 inclusi e il runtime
di funzionalità condiviso 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
providers
Attività 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 | openclaw infer image describe --file ./image.png --prompt "..." --json |
--model deve essere un <provider/model> compatibile con immagini |
| Trascrivere audio | openclaw infer audio transcribe --file ./memo.m4a --json |
--model deve essere <provider/model> |
| Sintetizzare parlato | 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 del 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 embedding | openclaw infer embedding create --text "..." --json |
Comportamento
openclaw infer ...è la superficie CLI principale 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. - Per
image describe,audio transcribeevideo describe,--modeldeve usare la forma<provider/model>. - Per
image describe, un--modelesplicito esegue direttamente quel provider/modello. Il modello deve essere compatibile con le immagini nel catalogo modelli o nella configurazione del provider.codex/<model>esegue un turno limitato di comprensione delle immagini del server app Codex;openai-codex/<model>usa il percorso provider OAuth OpenAI Codex. - I comandi di esecuzione senza stato 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 è un completamento provider one-shot leggero. Risolve il modello agente configurato e l’autenticazione, ma non avvia un turno chat-agent, non carica strumenti e non apre server MCP inclusi.model run --fileaccetta file immagine, rileva il loro 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 instradamento Gateway, autenticazione salvata, selezione provider e runtime incorporato, ma viene comunque eseguito come probe di modello grezzo: invia il prompt fornito ed eventuali allegati immagine senza transcript di sessione precedente, contesto bootstrap/AGENTS, assemblaggio context-engine, strumenti o server MCP inclusi.model run --gateway --model <provider/model>richiede una credenziale Gateway di operatore attendibile perché la richiesta chiede al Gateway di eseguire un override provider/modello one-off.
Modello
Usa model per inferenza testuale basata su provider e ispezione di modelli/provider.
openclaw infer model run --prompt "Reply with exactly: smoke-ok" --json
openclaw infer model run --prompt "Summarize this changelog entry" --model openai/gpt-5.4 --json
openclaw infer model run --prompt "Describe this image in one sentence" --file ./photo.jpg --model google/gemini-2.5-flash --json
openclaw infer model providers --json
openclaw infer model inspect --name gpt-5.5 --json
Usa riferimenti completi <provider/model> per eseguire smoke test su un provider specifico senza
avviare il Gateway o caricare l’intera superficie strumenti dell’agente:
openclaw infer model run --local --model anthropic/claude-sonnet-4-6 --prompt "Reply with exactly: pong" --json
openclaw infer model run --local --model cerebras/zai-glm-4.7 --prompt "Reply with exactly: pong" --json
openclaw infer model run --local --model google/gemini-2.5-flash --prompt "Reply with exactly: pong" --json
openclaw infer model run --local --model groq/llama-3.1-8b-instant --prompt "Reply with exactly: pong" --json
openclaw infer model run --local --model mistral/mistral-small-latest --prompt "Reply with exactly: pong" --json
openclaw infer model run --local --model openai/gpt-4.1 --prompt "Reply with exactly: pong" --json
openclaw infer model run --local --model ollama/qwen2.5vl:7b --prompt "Describe this image." --file ./photo.jpg --json
Note:
model runlocale è lo smoke CLI più ristretto per salute provider/modello/autenticazione perché, per i provider non Codex, invia solo il prompt fornito al modello selezionato.- I probe locali
openai-codex/*sono l’eccezione ristretta: OpenClaw aggiunge un’istruzione di sistema minima così che il trasporto Codex Responses possa popolare il campoinstructionsrichiesto, senza aggiungere contesto agente completo, strumenti, memoria o transcript di sessione. model run --filelocale mantiene quel percorso leggero e allega il contenuto immagine direttamente al singolo messaggio utente. File immagine comuni come PNG, JPEG e WebP funzionano quando il loro tipo MIME viene rilevato comeimage/*; i 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 del provider di comprensione delle immagini di OpenClaw e l’instradamento predefinito del modello immagine.- Il modello selezionato deve supportare input immagine; i modelli solo testo possono rifiutare la richiesta a livello provider.
model run --promptdeve contenere testo non composto solo da spazi; i prompt vuoti vengono rifiutati prima che vengano chiamati i provider locali o il Gateway.model runlocale esce con codice diverso da zero quando il provider non restituisce output testuale, così provider locali non raggiungibili e completamenti vuoti non sembrano probe riusciti.- Usa
model run --gatewayquando devi testare instradamento Gateway, configurazione agent-runtime o stato provider gestito dal Gateway mantenendo grezzo l’input del modello. Usaopenclaw agento superfici chat quando vuoi 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" --json
openclaw infer image generate --prompt "cinematic product photo of headphones" --json
openclaw infer image generate --model openai/gpt-image-1.5 --output-format png --background transparent --prompt "simple red circle sticker on a transparent background" --json
openclaw infer image generate --prompt "slow image backend" --timeout-ms 180000 --json
openclaw infer image edit --file ./logo.png --model openai/gpt-image-1.5 --output-format png --background transparent --prompt "keep the logo, remove the background" --json
openclaw infer image edit --file ./poster.png --prompt "make this a vertical story ad" --size 2160x3840 --aspect-ratio 9:16 --resolution 4K --json
openclaw infer image describe --file ./photo.jpg --json
openclaw infer image describe --file ./receipt.jpg --prompt "Extract the merchant, date, and total" --json
openclaw infer image describe-many --file ./before.png --file ./after.png --prompt "Compare the screenshots and list visible UI changes" --json
openclaw infer image describe --file ./ui-screenshot.png --model openai/gpt-4.1-mini --json
openclaw infer image describe --file ./photo.jpg --model ollama/qwen2.5vl:7b --prompt "Describe the image in one sentence" --timeout-ms 300000 --json
Note:
-
Usa
image editquando parti da file di input esistenti. -
Usa
--size,--aspect-ratioo--resolutionconimage editper provider/modelli che supportano suggerimenti geometrici sulle 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-backgroundrimane disponibile come alias specifico di OpenAI. I provider che non dichiarano il supporto dello sfondo segnalano il suggerimento come override ignorato. -
Usa
image providers --jsonper verificare quali provider di immagini inclusi sono individuabili, configurati, selezionati e quali funzionalità di generazione/modifica espone ciascun provider. -
Usa
image generate --model <provider/model> --jsoncome smoke CLI live più mirato per le modifiche alla generazione di immagini. Esempio:openclaw infer image providers --json openclaw 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 di visione un'istruzione specifica per l'attività, come OCR, confronto, ispezione UI o didascalia concisa. -
Usa
--timeout-mscon modelli di visione locali lenti o avvii a freddo di Ollama. -
Per
image describe,--modeldeve essere un<provider/model>con supporto per immagini. -
Per i modelli di visione Ollama locali, scarica prima il modello e imposta
OLLAMA_API_KEYsu qualsiasi valore segnaposto, per esempioollama-local. Vedi Ollama.
Audio
Usa audio per la trascrizione di file.
openclaw infer audio transcribe --file ./memo.m4a --json
openclaw infer audio transcribe --file ./team-sync.m4a --language en --prompt "Focus on names and action items" --json
openclaw infer audio transcribe --file ./memo.m4a --model openai/whisper-1 --json
Note:
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 --json
openclaw infer tts convert --text "Your build is complete" --output ./build-complete.mp3 --json
openclaw infer tts providers --json
openclaw infer tts status --json
Note:
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" --json
openclaw infer video generate --prompt "slow drone shot over a forest lake" --resolution 768P --duration 6 --json
openclaw infer video describe --file ./clip.mp4 --json
openclaw infer video describe --file ./clip.mp4 --model openai/gpt-4.1-mini --json
Note:
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 i flussi di lavoro di ricerca e recupero.
openclaw infer web search --query "OpenClaw docs" --json
openclaw infer web search --query "OpenClaw infer web providers" --json
openclaw infer web fetch --url https://docs.openclaw.ai/cli/infer --json
openclaw infer web providers --json
Note:
- Usa
web providersper ispezionare i provider disponibili, configurati e selezionati.
Incorporamento
Usa embedding per la creazione di vettori e l'ispezione dei provider di incorporamento.
openclaw infer embedding create --text "friendly lobster" --json
openclaw infer embedding create --text "customer support ticket: delayed shipment" --model openai/text-embedding-3-large --json
openclaw infer embedding providers --json
Output JSON
I comandi Infer normalizzano l'output JSON in un envelope 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 qualsiasi dimensione specifica del media in quell'array
per l'automazione invece di analizzare stdout leggibile dall'uomo.
Errori comuni
# Bad
openclaw infer media image generate --prompt "friendly lobster"
# Good
openclaw infer image generate --prompt "friendly lobster"
# Bad
openclaw infer audio transcribe --file ./memo.m4a --model whisper-1 --json
# Good
openclaw infer audio transcribe --file ./memo.m4a --model openai/whisper-1 --json
Note
openclaw capability ...è un alias diopenclaw infer ....