Su un modello reale
Lo stesso flow writer → reviewer, eseguito su un modello reale invece dell'harness dry.
- la cartella
afe-first-flowdi Il tuo primo flow. - una chiave API di OpenRouter nell'ambiente,
OPENROUTER_API_KEY.
- lo stesso ticket, eseguito su un modello reale, con i suoi token e il suo costo nel ledger.
Passi
-
Prendi una chiave su openrouter.ai ed esportala:
export OPENROUTER_API_KEY=sk-or-... -
Sostituisci
config/models.yamlcon un modello reale ed economico:config/models.yaml# yaml-language-server: $schema=../../../../schemas/afe.dev-v1alpha1.jsonapiVersion: afe.dev/v1alpha1kind: Modelmetadata:name: cheapannotations:afe.dev/description: A cheap model for drafts and reviewsspec:provider: openroutermodel: deepseek/deepseek-v4-flashapiKeyEnv: OPENROUTER_API_KEY -
Esegui il flow senza
--dry, così l'harness chiama il modello:afe run writer-reviewer -i request.yaml -c config/ --local -
Rispondi all'approvazione al prompt: scrivi
approve. -
Il ticket finisce con
T-0001 ticket_done. I token e il costo del modello sono registrati nel ledger del ticket. Leggi Budget e loop per vedere dove.
Risoluzione dei problemi
Sintomo: l'esecuzione stampa un evento error ed esce con codice 1, con uno stato 401 nel
messaggio.
Causa: OPENROUTER_API_KEY manca, è scritta male, o non è stata esportata in questa shell.
Rimedio: esportala di nuovo e rilancia il comando. afe non legge mai una chiave da un file,
solo dall'ambiente.
Sintomo: l'esecuzione impiega molto più tempo dell'harness dry, poi fallisce con uno stato
429.
Causa: il modello è limitato per frequenza (rate limit) sul tuo account OpenRouter.
Rimedio: aspetta, oppure cambia modello in config/models.yaml. afe ritenta un 429 tre
volte con un'attesa crescente prima di arrendersi.