Scribe

Riferimento della CLI

Tutti i comandi e i flag di scribe: status, validate, translate, delete, history, studio ed export-static.

View as Markdown

L'eseguibile scribe è incluso nel pacchetto ed è disponibile nel tuo PATH dopo l'installazione. Tutti i comandi accettano il flag --config <path> (di default cerca scribe.config.ts nella directory di lavoro) e leggono .env seguito da .env.local prima di avviare l'esecuzione (le variabili d'ambiente preesistenti hanno la priorità).

scribe status
scribe validate
scribe translate [flags]
scribe delete <type> <en-slug> [--dry-run] [--yes]
scribe history <type> <en-slug> [locale]
scribe studio [--port 3600]
scribe export-static [flags]
scribe version

scribe status

Mostra per ogni content type il numero di documenti in inglese, il numero di traduzioni per lingua e il percorso dello store. È utile per avere una panoramica rapida della copertura.

scribe validate

Valida l'intero progetto in tutte le sue parti: schemi, campi integrati, hook crossValidate, compilazione MDX dei testi in inglese e delle traduzioni salvate, relazioni, regole di _redirects.json, suffissi degli slug localizzati e asset immagine mancanti (quando è impostato assetsDir). Stampa una riga per ogni problema rilevato e termina con un codice di errore in caso di fallimento, in modo da poter bloccare la build se necessario. Per l'elenco completo dei controlli puoi consultare la sezione content model.

scribe translate

Traduce le pagine mancanti e obsolete usando Gemini (richiede GEMINI_API_KEY). Se eseguito senza flag nel terminale, avvia una procedura interattiva per richiedere il content type, il preset della lingua, la strategia e la modalità di traduzione. Negli script è possibile passare i seguenti flag:

FlagDefaultDescrizione
--type <id,id>tutti i tipiUno o più content type (separati da virgola).
--locale <code>...tutte le lingue non di defaultLingue di destinazione (separate da spazio). Sovrascrive --preset.
--preset <name>-Un gruppo localePresets definito nella configurazione.
--slug <en-slug>-Un singolo documento in inglese.
--strategy <all|missing-only>allall include le pagine obsolete e quelle mancanti. missing-only salta le traduzioni obsolete.
--batch / --directbatchModalità di traduzione. Batch invia tutto tramite l'API Batch di Gemini dimezzando il costo dei token. Direct effettua chiamate API per ogni pagina garantendo risultati immediati.
--resume-Controlla i job batch in sospeso, acquisisce quelli completati e non invia nulla di nuovo.
--concurrency <n>3Numero di richieste di traduzione in parallelo (solo per la modalità direct).
--model <id>gemini-3.1-proSostituisce il modello Gemini predefinito.
--dry-run-Stampa l'elenco dei lavori senza chiamare l'API o scrivere file. Include una stima dei token e dei costi in dollari (USD) per ogni elemento e nei totali.
--force-Forza la traduzione anche se l'hash del file in inglese corrisponde.
--no-progress-Mostra log testuali riga per riga al posto dell'interfaccia di avanzamento in tempo reale.

Le esecuzioni interattive mostrano una barra di avanzamento in tempo reale con lo stato dei job batch, i risultati dei singoli elementi, il conteggio dinamico dei token in ingresso e in uscita e una stima del costo in dollari (inclusi i token di ragionamento). I job batch vengono salvati nello store prima dell'inizio del polling. Per questo motivo interrompere il processo con Ctrl+C è assolutamente sicuro (l'esecuzione successiva o il flag --resume riprenderanno il lavoro senza inviare richieste doppie). Se anche un solo elemento fallisce, il comando termina con un codice di errore. Maggiori dettagli nella sezione translation.

scribe delete

scribe delete <type> <en-slug> [--dry-run] [--yes]

Elimina una voce e tutto ciò che ne dipende seguendo la cascata delle relazioni. Elabora preventivamente un piano e lo stampa suddiviso per sezioni (eliminazioni a cascata, relazioni scollegate, file di asset coinvolti, conteggi dello store per ogni lingua tra traduzioni e snapshot) indicando eventuali ostacoli bloccanti. Prima di procedere richiede una conferma tramite y/N. L'esecuzione applica esattamente il piano previsto (file sorgente, righe dello store, asset e riscritture per lo scollegamento) senza toccare nient'altro.

FlagDescrizione
--dry-runStampa il piano di eliminazione e termina con codice 0 senza cancellare nulla.
--yesSalta la richiesta di conferma (utile negli script).

Le azioni del piano sono determinate dalla modalità onTargetDelete di una relazione (restrict, detach, cascade) e dalla modalità onDelete di un campo asset (delete, keep). Per le opzioni dei campi puoi consultare content model. Un piano che contiene ostacoli (un riferimento restrict o una relazione singola obbligatoria che resterebbe orfana) mostrerà gli elementi bloccanti e terminerà con codice 1 senza eseguire alcuna cancellazione. Lo studio espone questo stesso piano d'azione dietro l'apposito pulsante di eliminazione.

scribe history <type> <en-slug> [locale]

Mostra la cronologia degli snapshot in inglese per un singolo documento. Indica quando è stato acquisito ogni snapshot, il relativo hash del contenuto e quali traduzioni sono state generate a partire da esso. Passando una lingua specifica è possibile filtrare i risultati.

scribe studio

Un'interfaccia web locale in sola lettura (di default all'indirizzo http://127.0.0.1:3600, modificabile con --port). Mostra la copertura delle traduzioni per content type e lingua, l'elenco dei lavori attualmente mancanti o obsoleti e i dettagli per singolo documento. Tra questi figurano il frontmatter con i marcatori strutturali o traducibili, la traduzione salvata nello store, i suoi metadati (modello, data, hash) e lo snapshot in inglese dal quale è stata creata. Non effettua mai operazioni di scrittura (le modifiche avvengono sempre nel tuo editor e su git).

scribe export-static

Scrive file MDX non elaborati (frontmatter e corpo del testo per ogni lingua) in una directory statica. È una soluzione ideale per distribuire versioni in solo testo delle tue pagine, ottimizzate per i crawler e per i modelli linguistici (LLM):

FlagDefaultDescrizione
--out <dir>publicDirectory di output.
--extension <ext>mdxEstensione per i file esportati.
--type <id,id>tutti i tipi instradabiliContent type separati da virgola.
--locale <code>...tutte le lingueLingue da esportare.

Le radici di output gestite vengono ripulite prima della scrittura. I documenti che fungono da sorgenti di reindirizzamento nel file _redirects.json vengono ignorati.

scribe version

Stampa la versione installata di scribe-cms (funziona anche con --version o -V).

Riferimento della CLI · Scribe