Pacchetti premiumIBM Bob Premium Package per i

Comandi slash

Usa i comandi slash specifici per IBM i per riutilizzare prompt predefiniti che automatizzano task ripetitivi.

IBM Bob Premium Package for i estende i comandi slash predefiniti di Bob con un insieme di comandi slash specifici per IBM i. Per un'introduzione generale su come funzionano i comandi slash e quali sono quelli predefiniti, consulta Comandi Slash.

Digita / nella chat per vedere tutti i comandi disponibili, inclusi quelli specifici per IBM i descritti qui.

/init

Il comando /init analizza il tuo workspace IBM i attivo e genera un file AGENTS.md su misura per la tua codebase. Documenta l'architettura non ovvia, le strutture dei sorgenti, le convenzioni del database e gli standard di progetto in modo che Bob li segua automaticamente in tutte le sessioni di chat future.

ProprietàValore
Comando/init
ArgomentoNessuno
Disponibile inIBM i Developer, IBM i Database
RichiedeConnessione IBM i attiva (Libreria corrente QSYS o directory di lavoro IFS configurata)

Cosa fa

Bob segue questi passaggi:

Controllo preliminare:

  • In un workspace QSYS (Library List), verifica che sia impostata una libreria corrente. Se la libreria corrente è una libreria di sistema fornita da IBM (come QGPL o QTEMP), Bob ti avvisa e suggerisce di passare a una libreria applicativa prima di procedere.
  • In un workspace IFS Working Directory, verifica che sia configurata una directory di lavoro (anziché l'intera root /).

Analisi del workspace:

  • Ispeziona i file fisici sorgente, i tipi di membro e i layout delle directory. Per librerie o cartelle di grandi dimensioni, Bob riassume conteggi e pattern invece di elencare ogni singolo file, mantenendo il riepilogo compatto.
  • Rileva i pattern dell'architettura ILE (service program, binding directory, activation group), le definizioni di web service IWS, gli oggetti del database (file fisici, file logici, journaling) e le convenzioni di denominazione del progetto.

Generazione o aggiornamento di AGENTS.md:

  • Scrive le linee guida generate in {currentLibrary}/QBOBSRC/AGENTS.MD per i workspace QSYS, o in {ifsWorkingDirectory}/.bob/AGENTS.md per i workspace IFS.
  • Se AGENTS.md esiste già, Bob lo aggiorna con gli ultimi risultati preservando eventuali linee guida personalizzate o modifiche manuali aggiunte in precedenza.

Sincronizzazione in tempo reale:

  • Le regole generate vengono immediatamente caricate in memoria e iniettate automaticamente in ogni conversazione nelle modalità IBM i Developer e IBM i Database senza richiedere una riconnessione.

Aggiungere regole e standard personalizzati

Puoi aggiungere i tuoi standard di codifica specifici del team, regole architetturali, convenzioni di denominazione e pratiche preferite direttamente in AGENTS.md.

Puoi:

  • Modificare il file manualmente: Apri {currentLibrary}/QBOBSRC/AGENTS.MD o {ifsWorkingDirectory}/.bob/AGENTS.md nell'editor e aggiungi le tue linee guida personalizzate.
  • Istruire Bob durante /init: Quando esegui /init, puoi chiedere a Bob di includere regole o standard specifici. Ad esempio:
    • "/init and make sure to enforce free-format RPG and our standard error-handling subprocedures"
    • "/init and document our naming conventions: all service programs must start with SRV_"

Esempi d'uso

/init
/init and add our team rules: prefer SQL over RLA and use *NEW activation groups for main programs

/erd

Il comando /erd istruisce Bob a generare un Entity Relationship Diagram (ERD) in stile Mermaid per un insieme di tabelle del database sull'IBM i connesso.

ProprietàValore
Comando/erd
Suggerimento argomento[schema.table or library/file]
Disponibile inIBM i Developer, IBM i Database
RichiedeConnessione IBM i attiva

Cosa fa

Bob segue questi passaggi:

Determina l'ambito dall'argomento fornito o chiede quale schema/libreria analizzare se non viene fornito alcun argomento.

Interroga QSYS2.SYSTABLES, QSYS2.SYSCOLUMNS, QSYS2.SYSCST e QSYS2.SYSREFCST per raccogliere la struttura delle tabelle e le relazioni.

Costruisce e visualizza un Entity Relationship Diagram (ERD) in stile Mermaid con tipi di dato Db2 for i accurati, indicatori di colonna (PK, FK, UQ) e notazioni di cardinalità.

Esempi d'uso

/erd
/erd MYLIB
/erd MYAPP.ORDERS
/erd MYPROJ/CUSTOMER

/review_SQL

Il comando /review_SQL istruisce Bob a eseguire una revisione completa di un'istruzione SQL utilizzando una raccolta di best practice. Può accettare un'istruzione SQL autonoma o fare riferimento a codice sorgente che contiene una o più istruzioni SQL.

ProprietàValore
Comando/review_SQL
Suggerimento argomento[SQL statement or source code path]
Disponibile inIBM i Database
RichiedeConnessione IBM i attiva

Cosa fa

Bob segue questi passaggi:

Analizza l'istruzione SQL dall'argomento fornito o ne chiede una se non viene fornito alcun argomento.

Valuta l'istruzione rispetto a una checklist di revisione completa:

  • Correttezza e semplificazione: Problemi di correttezza, predicati ridondanti, costrutti fragili, subquery annidate, espressioni ripetute e join non necessari
  • Leggibilità e manutenibilità: Formattazione, alias e commenti sulla logica complessa
  • Qualifica e naming: Nomi di correlazione delle tabelle e identificatori ordinari versus delimitati
  • Best practice: Uso di funzioni built-in, CTE e marcatori di parametro
  • Sicurezza: Rischi di SQL injection, privilegi eccessivi, autorizzazioni sulle righe e maschere sulle colonne
  • Prestazioni dal testo SQL: Predicati non sargable, funzioni scalari non necessarie nei predicati e cast evitabili
  • Linee guida specifiche per tipo di istruzione: Dettagli per DDL, DML, SQL embedded e SQL dinamico
  • Linee guida diagnostiche e di verifica: Puntatori a Visual Explain, plan cache e consigli sugli indici
  • Logica riutilizzabile: UDF, stored procedure e candidati SQL INCLUDE
  • Isolamento delle transazioni: Clausole WITH esplicite e coerenza del livello di isolamento

Restituisce i risultati strutturati come:

  • Riepilogo: Breve valutazione complessiva
  • Risultati confermati: Elenco numerato di problemi, ciascuno con categoria, spiegazione e miglioramento suggerito
  • Raccomandazioni condizionali: Elenco numerato di suggerimenti che dipendono da metadati, workload o evidenze runtime
  • SQL rivisto: Un'istruzione SQL rivista solo quando la semantica può essere preservata con sicurezza; altrimenti una riscrittura illustrativa con spiegazione di ciò che rimane condizionale
  • Spiegazione delle modifiche: Descrizione sintetica di ogni modifica suggerita

Esempi d'uso

/review_SQL
/review_SQL SELECT * FROM ORDERS WHERE CUSTID = '12345'
/review_SQL mylib/mysrc(mycode)
/review_SQL /home/scottf/RPGsrc/toystore.rpglesrc

/review_rpg

Il comando /review_rpg istruisce Bob a eseguire una revisione dedicata del codice su un membro sorgente RPG o stream file, valutando sintassi, best practice del linguaggio, standard di codifica, gestione degli errori, sicurezza e opportunità di modernizzazione sia per RPG in formato fisso che in formato libero.

ProprietàValore
Comando/review_rpg
Argomento[membro sorgente o percorso stream file]
Disponibile inIBM i Developer
RichiedeConnessione IBM i attiva

Cosa fa

Bob segue questi passaggi:

Verifica che il file di destinazione sia un sorgente RPG valido (ad es. .RPGLE, .SQLRPGLE, .RPG, .RPG36 o .RPG38). I sorgenti non RPG come CL, COBOL, DDS o SQL puro vengono rifiutati prima del caricamento delle regole di revisione.

Determina il formato del sorgente RPG (formato fisso, formato libero o misto) e carica le skill di revisione appropriate.

Valuta il codice RPG rispetto alle best practice del linguaggio:

  • Regole di sintassi e formato: Posizionamento delle colonne delle specifiche, formattazione dei commenti e posizionamento delle subprocedure
  • Standard di codifica: Convenzioni di naming, indentazione e struttura
  • Gestione degli errori e affidabilità: Blocchi monitor, controllo dello stato e gestione degli errori sui file
  • Sicurezza: Autorità adottata e rischi di injection nelle operazioni dinamiche
  • Prestazioni e operazioni sul database: Accesso a livello di record vs. SQL embedded, blocking e gestione dei cursori
  • Opportunità di modernizzazione: Conversione di costrutti legacy in formato fisso, eliminazione degli indicatori e refactoring di subroutine in subprocedure

Restituisce i risultati strutturati come:

  • Formato rilevato: Variante sorgente e classificazione del formato
  • Riepilogo: Valutazione complessiva della revisione
  • Problemi critici: Difetti gravi di sintassi, sicurezza o runtime
  • Problemi principali: Difetti strutturali, colli di bottiglia nelle prestazioni o errori non gestiti
  • Problemi minori: Incongruenze stilistiche e pulizia minore
  • Roadmap di modernizzazione: Passi concreti per modernizzare il codice RPG legacy

Esempi d'uso

/review_rpg
/review_rpg MYLIB/QRPGLESRC/MYPGM.RPGLE
/review_rpg /home/user/src/order_processing.rpgle
/review_rpg /user/ibmi_local/FLIGHT400/QRPGLESRC/FRS400.rpgle
Come valuti questo argomento?