Skip to content
Back to skills

Dev Guard

ASecurity

Watchdog automatico per file critici: avvisa prima di modificare .env, migrations, CI, secrets. Usa questa skill quando l'utente vuole protezione automatica, o dice guard, watchdog, proteggi file, guardia, sentinel, file critici.

  • 4 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 12, 2026
devopstypescriptpythongorubysqldockergitapidatabaseci/cd

Works with

  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 12, 2026

npx -y skills add aibot88/sec_skill_store --skill dev-guard --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Dev Guard?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Dev Guard
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/aibot88-dev-guard/badge)](https://www.skillsdirectory.com/skills/aibot88-dev-guard)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: dev-guard
description: "Watchdog automatico per file critici: avvisa prima di modificare .env, migrations, CI, secrets. Usa questa skill quando l'utente vuole protezione automatica, o dice guard, watchdog, proteggi file, guardia, sentinel, file critici."
---

# /dev-guard — Watchdog File Critici

Watchdog automatico che monitora le modifiche a file universalmente critici. A differenza di `/dev-freeze` (che blocca directory scelte dall'utente), `/dev-guard` protegge una lista predefinita di file sensibili con avviso e conferma.

## Attivazione

```
/dev-guard                    # Attiva con lista default
/dev-guard --show             # Mostra file monitorati
/dev-guard --add "*.secret"   # Aggiungi pattern custom
/dev-guard --off              # Disattiva
```

Quando attivato:
```
GUARD attivo — Watchdog file critici

Monitoro modifiche a file sensibili in 6 categorie:
  [SECRETS]    .env, *.key, *.pem, credentials.*
  [DATABASE]   migrations/, schema.prisma, *.sql (DDL)
  [CI/CD]      .github/workflows/, Dockerfile, docker-compose*
  [DEPS]       package.json (solo dependencies), requirements.txt, Gemfile
  [CONFIG]     tsconfig.json, vite.config.*, next.config.*, webpack.*
  [SECURITY]   auth/, middleware/auth*, *.crt, *.p12, cors config

Ogni modifica a questi file richiede conferma con spiegazione del rischio.
```

## Lista file monitorati

### SECRETS — Rischio CRITICO
| Pattern | Motivo |
|---------|--------|
| `.env`, `.env.*` | Variabili ambiente, API keys, connection string |
| `*.key`, `*.pem`, `*.p12`, `*.crt` | Certificati e chiavi private |
| `credentials.*`, `secrets.*` | File credenziali espliciti |
| `**/service-account*.json` | Google Cloud service account |
| `.npmrc`, `.pypirc` | Token registry pacchetti |

### DATABASE — Rischio ALTO
| Pattern | Motivo |
|---------|--------|
| `migrations/**` | Schema change irreversibili in produzione |
| `prisma/schema.prisma` | Modello dati — change cascade su tutto il codice |
| `**/schema.sql`, `**/seed.sql` | DDL e dati iniziali |
| `alembic/versions/**` | Migration Python |
| `knex/migrations/**` | Migration Knex.js |

### CI/CD — Rischio ALTO
| Pattern | Motivo |
|---------|--------|
| `.github/workflows/*.yml` | Pipeline CI — errore = deploy rotto |
| `Dockerfile`, `docker-compose*` | Container build — errore = ambiente rotto |
| `.gitlab-ci.yml`, `Jenkinsfile` | Pipeline altri CI |
| `vercel.json`, `netlify.toml` | Config deployment |
| `fly.toml`, `render.yaml` | Config hosting |

### DEPS — Rischio MEDIO
| Pattern | Motivo |
|---------|--------|
| `package.json` (campo `dependencies`) | Dipendenze runtime — supply chain risk |
| `package-lock.json` | Lockfile — modifica manuale rischiosa |
| `requirements.txt`, `pyproject.toml` | Dipendenze Python |
| `Gemfile`, `Gemfile.lock` | Dipendenze Ruby |

### CONFIG — Rischio MEDIO
| Pattern | Motivo |
|---------|--------|
| `tsconfig.json`, `tsconfig.*.json` | Config TypeScript — errore = build rotto |
| `vite.config.*`, `next.config.*` | Config bundler/framework |
| `webpack.config.*`, `rollup.config.*` | Config build |
| `jest.config.*`, `vitest.config.*` | Config test — errore = test falsi positivi |
| `.eslintrc*`, `.prettierrc*` | Config linting |

### SECURITY — Rischio ALTO
| Pattern | Motivo |
|---------|--------|
| `**/auth/**`, `**/middleware/auth*` | Logica autenticazione |
| `**/cors*` | Configurazione CORS |
| `**/helmet*`, `**/csp*` | Security headers |
| `**/rbac*`, `**/permissions*` | Controllo accessi |

## Formato avviso

Quando un'operazione tocca un file monitorato:

```
GUARD: File critico in fase di modifica

  File:      .github/workflows/deploy.yml
  Categoria: CI/CD
  Rischio:   ALTO
  Motivo:    Modifica alla pipeline di deploy. Un errore puo bloccare i rilasci.

  Modifiche rilevate:
  - Riga 15: aggiunta step "npm run build"
  - Riga 22: rimossa condizione "if: github.ref == 'refs/heads/main'"

Procedere con la modifica? (si/no)
```

## Differenze con /dev-careful e /dev-freeze

| Aspetto | /dev-careful | /dev-freeze | /dev-guard |
|---------|-------------|-------------|------------|
| **Scope** | Tutte le operazioni distruttive | Directory scelte dall'utente | File critici predefiniti |
| **Azione** | Conferma | Blocco assoluto | Conferma con contesto |
| **Personalizzabile** | No | Si (path utente) | Si (--add pattern) |
| **Default attivo** | No | No | No (attivare con /dev-guard) |

Tutti e 3 si sommano quando attivi contemporaneamente.

## Pattern custom

L'utente puo aggiungere pattern personalizzati:

```
/dev-guard --add "src/billing/**"     # Aggiungi directory billing
/dev-guard --add "*.config.mjs"       # Aggiungi pattern glob
/dev-guard --remove "*.prettierrc*"   # Rimuovi pattern (troppo rumore)
```

## Regole

1. **Avviso, non blocco** — a differenza di `/dev-freeze`, `/dev-guard` chiede conferma ma non impedisce
2. **Contesto nel messaggio** — spiega sempre PERCHE il file e critico, non solo "attenzione"
3. **Mostra diff** — quando possibile, mostra cosa sta per cambiare nel file
4. **Log** — registra ogni avviso in `specs/_changelog.md` con esito (approvato/rifiutato)
5. **Non persiste** — si resetta a fine sessione
6. **Bassa frizione** — un solo "si" basta per procedere (non doppia conferma)

Files in this skill

  • SKILL.md5.2 KB
  • source.json718 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.