Tutto ciò che fa Yocman, dal task fallito alla scheda pronta
36 comandi, una CLI. Tutti operano localmente sulla directory di build o sul progetto. L’IA è facoltativa per le analisi e non modifica file senza conferma.
Diagnostica e correggi
- fix
- explain
- ask
- context
- login
- --dry-run
- --fresh
Quando bitbake fallisce, yocman fix legge il log, indaga in sola lettura e propone un diff per il tuo layer. Dopo conferma applica la patch e riesegue il task. La diagnosi resta nella cronologia privata: lo stesso errore viene risolto senza nuovo uso IA.
- explain fornisce la diagnosi senza modificare nulla
- Le modifiche trovate da ask o explain vengono conservate per yocman fix
- Gli errori già risolti ricevono risposta immediata; --fresh interroga di nuovo l’IA
- Le patch vanno nei tuoi layer, mai in poky o in quelli upstream
- --dry-run mostra i dati mascherati senza inviarli
Comandi
- fix
- Corregge un task fallito: applica una patch al tuo layer dopo conferma e riesegue il task; senza errori applica la proposta di ask o explain
- explain
- Spiega l’ultimo errore senza modifiche; conserva la correzione per yocman fix
- ask
- Risponde a domande sul progetto; conserva le modifiche per yocman fix
- context
- Mostra release, macchina, distribuzione e layer rilevati, offline
- login
- Salva la chiave API e la verifica sul servizio
Analizza la build
- doctor
- rules
- conf
- layers check
- deps
- why
- provides
- unused
- orphans
- duplicates
- size
- buildtime
- sstate
- boot
- --no-ai
Analisi deterministiche dei file già prodotti da bitbake: configurazione, layer, dipendenze, contenuto e dimensioni, tempi di build, sstate e avvio. I fatti vengono dai file; un riepilogo IA facoltativo li interpreta.
- why mostra le catene che portano un pacchetto nell’immagine
- size diff confronta build o revisioni buildhistory pacchetto per pacchetto
- sstate trova le ricette ricostruite a ogni build
- doctor indica le fonti dati mancanti e come attivarle
Comandi
- doctor
- Elenca le fonti dati nella directory di build e come attivare quelle mancanti
- rules
- Elenca regole di analisi con ID, categoria e gravità
- conf
- Verifica local.conf, bblayers.conf, auto.conf e site.conf
- layers check
- Verifica layer di bblayers.conf: mancanti, duplicati, incompatibili, .bbappend orfani
- deps
- Mostra le dipendenze di build ed esecuzione di un pacchetto e chi ne dipende
- why
- Spiega perché un pacchetto è nell’immagine: catene da IMAGE_INSTALL
- provides
- Individua il pacchetto che installa un file nell’immagine
- unused
- Elenca pacchetti candidati alla rimozione, da verificare
- orphans
- Ricette compilate che non entrano nell’immagine
- duplicates
- Funzionalità duplicate nell’immagine, come due server SSH
- size
- Dimensioni per pacchetto, file e categoria; size diff confronta build
- buildtime
- Task e ricette più lenti da buildstats e parallelismo effettivo
- sstate
- Riutilizzo di sstate e ricette ricostruite a ogni build
- boot
- Tempo di avvio da systemd-analyze blame e critical-chain
Sicurezza e conformità
- audit
- cve
- secrets
- users
- perms
- services
- kernel-audit
- licenses
- sbom
- cra report
Verifica l’immagine distribuita: CVE non corrette, segreti, account, permessi, servizi, hardening del kernel, licenze e SBOM SPDX, con punteggi per categoria.
- I segreti vengono segnalati per posizione e tipo, mai mostrati
- cve diff mostra cosa corregge o introduce un aggiornamento
- kernel-audit verifica la .config del kernel con una checklist di hardening
- Report Markdown e JSON per revisioni e audit
Comandi
- audit
- Audit completo di sicurezza e conformità con punteggio per categoria
- cve
- CVE non corrette da cve-check per CVSS; cve diff confronta build
- secrets
- Rileva chiavi, token e password in rootfs e layer, senza mostrarli
- users
- Verifica account: password vuote, UID 0 aggiuntivi, hash deboli, shell di accesso
- perms
- Verifica permessi: setuid, scrittura per tutti, file sensibili, proprietari ignoti
- services
- Verifica servizi all’avvio, servizi di rete non sicuri, impostazioni SSH e debug
- kernel-audit
- Confronta la .config del kernel con una checklist di hardening
- licenses
- Verifica licenze GPLv3, proprietarie, ambigue e obblighi sui sorgenti
- sbom
- Verifica presenza dello SBOM SPDX e coerenza con l’immagine
- cra report
- Preparazione CRA: associa evidenze di build da CVE, segreti, SBOM, licenze e kernel ai requisiti
Avvia un progetto
- init
- add
- remove
- build
- shell
- env
- flash
- init --describe
- init --board-search
Crea un progetto kas per una delle 21 schede verificate (Raspberry Pi, BeagleBone, Radxa, Orange Pi, i.MX 8M Plus EVK, QEMU…) o descrivilo all’IA. Aggiungi SSH, Wi-Fi, Qt 6 o Docker, compila su host o container kas con avanzamento e scrivi una SD con controllo obbligatorio del dispositivo.
- Catalogo delle schede verificato sui repository reali dei layer
- init --board-search cerca altre schede nell’indice dei layer OpenEmbedded
- build mostra fase, task attivi e tempo rimanente
- env verifica i prerequisiti e passa tra host e container
- flash elenca solo dischi rimovibili e richiede il nome del dispositivo
Comandi
- init
- Crea un progetto kas per scheda e release verificate; --describe precompila con l’IA
- add
- Aggiunge funzionalità (SSH, Wi-Fi, Qt 6, Docker…) con diff da confermare e commit
- remove
- Rimuove una funzionalità se nessun’altra ne dipende
- build
- Compila l’immagine con avanzamento: fase, task attivi, tempo rimanente
- shell
- Apre una shell con ambiente bitbake su host o container
- env
- Verifica l’ambiente, passa tra host e container e aggiorna l’immagine kas
- flash
- Scrive l’immagine su SD o USB, solo dischi rimovibili e con conferma digitata
Integrazioni
- --format json
- --fail-on
- --no-ai
- VS Code(in arrivo)
Yocman è una normale CLI per qualsiasi runner CI. Ogni analisi offre output leggibile dalle macchine e codici di uscita per controllare la pipeline.
- --fail-on high termina con codice 1 quando un rilievo raggiunge quel livello
- --no-ai mantiene la pipeline completamente offline
- Un’estensione VS Code è in arrivo
Il piano gratuito comprende correzioni, spiegazioni, tutte le analisi locali e fino a 5 comandi di sicurezza al mese.
Inizia gratis