| name | json-validator |
| description | Valida un file JSON contro uno schema opzionale e corregge errori comuni (trailing comma, commenti, chiavi duplicate). Usare quando un agente produce un file JSON e deve verificarne la validità prima di dichiarare il task completato. |
| user-invocable | false |
JSON Validator
Quando usare questa skill
Invoca questa skill ogni volta che devi:
- Verificare che un file JSON prodotto sia sintatticamente valido.
- Validare un file JSON contro uno schema JSON (optional).
- Correggere automaticamente errori comuni come trailing comma o commenti inline.
Usata principalmente da @codebase-mapper dopo aver prodotto macro-areas.json, ma applicabile a qualsiasi agente che produce JSON strutturato (state.json, output custom).
Prerequisito
Per eseguire lo script, l'agente deve avere il tool execute (o equivalente shell) disponibile. Se non disponibile, valida il JSON manualmente leggendo il file e verificando sintassi, assenza di trailing comma, virgolette singole e commenti. Di default, aggiunge il tool execute alla lista dei tool dell'agente che invoca la skill.
Procedura
Step 1 — Validazione sintattica
Esegui validate.py passando il percorso del file da validare:
python .github/skills/json-validator/scripts/validate.py <path/to/file.json>
L'output sarà uno dei seguenti:
OK: <file> — il file è JSON valido.
ERROR: <file> — <descrizione dell'errore con riga/colonna> — il file è invalido.
Step 2 — Validazione contro schema (opzionale)
Se è disponibile uno schema JSON (schema.json nella stessa cartella del file o passato come secondo argomento), esegui:
python .github/skills/json-validator/scripts/validate.py <path/to/file.json> <path/to/schema.json>
Per macro-areas.json è disponibile uno schema bundled:
python .github/skills/json-validator/scripts/validate.py \
<TARGET_DIR>/.ai-readiness/reports/macro-areas.json \
.github/skills/json-validator/schemas/macro-areas.schema.json
Richiede il pacchetto jsonschema. Se non disponibile, salta questo step e segnalalo.
Step 3 — In caso di errore
Se lo script riporta un errore:
- Leggi il file JSON e individua la riga indicata nell'errore.
- Correggi l'errore (trailing comma, chiavi duplicate, virgolette singole, commenti
// o /* */).
- Ri-esegui lo script fino a ottenere
OK.
Non dichiarare il task completato finché lo script non restituisce OK.